diff --git a/app/main.24b12cf2806f2044ae5c.js.map b/app/main.24b12cf2806f2044ae5c.js.map deleted file mode 100644 index 34ea14f3..00000000 --- a/app/main.24b12cf2806f2044ae5c.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/angular/pipes/i18n.pipe.ts","webpack:///./jslib/src/abstractions/platformUtils.service.ts","webpack:///./jslib/src/abstractions/user.service.ts","webpack:///./jslib/src/angular/services/validation.service.ts","webpack:///./jslib/src/abstractions/messaging.service.ts","webpack:///./jslib/src/angular/directives/api-action.directive.ts","webpack:///./jslib/src/abstractions/cipher.service.ts","webpack:///./jslib/src/abstractions/crypto.service.ts","webpack:///./jslib/src/importers/baseImporter.ts","webpack:///./jslib/src/models/domain/importResult.ts","webpack:///./jslib/src/abstractions/state.service.ts","webpack:///./src/app/components/callout.component.ts","webpack:///./src/app/components/callout.component.html","webpack:///./jslib/src/misc/utils.ts","webpack:///./jslib/src/enums/cipherType.ts","webpack:///./jslib/src/angular/directives/stop-click.directive.ts","webpack:///./jslib/src/abstractions/collection.service.ts","webpack:///./jslib/src/angular/directives/input-verbatim.directive.ts","webpack:///./jslib/src/abstractions/folder.service.ts","webpack:///./jslib/src/abstractions/storage.service.ts","webpack:///./jslib/src/abstractions/passwordGeneration.service.ts","webpack:///./jslib/src/abstractions/sync.service.ts","webpack:///./jslib/src/abstractions/token.service.ts","webpack:///./jslib/src/abstractions/environment.service.ts","webpack:///./jslib/src/models/request/passwordVerificationRequest.ts","webpack:///./jslib/src/services/constants.service.ts","webpack:///./jslib/src/models/view/cardView.ts","webpack:///./jslib/src/models/view/secureNoteView.ts","webpack:///./jslib/src/abstractions/auth.service.ts","webpack:///./jslib/src/angular/components/icon.component.ts","webpack:///./jslib/src/angular/services/broadcaster.service.ts","webpack:///./jslib/src/angular/directives/autofocus.directive.ts","webpack:///./src/app/modal.component.ts","webpack:///./jslib/src/enums/twoFactorProviderType.ts","webpack:///./jslib/src/angular/directives/stop-prop.directive.ts","webpack:///./jslib/src/angular/components/icon.component.html","webpack:///./jslib/src/abstractions/cryptoFunction.service.ts","webpack:///./jslib/src/abstractions/audit.service.ts","webpack:///./jslib/src/enums/secureNoteType.ts","webpack:///./jslib/src/models/domain/domainBase.ts","webpack:///./jslib/src/abstractions/lock.service.ts","webpack:///./jslib/src/abstractions/search.service.ts","webpack:///./jslib/src/models/view/cipherView.ts","webpack:///./src/app/components/avatar.component.ts","webpack:///./jslib/src/models/view/loginView.ts","webpack:///./jslib/src/models/view/folderView.ts","webpack:///./jslib/src/models/view/collectionView.ts","webpack:///./src/app/components/avatar.component.ts.AvatarComponent.html","webpack:///./jslib/src/models/view/identityView.ts","webpack:///./src/app/settings/payment.component.ts","webpack:///./jslib/src/models/data/cipherData.ts","webpack:///./jslib/src/models/data/collectionData.ts","webpack:///./src/app/settings/two-factor-verify.component.ts","webpack:///./jslib/src/enums/deviceType.ts","webpack:///./jslib/src/models/request/cipherRequest.ts","webpack:///./jslib/src/enums/fieldType.ts","webpack:///./jslib/src/models/view/fieldView.ts","webpack:///./jslib/src/models/domain/collection.ts","webpack:///./src/app/settings/two-factor-verify.component.html","webpack:///./src/app/services/router.service.ts","webpack:///./jslib/src/models/domain/cipherString.ts","webpack:///./src/app/settings/organizations.component.ts","webpack:///./jslib/src/abstractions/totp.service.ts","webpack:///./jslib/src/models/view/loginUriView.ts","webpack:///./src/app/settings/two-factor-base.component.ts","webpack:///./jslib/src/abstractions/import.service.ts","webpack:///./jslib/src/abstractions/export.service.ts","webpack:///./src/app/tools/cipher-report.component.ts","webpack:///./jslib/src/models/domain/cipher.ts","webpack:///./src/app/services/event.service.ts","webpack:///./jslib/src/enums/organizationUserType.ts","webpack:///./jslib/src/services/auth.service.ts","webpack:///./src/app/vault/groupings.component.ts","webpack:///./src/app/vault/ciphers.component.ts","webpack:///./src/app/vault/add-edit.component.ts","webpack:///./jslib/src/enums/organizationUserStatusType.ts","webpack:///./jslib/src/enums/uriMatchType.ts","webpack:///./src/app/settings/two-factor-setup.component.ts","webpack:///./src/app/tools/import.component.ts","webpack:///./src/app/tools/export.component.ts","webpack:///./src/app/tools/reused-passwords-report.component.ts","webpack:///./src/app/tools/unsecured-websites-report.component.ts","webpack:///./src/app/tools/weak-passwords-report.component.ts","webpack:///./src/app/tools/exposed-passwords-report.component.ts","webpack:///./src/app/tools/inactive-two-factor-report.component.ts","webpack:///./jslib/src/angular/pipes/search.pipe.ts","webpack:///./jslib/src/models/request/selectionReadOnlyRequest.ts","webpack:///./jslib/src/models/response/selectionReadOnlyResponse.ts","webpack:///./jslib/src/abstractions/notifications.service.ts","webpack:///./jslib/src/abstractions/settings.service.ts","webpack:///./src/app/layouts/frontend-layout.component.ts","webpack:///./src/app/accounts/login.component.ts","webpack:///./src/app/accounts/two-factor.component.ts","webpack:///./src/app/components/password-strength.component.ts","webpack:///./src/app/accounts/register.component.ts","webpack:///./jslib/src/enums/kdfType.ts","webpack:///./src/app/accounts/hint.component.ts","webpack:///./src/app/accounts/lock.component.ts","webpack:///./jslib/src/enums/encryptionType.ts","webpack:///./jslib/src/models/domain/symmetricCryptoKey.ts","webpack:///./src/app/accounts/verify-email-token.component.ts","webpack:///./src/app/accounts/accept-organization.component.ts","webpack:///./src/app/accounts/recover-two-factor.component.ts","webpack:///./src/app/accounts/recover-delete.component.ts","webpack:///./src/app/accounts/verify-recover-delete.component.ts","webpack:///./src/app/layouts/navbar.component.ts","webpack:///./src/app/layouts/footer.component.ts","webpack:///./src/app/layouts/user-layout.component.ts","webpack:///./src/app/vault/vault.component.ts","webpack:///./jslib/src/models/request/cipherWithIdRequest.ts","webpack:///./jslib/src/models/request/folderRequest.ts","webpack:///./src/app/vault/attachments.component.ts","webpack:///./src/app/vault/collections.component.ts","webpack:///./src/app/settings/settings.component.ts","webpack:///./src/app/settings/account.component.ts","webpack:///./src/app/settings/purge-vault.component.ts","webpack:///./src/app/settings/options.component.ts","webpack:///./src/app/settings/domain-rules.component.ts","webpack:///./src/app/settings/two-factor-duo.component.ts","webpack:///./src/app/settings/payment.component.html","webpack:///./src/app/settings/premium.component.ts","webpack:///./src/app/settings/update-license.component.ts","webpack:///./src/app/settings/adjust-storage.component.ts","webpack:///./src/app/settings/adjust-payment.component.ts","webpack:///./jslib/src/enums/paymentMethodType.ts","webpack:///./src/app/settings/user-billing.component.ts","webpack:///./src/app/settings/create-organization.component.ts","webpack:///./src/app/tools/tools.component.ts","webpack:///./src/app/tools/password-generator.component.ts","webpack:///./src/app/tools/breach-report.component.ts","webpack:///./src/app/organizations/vault/add-edit.component.ts","webpack:///./src/app/layouts/organization-layout.component.ts","webpack:///./src/app/organizations/vault/groupings.component.ts","webpack:///./src/app/organizations/vault/ciphers.component.ts","webpack:///./src/app/organizations/vault/vault.component.ts","webpack:///./src/app/organizations/manage/entity-events.component.ts","webpack:///./src/app/organizations/tools/tools.component.ts","webpack:///./src/app/organizations/tools/import.component.ts","webpack:///./src/app/organizations/tools/export.component.ts","webpack:///./src/app/organizations/tools/exposed-passwords-report.component.ts","webpack:///./src/app/organizations/tools/inactive-two-factor-report.component.ts","webpack:///./src/app/organizations/tools/reused-passwords-report.component.ts","webpack:///./src/app/organizations/tools/unsecured-websites-report.component.ts","webpack:///./src/app/organizations/tools/weak-passwords-report.component.ts","webpack:///./src/app/organizations/manage/manage.component.ts","webpack:///./src/app/organizations/manage/collections.component.ts","webpack:///./src/app/organizations/manage/entity-users.component.ts","webpack:///./src/app/organizations/manage/events.component.ts","webpack:///./src/app/organizations/manage/groups.component.ts","webpack:///./src/app/organizations/manage/people.component.ts","webpack:///./src/app/organizations/settings/settings.component.ts","webpack:///./src/app/organizations/settings/account.component.ts","webpack:///./src/app/organizations/settings/two-factor-setup.component.ts","webpack:///./src/app/organizations/settings/organization-billing.component.ts","webpack:///./src lazy namespace object","webpack:///./src/app/app.component.ts","webpack:///./src/app/accounts/two-factor-options.component.ts","webpack:///./jslib/src/models/request/twoFactorEmailRequest.ts","webpack:///./jslib/src/models/request/keysRequest.ts","webpack:///./src/app/components/password-strength.component.html","webpack:///./src/app/layouts/navbar.component.html","webpack:///./src/app/layouts/footer.component.html","webpack:///./src/app/settings/verify-email.component.ts","webpack:///./src/app/settings/organizations.component.html","webpack:///./src/app/settings/update-key.component.ts","webpack:///./jslib/src/models/request/folderWithIdRequest.ts","webpack:///./jslib/src/models/request/updateKeyRequest.ts","webpack:///./src/app/vault/bulk-delete.component.ts","webpack:///./src/app/vault/bulk-move.component.ts","webpack:///./src/app/vault/bulk-share.component.ts","webpack:///./src/app/vault/folder-add-edit.component.ts","webpack:///./src/app/vault/share.component.ts","webpack:///./src/app/settings/profile.component.ts","webpack:///./src/app/settings/change-email.component.ts","webpack:///./jslib/src/models/request/emailTokenRequest.ts","webpack:///./src/app/settings/change-password.component.ts","webpack:///./jslib/src/models/request/passwordRequest.ts","webpack:///./src/app/settings/change-kdf.component.ts","webpack:///./src/app/settings/deauthorize-sessions.component.ts","webpack:///./src/app/settings/delete-account.component.ts","webpack:///./src/app/settings/two-factor-authenticator.component.ts","webpack:///./src/app/settings/two-factor-email.component.ts","webpack:///./src/app/settings/two-factor-recovery.component.ts","webpack:///./src/app/settings/two-factor-u2f.component.ts","webpack:///./src/app/settings/two-factor-yubikey.component.ts","webpack:///./src/app/settings/update-license.component.html","webpack:///./src/app/settings/adjust-storage.component.html","webpack:///./src/app/settings/adjust-payment.component.html","webpack:///./jslib/src/enums/transactionType.ts","webpack:///./jslib/src/enums/planType.ts","webpack:///./jslib/src/angular/pipes/color-password.pipe.ts","webpack:///./jslib/src/angular/directives/flex-copy.directive.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/card.ts","webpack:///./jslib/src/models/domain/field.ts","webpack:///./jslib/src/models/domain/identity.ts","webpack:///./jslib/src/models/domain/login.ts","webpack:///./jslib/src/models/domain/loginUri.ts","webpack:///./jslib/src/models/domain/password.ts","webpack:///./jslib/src/models/view/passwordHistoryView.ts","webpack:///./jslib/src/models/domain/secureNote.ts","webpack:///./jslib/src/models/request/cipherCreateRequest.ts","webpack:///./src/app/organizations/vault/attachments.component.ts","webpack:///./src/app/organizations/vault/collections.component.ts","webpack:///./jslib/src/models/request/cipherCollectionsRequest.ts","webpack:///./src/app/organizations/manage/collection-add-edit.component.ts","webpack:///./jslib/src/models/request/collectionRequest.ts","webpack:///./src/app/organizations/manage/group-add-edit.component.ts","webpack:///./jslib/src/models/request/organizationUserConfirmRequest.ts","webpack:///./src/app/organizations/manage/user-add-edit.component.ts","webpack:///./src/app/organizations/manage/user-confirm.component.ts","webpack:///./src/app/organizations/manage/user-groups.component.ts","webpack:///./src/app/organizations/settings/delete-organization.component.ts","webpack:///./src/app/organizations/settings/adjust-seats.component.ts","webpack:///./jslib/src/angular/directives/box-row.directive.ts","webpack:///./jslib/src/angular/directives/true-false-value.directive.ts","webpack:///./jslib/src/services/api.service.ts","webpack:///./jslib/src/models/response/billingResponse.ts","webpack:///./jslib/src/models/response/cipherResponse.ts","webpack:///./jslib/src/models/response/collectionResponse.ts","webpack:///./jslib/src/models/response/domainsResponse.ts","webpack:///./jslib/src/models/response/folderResponse.ts","webpack:///./jslib/src/models/response/organizationResponse.ts","webpack:///./jslib/src/models/response/profileResponse.ts","webpack:///./jslib/src/services/appId.service.ts","webpack:///./jslib/src/services/audit.service.ts","webpack:///./jslib/src/services/cipher.service.ts","webpack:///./jslib/src/misc/sequentialize.ts","webpack:///./jslib/src/services/collection.service.ts","webpack:///./jslib/src/misc/serviceUtils.ts","webpack:///./jslib/src/services/container.service.ts","webpack:///./jslib/src/services/crypto.service.ts","webpack:///./jslib/src/misc/wordlist.ts","webpack:///./jslib/src/services/environment.service.ts","webpack:///./jslib/src/services/folder.service.ts","webpack:///./jslib/src/models/data/folderData.ts","webpack:///./jslib/src/services/i18n.service.ts","webpack:///./jslib/src/services/lock.service.ts","webpack:///./jslib/src/services/passwordGeneration.service.ts","webpack:///./jslib/src/services/settings.service.ts","webpack:///./jslib/src/services/state.service.ts","webpack:///./jslib/src/services/sync.service.ts","webpack:///./jslib/src/services/token.service.ts","webpack:///./jslib/src/services/totp.service.ts","webpack:///./jslib/src/services/user.service.ts","webpack:///./jslib/src/models/export/cipherWithIds.ts","webpack:///./jslib/src/models/export/collectionWithId.ts","webpack:///./jslib/src/models/export/folderWithId.ts","webpack:///./jslib/src/enums/notificationType.ts","webpack:///./jslib/src/angular/services/auth-guard.service.ts","webpack:///./src/app/services/organization-guard.service.ts","webpack:///./src/app/services/organization-type-guard.service.ts","webpack:///./src/app/services/unauth-guard.service.ts","webpack:///./src/app/main.ts","webpack:///./src/app/app.module.ts","webpack:///./jslib/src/services/broadcaster.service.ts","webpack:///./src/app/layouts/frontend-layout.component.html","webpack:///./src/app/accounts/login.component.html","webpack:///./jslib/src/angular/components/login.component.ts","webpack:///./jslib/src/misc/tldjs.noop.ts","webpack:///./src/app/accounts/two-factor.component.html","webpack:///./jslib/src/angular/components/two-factor-options.component.ts","webpack:///./jslib/src/angular/components/modal.component.ts","webpack:///./jslib/src/angular/components/two-factor.component.ts","webpack:///./jslib/src/models/domain/authResult.ts","webpack:///./jslib/src/models/request/deviceRequest.ts","webpack:///./jslib/src/models/request/preloginRequest.ts","webpack:///./jslib/src/models/request/tokenRequest.ts","webpack:///./jslib/src/misc/u2f.ts","webpack:///./src/app/accounts/register.component.html","webpack:///./jslib/src/angular/components/register.component.ts","webpack:///./jslib/src/models/request/registerRequest.ts","webpack:///./src/app/accounts/hint.component.html","webpack:///./jslib/src/angular/components/hint.component.ts","webpack:///./jslib/src/models/request/passwordHintRequest.ts","webpack:///./src/app/accounts/lock.component.html","webpack:///./jslib/src/angular/components/lock.component.ts","webpack:///./src/app/accounts/verify-email-token.component.html","webpack:///./jslib/src/models/request/verifyEmailRequest.ts","webpack:///./src/app/accounts/accept-organization.component.html","webpack:///./jslib/src/models/request/organizationUserAcceptRequest.ts","webpack:///./src/app/accounts/recover-two-factor.component.html","webpack:///./jslib/src/models/request/twoFactorRecoveryRequest.ts","webpack:///./src/app/accounts/recover-delete.component.html","webpack:///./jslib/src/models/request/deleteRecoverRequest.ts","webpack:///./src/app/accounts/verify-recover-delete.component.html","webpack:///./jslib/src/models/request/verifyDeleteRecoverRequest.ts","webpack:///./src/app/layouts/user-layout.component.html","webpack:///./src/app/vault/vault.component.html","webpack:///./src/app/settings/verify-email.component.html","webpack:///./src/app/vault/groupings.component.html","webpack:///./jslib/src/angular/components/groupings.component.ts","webpack:///./src/app/vault/ciphers.component.html","webpack:///./jslib/src/angular/directives/fallback-src.directive.ts","webpack:///./jslib/src/angular/components/ciphers.component.ts","webpack:///./jslib/src/models/request/attachmentRequest.ts","webpack:///./jslib/src/angular/components/add-edit.component.ts","webpack:///./jslib/src/angular/components/attachments.component.ts","webpack:///./jslib/src/angular/components/collections.component.ts","webpack:///./jslib/src/angular/components/folder-add-edit.component.ts","webpack:///./jslib/src/angular/components/share.component.ts","webpack:///./src/app/settings/settings.component.html","webpack:///./src/app/settings/account.component.html","webpack:///./src/app/settings/profile.component.html","webpack:///./jslib/src/models/request/updateProfileRequest.ts","webpack:///./src/app/settings/change-email.component.html","webpack:///./jslib/src/models/request/emailRequest.ts","webpack:///./src/app/settings/change-password.component.html","webpack:///./src/app/settings/change-kdf.component.html","webpack:///./jslib/src/models/request/kdfRequest.ts","webpack:///./src/app/settings/options.component.html","webpack:///./src/app/settings/domain-rules.component.html","webpack:///./jslib/src/models/request/updateDomainsRequest.ts","webpack:///./src/app/settings/two-factor-setup.component.html","webpack:///./jslib/src/models/request/updateTwoFactorAuthenticatorRequest.ts","webpack:///./jslib/src/models/request/twoFactorProviderRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorDuoRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorEmailRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorU2fDeleteRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorU2fRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorYubioOtpRequest.ts","webpack:///./src/app/settings/premium.component.html","webpack:///./src/app/settings/user-billing.component.html","webpack:///./jslib/src/models/request/storageRequest.ts","webpack:///./jslib/src/models/request/paymentRequest.ts","webpack:///./src/app/settings/create-organization.component.html","webpack:///./jslib/src/models/request/organizationCreateRequest.ts","webpack:///./src/app/tools/tools.component.html","webpack:///./src/app/tools/import.component.html","webpack:///./src/app/tools/export.component.html","webpack:///./jslib/src/angular/components/export.component.ts","webpack:///./src/app/tools/password-generator.component.html","webpack:///./jslib/src/angular/components/password-generator.component.ts","webpack:///./jslib/src/angular/components/password-generator-history.component.ts","webpack:///./src/app/tools/breach-report.component.html","webpack:///./src/app/tools/reused-passwords-report.component.html","webpack:///./src/app/tools/unsecured-websites-report.component.html","webpack:///./src/app/tools/weak-passwords-report.component.html","webpack:///./src/app/tools/exposed-passwords-report.component.html","webpack:///./src/app/tools/inactive-two-factor-report.component.html","webpack:///./src/app/layouts/organization-layout.component.html","webpack:///./src/app/organizations/vault/vault.component.html","webpack:///./jslib/src/enums/eventType.ts","webpack:///./src/app/organizations/tools/tools.component.html","webpack:///./src/app/organizations/manage/manage.component.html","webpack:///./src/app/organizations/manage/collections.component.html","webpack:///./src/app/organizations/manage/events.component.html","webpack:///./src/app/organizations/manage/groups.component.html","webpack:///./jslib/src/models/request/groupRequest.ts","webpack:///./src/app/organizations/manage/people.component.html","webpack:///./jslib/src/models/request/organizationUserInviteRequest.ts","webpack:///./jslib/src/models/request/organizationUserUpdateRequest.ts","webpack:///./jslib/src/models/request/organizationUserUpdateGroupsRequest.ts","webpack:///./src/app/organizations/settings/settings.component.html","webpack:///./src/app/organizations/settings/account.component.html","webpack:///./jslib/src/models/request/organizationUpdateRequest.ts","webpack:///./src/app/organizations/settings/organization-billing.component.html","webpack:///./src/app/organizations/settings/adjust-seats.component.html","webpack:///./jslib/src/models/request/seatRequest.ts","webpack:///./jslib/src/models/request/verifyBankRequest.ts","webpack:///./src/app/vault/add-edit.component.html","webpack:///./src/app/vault/attachments.component.html","webpack:///./src/app/vault/bulk-delete.component.html","webpack:///./src/app/vault/bulk-move.component.html","webpack:///./src/app/vault/bulk-share.component.html","webpack:///./src/app/vault/collections.component.html","webpack:///./src/app/settings/deauthorize-sessions.component.html","webpack:///./src/app/settings/delete-account.component.html","webpack:///./src/app/organizations/settings/delete-organization.component.html","webpack:///./src/app/vault/folder-add-edit.component.html","webpack:///./src/app/modal.component.ts.ModalComponent.html","webpack:///./src/app/organizations/manage/collection-add-edit.component.html","webpack:///./src/app/organizations/manage/entity-events.component.html","webpack:///./src/app/organizations/manage/entity-users.component.html","webpack:///./src/app/organizations/manage/group-add-edit.component.html","webpack:///./src/app/organizations/manage/user-add-edit.component.html","webpack:///./src/app/organizations/manage/user-confirm.component.html","webpack:///./src/app/organizations/manage/user-groups.component.html","webpack:///./src/app/tools/password-generator-history.component.html","webpack:///./src/app/settings/purge-vault.component.html","webpack:///./src/app/vault/share.component.html","webpack:///./src/app/settings/two-factor-authenticator.component.html","webpack:///./src/app/settings/two-factor-duo.component.html","webpack:///./src/app/settings/two-factor-email.component.html","webpack:///./src/app/accounts/two-factor-options.component.html","webpack:///./src/app/settings/two-factor-recovery.component.html","webpack:///./src/app/settings/two-factor-u2f.component.html","webpack:///./src/app/settings/two-factor-yubikey.component.html","webpack:///./src/app/settings/update-key.component.html","webpack:///./src/app/app.component.html","webpack:///./src/app/services/services.module.ts","webpack:///./src/services/broadcasterMessaging.service.ts","webpack:///./src/services/htmlStorage.service.ts","webpack:///./jslib/src/services/index.ts","webpack:///./jslib/src/models/response/breachAccountResponse.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/misc/throttle.ts","webpack:///./jslib/src/models/request/cipherBulkDeleteRequest.ts","webpack:///./jslib/src/models/request/cipherBulkMoveRequest.ts","webpack:///./jslib/src/models/request/cipherBulkShareRequest.ts","webpack:///./jslib/src/models/request/cipherShareRequest.ts","webpack:///./jslib/src/models/domain/treeNode.ts","webpack:///./jslib/src/models/domain/encryptedObject.ts","webpack:///./jslib/src/models/domain/environmentUrls.ts","webpack:///./jslib/src/models/domain/folder.ts","webpack:///./jslib/src/models/domain/generatedPasswordHistory.ts","webpack:///./jslib/src/models/data/organizationData.ts","webpack:///./jslib/src/models/domain/organization.ts","webpack:///./src/services/i18n.service.ts","webpack:///./src/services/memoryStorage.service.ts","webpack:///./src/services/webPlatformUtils.service.ts","webpack:///./jslib/src/misc/analytics.ts","webpack:///./jslib/src/services/export.service.ts","webpack:///./jslib/src/models/export/cipher.ts","webpack:///./jslib/src/models/export/card.ts","webpack:///./jslib/src/models/export/field.ts","webpack:///./jslib/src/models/export/identity.ts","webpack:///./jslib/src/models/export/login.ts","webpack:///./jslib/src/models/export/loginUri.ts","webpack:///./jslib/src/models/export/secureNote.ts","webpack:///./jslib/src/models/export/collection.ts","webpack:///./jslib/src/models/export/folder.ts","webpack:///./jslib/src/services/import.service.ts","webpack:///./jslib/src/models/request/importCiphersRequest.ts","webpack:///./jslib/src/models/request/importOrganizationCiphersRequest.ts","webpack:///./jslib/src/models/request/kvpRequest.ts","webpack:///./jslib/src/importers/ascendoCsvImporter.ts","webpack:///./jslib/src/importers/avastCsvImporter.ts","webpack:///./jslib/src/importers/aviraCsvImporter.ts","webpack:///./jslib/src/importers/bitwardenCsvImporter.ts","webpack:///./jslib/src/importers/bitwardenJsonImporter.ts","webpack:///./jslib/src/importers/blurCsvImporter.ts","webpack:///./jslib/src/importers/chromeCsvImporter.ts","webpack:///./jslib/src/importers/clipperzHtmlImporter.ts","webpack:///./jslib/src/importers/dashlaneJsonImporter.ts","webpack:///./jslib/src/importers/enpassCsvImporter.ts","webpack:///./jslib/src/importers/enpassJsonImporter.ts","webpack:///./jslib/src/importers/firefoxCsvImporter.ts","webpack:///./jslib/src/importers/fsecureFskImporter.ts","webpack:///./jslib/src/importers/gnomeJsonImporter.ts","webpack:///./jslib/src/importers/kasperskyTxtImporter.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/rememBearCsvImporter.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","0","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","I18nService","ApiService","I18nPipe","i18nService","this","transform","id","p1","p2","p3","PlatformUtilsService","UserService","ValidationService","platformUtilsService","showError","defaultErrorMessage","errors","validationErrors","concat","getAllMessages","message","showToast","timeout","MessagingService","ApiActionDirective","el","validationService","ngOnChanges","changes","_this","appApiAction","then","nativeElement","loading","response","e","CipherService","CryptoService","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","forEach","row","console","warn","parseSingleRowCsv","rowData","isNullOrWhitespace","parsedRow","makeUriArray","uri","loginUri","LoginUriView","fixUri","match","returnArr_1","u","toLowerCase","indexOf","substring","nameFromUrl","url","hostname","Utils","getHostname","startsWith","replace","str","getValueOrDefault","defaultValue","split","getCardBrand","cardNum","re","RegExp","test","setCardExpiration","cipher","expiration","parts","month","year","substr","card","expMonth","expYear","moveFoldersToCollections","folderRelationships","collectionRelationships","collections","folders","map","f","collection","CollectionView","querySelectorDirectChild","parentEl","query","els","querySelectorAllDirectChild","Array","from","querySelectorAll","filter","parentNode","initLoginCipher","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","StateService","CalloutComponent","ngOnInit","calloutStyle","undefined","title","icon","_l","i0","ɵeld","_ck","_v","_co","component","ɵinlineInterpolate","ɵted","ɵand","View_CalloutComponent_2","ɵdid","i1","NgIf","ViewContainerRef","TemplateRef","ngIf","View_CalloutComponent_1","ɵncd","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","httpUrl","tldEndingRegex","getUrlObject","validIpAddress","urlDomain","domain","getQueryParams","Map","pair","set","getSortFunction","prop","a","b","collator","compare","localeCompare","ipString","win","mobile","navigator","userAgent","vendor","opera","hasProtocol","URL","anchor","document","createElement","href","StopClickDirective","onClick","$event","preventDefault","CollectionService","InputVerbatimDirective","renderer","condition","disableComplete","hasAttribute","setAttribute","FolderService","StorageService","PasswordGenerationService","SyncService","TokenService","EnvironmentService","PasswordVerificationRequest","ConstantsService","environmentUrlsKey","disableGaKey","disableAddLoginNotificationKey","disableContextMenuItemKey","disableFaviconKey","disableAutoTotpCopyKey","enableAutoFillOnPageLoadKey","lockOptionKey","lastActiveKey","neverDomainsKey","installedVersionKey","localeKey","themeKey","collapsedGroupingsKey","autoConfirmFingerprints","dontShowCardsCurrentTab","dontShowIdentitiesCurrentTab","defaultUriMatch","pinProtectedKey","protectedPin","disableChangedPasswordNotificationKey","CardView","cardholderName","code","_brand","_number","_subTitle","repeat","brand","number","count","exp","formatYear","AuthService","constants_service_1","IconMap","fa-globe","fa-sticky-note-o","fa-id-card-o","fa-credit-card","fa-android","fa-apple","IconComponent","environmentService","stateService","iconsUrl","baseUrl","imageEnabled","_b","sent","load","setLoginIcon","Card","Identity","hostnameUri","isWebsite","image","fallbackImage","BroadcasterService","_super","__extends","AutofocusDirective","autofocus","focus","jq","modal_component_1","ModalComponent","componentFactoryResolver","ngOnDestroy","show","parentContainer","fade","factory","resolveComponentFactory","componentRef","container","createComponent","modals","modal","on","onShow","emit","onShown","find","onClose","onClosed","clear","instance","close","TwoFactorProviderType","StopPropDirective","stopPropagation","en","ad","View_IconComponent_1","i2","View_IconComponent_2","CryptoFunctionService","AuditService","cipherString_1","Domain","buildDomainModel","dataObj","alreadyEncrypted","notEncList","objProp","CipherString","buildDataModel","notCipherStringList","encryptedString","decryptObj","viewModel","orgId","promises","self","theProp","Promise","resolve","mapProp","decrypt","val","all","LockService","SearchService","cardView_1","identityView_1","organizationId","folderId","organizationUseTotp","edit","identity","IdentityView","attachments","passwordHistory","collectionIds","revisionDate","localData","subTitle","hasAttachments","passwordRevisionDate","AvatarComponent","sanitizer","cryptoFunctionService","size","charCount","textColor","fontSize","fontWeight","dynamic","circle","generate","email","hash","hashBytes","src","chars","upperData","toUpperCase","getFirstLetters","charObj","getCharText","color","stringToColor","svg","getSvg","appendChild","html","outerHTML","svgHtml","text","svgTag","style","backgroundColor","width","height","character","textTag","textContent","totp","hasUris","some","canLaunch","launchUri","readOnly","NgClass","IterableDiffers","KeyValueDiffers","ElementRef","Renderer2","ngClass","ɵpod","rounded-circle","currVal_2","bypassSecurityTrustResourceUrl","middleName","address1","address2","address3","city","state","postalCode","country","company","phone","ssn","passportNumber","licenseNumber","_firstName","_lastName","firstName","lastName","name_1","address","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","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","isCard","createObj","bankAccount","sourceObj","createToken","status","getCountry","attachmentData_1","cardData_1","fieldData_1","identityData_1","loginData_1","passwordHistoryData_1","secureNoteData_1","CipherData","userId","LoginData","SecureNoteData","CardData","IdentityData","FieldData","attachment","AttachmentData","ph","PasswordHistoryData","CollectionData","core_1","twoFactorProviderType_1","passwordVerificationRequest_1","TwoFactorVerifyComponent","apiService","toasterService","cryptoService","onAuthed","EventEmitter","submit","masterPassword","popAsync","request","hashPassword","masterPasswordHash","_d","formPromise","getTwoFactorRecover","Duo","OrganizationDuo","getTwoFactorOrganizationDuo","getTwoFactorDuo","Email","getTwoFactorEmail","U2f","getTwoFactorU2f","Authenticator","getTwoFactorAuthenticator","Yubikey","getTwoFactorYubiKey","DeviceType","attachmentRequest_1","CipherRequest","toISOString","lastUsedDate","attachments2","fileName","attachmentRequest","AttachmentRequest","Collection","obj","default","i3","NgForm","ngSubmit","ɵprd","ControlContainer","NgControlStatusGroup","i4","i5","ɵppd","DefaultValueAccessor","COMPOSITION_BUFFER_MODE","RequiredValidator","required","NG_VALIDATORS","p0_0","NG_VALUE_ACCESSOR","NgModel","model","update","NgControl","NgControlStatus","i6","appInputVerbatim","ɵnov","ngClassUntouched","ngClassTouched","ngClassPristine","ngClassDirty","ngClassValid","ngClassInvalid","ngClassPending","currVal_8","ɵunv","currVal_9","currVal_23","currVal_24","currVal_25","router_1","RouterService","router","activatedRoute","titleService","previousUrl","currentUrl","events","subscribe","event","NavigationEnd","titleId","rawTitle","child","firstChild","snapshot","newTitle","setTitle","getPreviousUrl","encryptionType_1","encryptedStringOrType","iv","mac","encType","encryptionType","headerPieces","encPieces","EncryptionType","AesCbc128_HmacSha256_B64","AesCbc256_B64","AesCbc256_HmacSha256_B64","Rsa2048_OaepSha256_B64","Rsa2048_OaepSha1_B64","decryptedValue","containerService","bitwardenContainerService","getCryptoService","getOrgKey","orgKey","decryptToUtf8","OrganizationsComponent","userService","analytics","syncService","vault","loaded","getAllOrganizations","orgs","sort","organizations","leave","org","showDialog","actionPromise","postLeaveOrganization","fullSync","eventTrack","next","action","TotpService","uriMatchType_1","CanLaunchWhitelist","_uri","_domain","_hostname","_canLaunch","UriMatchType","RegularExpression","twoFactorProviderRequest_1","TwoFactorBaseComponent","onUpdated","twoFactorProviderType","enabled","authed","auth","authResponse","enable","enableFunction","disable","promise","TwoFactorProviderRequest","putTwoFactorOrganizationDisable","putTwoFactorDisable","ImportService","ExportService","add_edit_component_1","add_edit_component_2","CipherReportComponent","messagingService","requiresPaid","hasLoaded","setCiphers","selectCipher","childComponent","cipherAddEditModalRef","AddEditComponent","cipherId","onSavedCipher","__awaiter","onDeletedCipher","checkAccess","useTotp","send","canAccessPremium","accessPremium","cipherData_1","attachment_1","card_1","domainBase_1","field_1","identity_1","login_1","password_1","secureNote_1","Cipher","Attachment","Field","Password","_f","_c","_e","attachments_1","reduce","decAttachment","fields_1","decField","passwordHistory_1","decPh","toCipherData","toLoginData","toSecureNoteData","toCardData","toIdentityData","toFieldData","toAttachmentData","toPasswordHistoryData","deviceType_1","eventType_1","EventService","getDefaultDateFilters","end","getMonth","getDate","setDate","start","toDateTimeLocalString","formatDateFilters","filterStart","filterEnd","isNaN","getTime","getEventInfo","ev","options","EventOptions","appInfo","getAppInfo","deviceType","getEventMessage","appIcon","appName","msg","EventType","User_LoggedIn","User_ChangedPassword","User_Updated2fa","User_Disabled2fa","User_Recovered2fa","User_FailedLogIn","User_FailedLogIn2fa","Cipher_Created","formatCipherId","Cipher_Updated","Cipher_Deleted","Cipher_AttachmentCreated","Cipher_AttachmentDeleted","Cipher_Shared","Cipher_UpdatedCollections","Collection_Created","formatCollectionId","Collection_Updated","Collection_Deleted","Group_Created","formatGroupId","Group_Updated","Group_Deleted","OrganizationUser_Invited","formatOrgUserId","OrganizationUser_Confirmed","OrganizationUser_Updated","OrganizationUser_Removed","OrganizationUser_UpdatedGroups","Organization_Updated","Organization_PurgedVault","Android","iOS","UWP","ChromeExtension","FirefoxExtension","OperaExtension","EdgeExtension","VivaldiExtension","SafariExtension","WindowsDesktop","MacOsDesktop","LinuxDesktop","ChromeBrowser","FirefoxBrowser","OperaBrowser","SafariBrowser","VivaldiBrowser","EdgeBrowser","IEBrowser","UnknownBrowser","shortId","getShortId","cipherInfo","makeAnchor","groupId","collectionId","organizationUserId","innerHTML","date","pad","getHours","getMinutes","num","norm","floor","abs","EventInfo","OrganizationUserType","authResult_1","deviceRequest_1","keysRequest_1","preloginRequest_1","tokenRequest_1","TwoFactorProviders","description","priority","premium","tokenService","appIdService","setCryptoKeys","selectedTwoFactorProviderType","logIn","makePreloginKey","hashedPassword","logInHelper","logInTwoFactor","twoFactorProvider","twoFactorToken","remember","logInComplete","logOut","callback","getSupportedTwoFactorProviders","providers","twoFactorProviders","has","supportsDuo","supportsU2f","getDefaultTwoFactorProvider","u2fSupported","providerType","providerPriority","provider","kdf","kdfIterations","postPrelogin","PreloginRequest","preloginResponse","e_1","statusCode","makeKey","getTwoFactorToken","storedTwoFactorToken","getAppId","appId","deviceRequest","DeviceRequest","TokenRequest","Remember","postIdentityToken","clearState","AuthResult","twoFactor","accessToken","twoFactorResponse","twoFactorProviders2","tokenResponse","setTwoFactorToken","setTokens","refreshToken","setInformation","getUserId","getEmail","setKey","setKeyHash","setEncKey","privateKey","makeKeyPair","keyPair","postAccountKeys","KeysRequest","e_2","setEncPrivateKey","GroupingsComponent","collectionService","folderService","storageService","onSearchTextChanged","searchText","searchPlaceholder","searchTextChanged","ciphers_component_1","CiphersComponent","searchService","cipherService","showAddNew","onAttachmentsClicked","onShareClicked","onCollectionsClicked","cipherType","selectAll","checkCipher","select","checked","selectCount","getSelected","getSelectedIds","share","delete","deleteCipher","refresh","copy","typeI18nKey","aType","copyToClipboard","deleteWithServer","showFixOldAttachments","hasOldAttachments","auditService","totpService","passwordGenerationService","showRevisionDate","hasPasswordHistory","viewingPasswordHistory","passwordRevisionDisplayDate","cleanUp","totpUpdateCode","interval_1","getTimeInterval","totpTick","totpInterval","setInterval","toggleFavorite","launch","generatePassword","confirmed","getOptions","premiumRequired","upgradeOrganization","viewHistory","clearInterval","getCode","totpCode","half","totpCodeFormatted","intervalSeconds","epoch","round","mod","totpSec","totpDash","totpLow","OrganizationUserStatusType","auth_service_1","two_factor_authenticator_component_1","two_factor_duo_component_1","two_factor_email_component_1","two_factor_recovery_component_1","two_factor_u2f_component_1","two_factor_yubikey_component_1","TwoFactorSetupComponent","filterProvider","getTwoFactorProviders","manage","openModal","authenticatorModalRef","TwoFactorAuthenticatorComponent","updateStatus","yubikeyModalRef","TwoFactorYubiKeyComponent","duoModalRef","TwoFactorDuoComponent","emailModalRef","TwoFactorEmailComponent","u2fModalRef","TwoFactorU2fComponent","recoveryCode","recoveryModalRef","TwoFactorRecoveryComponent","ref","ImportComponent","importService","format","successNavigate","setImportOptions","importOptions","importer","getImporter","fileEl","getElementById","files","fileContents","getFileContents","content","import","properties","navigate","getFormatInstructionTitle","results","featuredImportOptions","regularImportOptions","file","reader","FileReader","readAsText","evt","pre","target","onerror","ExportComponent","exportService","saved","ReusedPasswordsReportComponent","getAllCiphers","allCiphers","ciphersWithPasswords","passwordUseMap","reusedPasswordCiphers","getAllDecrypted","UnsecuredWebsitesReportComponent","unsecuredCiphers","WeakPasswordsReportComponent","passwordStrengthMap","passwordStrengthCache","weakPasswordCiphers","hasUsername","cacheKey","userInput","atPosition","passwordStrength","score","scoreKey","ExposedPasswordsReportComponent","exposedPasswordMap","exposedPasswordCiphers","passwordLeaked","exposedCount","InactiveTwoFactorReportComponent","services","cipherDocs","load2fa","inactive2faCiphers_1","docs_1","fetch","Request","json","categoryName","responseJson","serviceName","category","service","tfa","SearchPipe","items","prop1","prop2","prop3","SelectionReadOnlyRequest","SelectionReadOnlyResponse","Id","ReadOnly","NotificationsService","SettingsService","FrontendLayoutComponent","version","getApplicationVersion","classList","add","remove","LoginComponent","authService","route","onSuccessfulLoginNavigate","goAfterLogIn","queryParamsSub","queryParams","qParams","save","plan","unsubscribe","invite","loginRedirect","successRoute","two_factor_options_component_1","TwoFactorComponent","anotherMethod","twoFactorOptionsModal","TwoFactorOptionsComponent","onProviderSelected","selectedProviderType","onRecoverSelected","PasswordStrengthComponent","showText","scoreWidth","RegisterComponent","showCreateOrgMessage","showTerms","isSelfHost","KdfType","HintComponent","LockComponent","lockService","routerService","isAuthenticated","hasKey","SymmetricCryptoKey","encKey","macKey","keyB64","encKeyB64","macKeyB64","verifyEmailRequest_1","VerifyEmailTokenComponent","fired","token","postAccountVerifyEmailToken","VerifyEmailRequest","refreshIdentityToken","organizationUserAcceptRequest_1","AcceptOrganizationComponent","OrganizationUserAcceptRequest","postOrganizationUserAccept","toast","orgName","organizationName","twoFactorRecoveryRequest_1","RecoverTwoFactorComponent","TwoFactorRecoveryRequest","postTwoFactorRecover","deleteRecoverRequest_1","RecoverDeleteComponent","DeleteRecoverRequest","postAccountRecoverDelete","verifyDeleteRecoverRequest_1","VerifyRecoverDeleteComponent","VerifyDeleteRecoverRequest","postAccountRecoverDeleteToken","NavbarComponent","selfHosted","getName","lock","FooterComponent","UserLayoutComponent","update_key_component_1","attachments_component_1","bulk_delete_component_1","bulk_move_component_1","bulk_share_component_1","collections_component_1","folder_add_edit_component_1","share_component_1","VaultComponent","changeDetectorRef","broadcasterService","ngZone","favorites","showVerifyEmail","showBrowserOutdated","showUpdateKey","showPremiumCallout","getEmailVerified","params","hasEncKey","groupingsComponent","organizationsComponent","selectedAll","ciphersComponent","selectedFavorites","filterFavorites","selectedType","filterCipherType","selectedFolder","selectedFolderId","filterFolder","selectedCollectionId","filterCollection","run","command","successfully","detectChanges","clearGroupingFilters","clearFilters","go","filterSearchText","editCipherAttachments","getOrganization","maxStorageGb","attachmentsModalRef","AttachmentsComponent","madeAttachmentChanges","onUploadedAttachment","onDeletedAttachment","onReuploadedAttachment","shareCipher","shareModalRef","ShareComponent","onSharedCipher","editCipherCollections","collectionsModalRef","CollectionsComponent","onSavedCollections","folderAddEditModalRef","FolderAddEditComponent","onSavedFolder","loadFolders","editFolder","onDeletedFolder","addCipher","editCipher","bulkDelete","selectedIds","bulkDeleteModalRef","BulkDeleteComponent","cipherIds","onDeleted","bulkShare","selectedCiphers","bulkShareModalRef","BulkShareComponent","onShared","bulkMove","bulkMoveModalRef","BulkMoveComponent","onMoved","updateKey","updateKeyModalRef","UpdateKeyComponent","relativeTo","replaceUrl","CipherWithIdRequest","FolderRequest","folder","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","lockOption","lockOptions","localeOptions","supportedTranslationLocales","locale","disableIcons","enableGravatars","startingLocale","setLockOption","location","reload","updateDomainsRequest_1","DomainRulesComponent","custom","getSettingsDomains","equivalentDomains","globalEquivalentDomains","domains","excluded","toggleExcluded","globalDomain","customize","index","UpdateDomainsRequest","excludedGlobalEquivalentDomains","d2","putSettingsDomains","indexTrackBy","updateTwoFactorDuoRequest_1","processResponse","UpdateTwoFactorDuoRequest","integrationKey","ikey","secretKey","skey","putTwoFactorOrganizationDuo","putTwoFactorDuo","RadioControlValueAccessor","ɵangular_packages_forms_forms_j","Injector","p1_0","currVal_11","parent","View_PaymentComponent_2","View_PaymentComponent_3","NgSelectOption","SelectControlValueAccessor","ngValue","ɵangular_packages_forms_forms_s","context","$implicit","PatternValidator","pattern","View_PaymentComponent_5","NgForOf","ngForOf","View_PaymentComponent_6","cvc","currVal_0","currVal_14","currVal_27","currVal_40","currVal_41","currVal_53","currVal_567","View_CalloutComponent_0","RenderType_CalloutComponent","currVal_1","currVal_3","currVal_4","currVal_17","currVal_30","currVal_42","currVal_56","currVal_59","currVal_62","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","updatePromise","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","transactionType_1","UserBillingComponent","firstLoaded","adjustStorageAdd","showAdjustStorage","showAdjustPayment","showUpdateLicense","transactionType","TransactionType","getUserBilling","billing","reinstate","reinstatePromise","postReinstatePremium","cancelPromise","postCancelPremium","downloadLicense","licenseString","JSON","stringify","license","saveFile","updateLicense","closeUpdateLicense","adjustStorage","closeStorage","changePayment","closePayment","subscription","cancelled","cancelAtEndDate","upcomingInvoice","paymentSource","invoices","transactions","storageGb","toFixed","storagePercentage","planType_1","organizationCreateRequest_1","CreateOrganizationComponent","ownedBusiness","premiumAccessAddon","storageGbPriceMonthly","additionalSeats","price","monthlyPrice","yearlyPrice","plans","free","basePrice","noAdditionalSeats","noPayment","families","annualBasePrice","baseSeats","annualPlanType","PlanType","FamiliesAnnually","canBuyPremiumAccessAddon","teams","monthlyBasePrice","seatPrice","annualSeatPrice","monthlySeatPrice","monthPlanType","TeamsMonthly","TeamsAnnually","enterprise","EnterpriseMonthly","EnterpriseAnnually","collectionCt","makeShareKey","shareKey","encrypt","postOrganizationLicense","OrganizationCreateRequest","collectionName","billingEmail","planType","Free","businessName","additionalStorageGb","postOrganization","finalize","changedPlan","changedOwnedBusiness","annual","seatTotal","baseTotal","premiumAccessTotal","ToolsComponent","password_generator_component_1","password_generator_history_component_1","PasswordGeneratorComponent","history","historyModalRef","PasswordGeneratorHistoryComponent","BreachReportComponent","breachedAccounts","checkedUsername","cipher_1","cipherCreateRequest_1","cipherRequest_1","originalCipher","loadCollections","isAdmin","loadCipher","getCipherAdmin","encryptCipher","saveCipher","editMode","putCipherAdmin","CipherCreateRequest","postCipherAdmin","deleteCipherAdmin","OrganizationLayoutComponent","collectionData_1","collection_1","getCollections","collectionDomains","decryptMany","unassignedCollection","getAllNested","nestedCollections","collapse","grouping","isCollapsed","onEventsClicked","accessEvents","useEvents","getAllFromApiForOrganization","applyFilter","searchPending","filteredCiphers","searchCiphersBasic","entity_events_component_1","viewEvents","eventsModalRef","EntityEventsComponent","entityId","showUser","entity","eventService","orgUsersUserIdMap","orgUsersIdMap","defaultDates","getOrganizationUsers","loadEvents","clearExisting","refreshPromise","morePromise","dates","getEventsOrganizationUser","continuationToken","getEventsCipher","actingUserId","eventInfo","user","userName","userEmail","ip","ipAddress","accessReports","getExportData","getOrganizationExport","getFileName","ManageComponent","accessGroups","useGroups","collection_add_edit_component_1","entity_users_component_1","getUserCollections","addEditModalRef","CollectionAddEditComponent","onSavedCollection","onDeletedCollection","removeCollection","deleteCollection","users","usersModalRef","EntityUsersComponent","entityName","onEditedUsers","organizationUserStatusType_1","organizationUserType_1","selectionReadOnlyRequest_1","organizationUserType","organizationUserStatusType","showSelected","selectedCount","allUsers","loadUsers","getGroupUsers","getCollectionUsers","accessAll","selectedChanged","filterSelected","selections","putGroupUsers","putCollectionUsers","EventsComponent","getEventsOrganization","group_add_edit_component_1","GroupsComponent","getGroups","groups","group","GroupAddEditComponent","onSavedGroup","onDeletedGroup","removeGroup","deleteGroup","organizationUserConfirmRequest_1","user_add_edit_component_1","user_confirm_component_1","user_groups_component_1","PeopleComponent","statusMap","Confirmed","Invited","Accepted","confirmedCount","acceptedCount","UserAddEditComponent","onSavedUser","onDeletedUser","removeUser","groupsModalRef","UserGroupsComponent","deleteOrganizationUser","reinvite","postOrganizationUserReinvite","confirm","updateUser","mapIndex","autoConfirm","doConfirmation","UserConfirmComponent","confirmModalRef","onConfirmedUser","getUserPublicKey","publicKeyResponse","publicKey","log","getFingerprint","rsaEncrypt","OrganizationUserConfirmRequest","postOrganizationUserConfirm","access2fa","use2fa","organizationUpdateRequest_1","delete_organization_component_1","OrganizationUpdateRequest","putOrganization","deleteOrganization","DeleteOrganizationComponent","duoComp","getTwoFactorOrganizationProviders","verifyBankRequest_1","OrganizationBillingComponent","adjustSeatsAdd","showAdjustSeats","getOrganizationBilling","postOrganizationReinstate","postOrganizationCancel","changePlan","installationId","prompt","licensePromise","getOrganizationLicense","verifyBank","VerifyBankRequest","amount1","verifyAmount1","amount2","verifyAmount2","verifyBankPromise","postOrganizationVerifyBank","updated","adjustSeats","closeSeats","viewInvoice","charge","getToken","apiBaseUrl","invoiceId","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","currVal_5","i9","klass","bg-secondary-alt","i10","RouterLinkActive","Router","ChangeDetectorRef","routerLinkActive","ɵqud","links","linksWithHrefs","View_NavbarComponent_1","currVal_10","currVal_15","currVal_20","currVal_26","currVal_28","currVal_29","VerifyEmailComponent","postAccountVerifyEmail","ɵpad","View_OrganizationsComponent_6","View_OrganizationsComponent_5","View_OrganizationsComponent_4","View_OrganizationsComponent_7","View_OrganizationsComponent_2","View_OrganizationsComponent_3","i7","View_OrganizationsComponent_16","i8","currVal_6","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","getPrivateKey","encPrivateKey","UpdateKeyRequest","FolderWithIdRequest","deleteManyWithServer","moveManyWithServer","nonShareableCount","shareableCiphers","writeableCollections","allCollections","filterCollections","checkedCollectionIds","shareManyWithServer","updateProfileRequest_1","ProfileComponent","getProfile","profile","fingerprint","UpdateProfileRequest","masterPasswordHint","putProfile","emailRequest_1","emailTokenRequest_1","ChangeEmailComponent","tokenSent","newEmail","EmailTokenRequest","postEmailToken","EmailRequest","getKdf","getKdfIterations","newKey","newMasterPasswordHash","remakeEncKey","newEncKey","postEmail","reset","passwordRequest_1","ChangePasswordComponent","rotateEncKey","currentMasterPassword","newMasterPassword","confirmNewMasterPassword","strengthResult","getPasswordStrengthUserInput","PasswordRequest","postPassword","updatePasswordStrength","masterPasswordStrengthTimeout","masterPasswordScore","rotateEncKeyClicked","kdfRequest_1","kdfType_1","ChangeKdfComponent","PBKDF2_SHA256","kdfOptions","KdfRequest","postAccountKdf","postSecurityStamp","updateTwoFactorAuthenticatorRequest_1","qrScript","UpdateTwoFactorAuthenticatorRequest","putTwoFactorAuthenticator","QRious","element","twoFactorEmailRequest_1","updateTwoFactorEmailRequest_1","sendEmail","emailPromise","postTwoFactorEmailSetup","sentEmail","UpdateTwoFactorEmailRequest","putTwoFactorEmail","print","w","open","write","formatString","updateTwoFactorU2fDeleteRequest_1","updateTwoFactorU2fRequest_1","keyIdAvailable","keysConfiguredCount","u2fScript","u2fResponse","UpdateTwoFactorU2fRequest","deviceResponse","putTwoFactorU2f","removePromise","UpdateTwoFactorU2fDeleteRequest","deleteTwoFactorU2f","readKey","challengePromise","getTwoFactorU2fChallenge","challenge","readDevice","u2fChallenge","resetU2f","u2f","register","u2fListening","errorCode","u2fError","listening","k","this_1","configured","compromised","updateTwoFactorYubioOtpRequest_1","nfc","UpdateTwoFactorYubioOtpRequest","key1","key2","key3","key4","key5","putTwoFactorYubiKey","disablePromise","existingKey","padRight","max","currVal_12","currVal_13","adjustedStorageTotal","ɵangular_packages_forms_forms_be","View_AdjustStorageComponent_1","View_PaymentComponent_0","RenderType_PaymentComponent","ColorPasswordPipe","colorizedPassword","isSpecial","FlexCopyDirective","onCopy","copyText","selection","getSelection","rangeCount","getRangeAt","sizeName","loginUriData_1","LoginUriData","attachmentView_1","symmetricCryptoKey_1","AttachmentView","view","decryptToBytes","decValue","loginUri_1","LoginUri","toLoginUriData","passwordHistoryView_1","PasswordHistoryView","saveCipherAttachment","saveAttachmentWithServer","cipherDomain","deleteCipherAttachment","attachmentId","deleteCipherAttachmentAdmin","cipherCollectionsRequest_1","loadCipherCollections","saveCollections","CipherCollectionsRequest","putCipherCollectionsAdmin","collectionRequest_1","groupsResponse","getCollectionDetails","g","CollectionRequest","putCollection","postCollection","deletePromise","groupRequest_1","access","getGroupDetails","externalId","GroupRequest","putGroup","postGroup","organizationUserInviteRequest_1","organizationUserUpdateRequest_1","User","getOrganizationUser","OrganizationUserUpdateRequest","putOrganizationUser","OrganizationUserInviteRequest","emails","postOrganizationUserInvite","dontAskAgain","organizationUserUpdateGroupsRequest_1","getOrganizationUserGroups","userGroups","ug","OrganizationUserUpdateGroupsRequest","groupIds","putOrganizationUserGroups","seatRequest_1","AdjustSeatsComponent","seatAdjustment","SeatRequest","postOrganizationSeat","BoxRowDirective","elRef","formEls","formEl","addEventListener","contains","tagName","inputEl","click","TrueFalseValueDirective","elementRef","trueValue","falseValue","propagateChange","_","onHostChange","writeValue","setProperty","registerOnChange","fn","registerOnTouched","setDisabledState","isDisabled","billingResponse_1","breachAccountResponse_1","cipherResponse_1","collectionResponse_1","domainsResponse_1","errorResponse_1","eventResponse_1","folderResponse_1","groupResponse_1","identityTokenResponse_1","identityTwoFactorResponse_1","listResponse_1","organizationBillingResponse_1","organizationResponse_1","organizationUserResponse_1","preloginResponse_1","profileResponse_1","selectionReadOnlyResponse_1","syncResponse_1","twoFactorAuthenticatorResponse_1","twoFactorDuoResponse_1","twoFactorEmailResponse_1","twoFactorProviderResponse_1","twoFactorRescoverResponse_1","twoFactorU2fResponse_1","twoFactorYubiKeyResponse_1","userKeyResponse_1","logoutCallback","urlsSet","isWebClient","isDesktopClient","usingBaseUrl","device","getDevice","setUrls","urls","base","identityBaseUrl","api","qsStringify","toIdentityToken","identityClientId","credentials","getCredentials","cache","headers","Headers","Content-Type","Accept","Device-Type","typeHeader","IdentityTokenResponse","TwoFactorProviders2","clearTwoFactorToken","IdentityTwoFactorResponse","ErrorResponse","doRefreshToken","ProfileResponse","BillingResponse","PreloginResponse","getAccountRevisionDate","postPasswordHint","postRegister","getFolder","FolderResponse","postFolder","putFolder","deleteFolder","getCipher","CipherResponse","getCiphersOrganization","ListResponse","postCipher","postCipherCreate","putCipher","deleteManyCiphers","putMoveCiphers","putShareCipher","putShareCiphers","putCipherCollections","path","postImportCiphers","postImportOrganizationCiphers","postCipherAttachment","postCipherAttachmentAdmin","postShareCipherAttachment","CollectionGroupDetailsResponse","CollectionResponse","dr","deleteCollectionUser","GroupDetailsResponse","GroupResponse","deleteGroupUser","OrganizationUserDetailsResponse","OrganizationUserUserDetailsResponse","getSync","SyncResponse","postImportDirectory","DomainsResponse","TwoFactorProviderResponse","TwoFactorAuthenticatorResponse","TwoFactorEmailResponse","TwoFactorDuoResponse","TwoFactorYubiKeyResponse","TwoFactorU2fResponse","ChallengeResponse","TwoFactorRecoverResponse","postTwoFactorEmail","OrganizationResponse","OrganizationBillingResponse","getEvents","addEventParameters","EventResponse","UserKeyResponse","getHibpBreach","BreachAccountResponse","getActiveBearerToken","tokenNeedsRefresh","hasResponse","requestInit","authHeader","handleError","tokenError","getRefreshToken","decodedToken","decodeToken","grant_type","client_id","refresh_token","charges","storageName","StorageName","StorageGb","MaxStorageGb","PaymentSource","BillingSourceResponse","Subscription","BillingSubscriptionResponse","UpcomingInvoice","BillingInvoiceInfoResponse","Charges","BillingChargeResponse","Transactions","BillingTransactionResponse","Invoices","BillingInvoiceResponse","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","Url","pdfUrl","PdfUrl","Number","paid","Paid","details","Details","attachmentResponse_1","passwordHistoryResponse_1","cardApi_1","fieldApi_1","identityApi_1","loginApi_1","secureNoteApi_1","OrganizationId","FolderId","Notes","Favorite","Edit","OrganizationUseTotp","RevisionDate","LoginApi","CardApi","IdentityApi","SecureNoteApi","Fields","FieldApi","Attachments","AttachmentResponse","PasswordHistory","PasswordHistoryResponse","CollectionIds","CollectionDetailsResponse","Groups","globalDomainResponse_1","EquivalentDomains","GlobalEquivalentDomains","GlobalDomainResponse","BusinessName","businessAddress1","BusinessAddress1","businessAddress2","BusinessAddress2","businessAddress3","BusinessAddress3","businessCountry","BusinessCountry","businessTaxNumber","BusinessTaxNumber","BillingEmail","Plan","seats","Seats","maxCollections","MaxCollections","UseGroups","useDirectory","UseDirectory","UseEvents","UseTotp","Use2fa","profileOrganizationResponse_1","emailVerified","EmailVerified","MasterPasswordHint","Premium","culture","Culture","twoFactorEnabled","TwoFactorEnabled","Key","PrivateKey","securityStamp","SecurityStamp","Organizations","ProfileOrganizationResponse","AppIdService","makeAndGetAppId","getAnonymousAppId","existingId","guid","throttle_1","hashStart","hashEnding","leakedHashes","v","__decorate","throttle","ɵ0","cipherBulkDeleteRequest_1","cipherBulkMoveRequest_1","cipherBulkShareRequest_1","cipherShareRequest_1","sequentialize_1","DomainMatchBlacklist","Set","_decryptedCipherCache","indexCiphers","clearCache","decryptedCipherCache","existingCipher","hasFields","existingHiddenFields","Hidden","hiddenFields_1","ef","matchedField","encryptObjProperty","encryptCipherData","encryptFields","encryptPasswordHistories","encryptAttachments","attachmentsModel","encAttachments","fieldsModel","encFields","encryptField","encField","fieldModel","Boolean","phModels","encPhs","encryptPasswordHistory","encPh","phModel","getAll","decCiphers","getLocaleSortingFunction","getAllDecryptedForGrouping","groupingId","getAllDecryptedForUrl","includeOtherTypes","eqDomainsPromise","getEquivalentDomains","eqDomains","matches","eqDomain","matchingDomains","defaultMatch","domainUrlHost","Host","urlHost","Exact","StartsWith","Never","decCiphers_1","promises_1","getLastUsedForUrl","sortCiphersByLastUsed","updateLastUsedDate","ciphersLocalData","cached","saveNeverDomain","saveWithServer","upsert","shareWithServer","attachmentPromises","shareAttachmentWithServer","encCipher","CipherShareRequest","encCiphers","ciphers_1","CipherBulkShareRequest","unencryptedFile","admin","readAsArrayBuffer","saveAttachmentRawWithServer","cData","filename","encFileName","dataEncKey","encryptToBytes","encData","blob","Blob","filepath","contentType","getSingleMessage","saveCollectionsWithServer","ids","CipherBulkMoveRequest","CipherBulkDeleteRequest","deleteAttachment","deleteAttachmentWithServer","e_3","aLastUsed","bLastUsed","sortCiphersByLastUsedThenName","aName","bName","attachmentView","attachmentResponse","arrayBuffer","buf","decryptFromBytes","decBuf","e_4","theObj","modelProp","sequentialize","propertyKey","descriptor","originalMethod","caches","args","arguments","getCache","argsCacheKey","finally","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","clearPinProtectedKey","toggleKey","option","salt","pbkdf2","randomBytes","rsaGenerateKeyPair","publicB64","privateEnc","makePinKey","pin","pinKey","getKeyForEncryption","theKey","buildEncKey","plainValue","plainBuf","aesEncrypt","encObj","encValue","macLen","encBytes","cipherString","aesDecryptToBytes","decipher","aesDecryptToUtf8","encBuf","ctBytes","ivBytes","macBytes","randomNumber","min","rval","range","bitsNeeded","ceil","log2","bytesNeeded","mask","pow","byteArray","EncryptedObject","macData","hmac","keyForEnc","resolveLegacyKey","fastParams","aesDecryptFastParameters","hmacFast","computedMac","compareFast","aesDecryptFast","aesDecrypt","Rsa2048_OaepSha256_HmacSha256_B64","Rsa2048_OaepSha1_HmacSha256_B64","alg","prk","info","hashLen","okm","previousT","minimumEntropy","entropyPerWord","EEFLongWordList","numWords","hashArr","entropyAvailable","phrase","hashNumber","fromArray","remainder","divide","encKeyEnc","environmentUrls_1","getWebVaultUrl","webVaultUrl","setUrlsFromStorage","urlsObj","icons","notifications","webVault","envUrls","EnvironmentUrls","apiUrl","identityUrl","notificationsUrl","formatUrl","folderData_1","folder_1","folderRequest_1","decryptedFolderCache","Folder","decFolders","noneFolder","folderCopy","FolderData","cId","updates","systemLanguage","localesDirectory","getLocalesJson","defaultMessages","localeMessages","translationLocale","Intl","Collator","numeric","sensitivity","loadMessages","translate","messagesObj","formattedLocale","locales","placeholders","placeProp","replaceToken","replaceContent","lockedCallback","pinLocked","checkOnInterval","checkLock","isLocked","isViewOpen","lockTimeout","lastActive","lockOptionSeconds","allowSoftLock","isPinLockSet","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","item","decrypted","array","settingsCache","getSettingsKey","setEquivalentDomains","setSettingsKey","getSettings","settings","purge","organizationData_1","syncInProgress","getLastSync","lastSync","toJSON","forceSync","syncStarted","needsSyncing","syncCompleted","needsSyncResult","needsSync","syncProfile","syncFolders","syncCollections","syncCiphers","syncSettings","syncUpsertFolder","notification","isEdit","localFolder","remoteFolder","syncDeleteFolder","syncUpsertCipher","shouldUpdate","localCipher","checkCollections","remoteCipher","syncDeleteCipher","getSecurityStamp","stamp","setSecurityStamp","OrganizationData","replaceOrganizations","setToken","setRefreshToken","decoded","getTokenExpirationDate","setUTCSeconds","tokenSecondsRemaining","offsetSeconds","msRemaining","valueOf","minutes","sub","email_verified","getIssuer","iss","B32Chars","SteamChars","period","digits","keyB32","isOtpAuth","isSteamAuth","digitParams","periodParam","algParam","timeHex","leftPad","decToHex","timeBytes","keyBytes","b32ToBytes","sign","offset","otp","fullCode","trunc","isAutoCopyEnabled","b32ToHex","cleanedInput","bits","hex","byteIndex","chunk","signature","organization_1","clearOrganizations","usersGetPremium","Organization","CipherWithIds","build","CollectionWithId","FolderWithId","NotificationType","AuthGuardService","canActivate","OrganizationGuardService","isOwner","OrganizationTypeGuardService","allowedTypes","UnauthGuardService","enableProdMode","__NgCli_bootstrap_2","platformBrowser","bootstrapModuleFactory","__NgCli_bootstrap_1","AppModuleNgFactory","preserveWhitespaces","common_1","ca_1","cs_1","da_1","de_1","en_GB_1","es_1","et_1","fr_1","it_1","ja_1","nb_1","nl_1","pl_1","pt_1","pt_PT_1","ru_1","sk_1","sv_1","uk_1","zh_Hans_1","zh_Hant_1","registerLocaleData","AppModule","subscribers","messageCallback","RouterOutlet","ChildrenOutletContexts","ComponentFactoryResolver","fa-eye","fa-eye-slash","CheckboxControlValueAccessor","currVal_38","showPassword","rememberEmail","currVal_58","currVal_22","currVal_36","currVal_52","currVal_54","currVal_55","currVal_60","twoFactorRoute","onSuccessfulLoginTwoFactorNavigate","onSuccessfulLogin","togglePassword","twoFactorEmail","View_TwoFactorComponent_5","View_TwoFactorComponent_2","View_TwoFactorComponent_3","appAutofocus","View_TwoFactorComponent_4","View_TwoFactorComponent_8","View_TwoFactorComponent_9","u2fReady","col-9","View_TwoFactorComponent_1","View_TwoFactorComponent_6","View_TwoFactorComponent_7","View_TwoFactorComponent_10","View_TwoFactorComponent_11","View_TwoFactorComponent_12","View_TwoFactorComponent_13","View_TwoFactorComponent_14","View_TwoFactorComponent_15","choose","recover","backdrop","className","DuoWebSDK","u2f_1","loginRoute","customWebVaultUrl","cleanupU2f","Challenge","challenges","Challenges","keyHandle","iframe","sig_request","Signature","submit_callback","sig","stop","doToast","cleanup","getDeviceString","identifier","pushToken","clientId","scope","deviceIdentifier","deviceName","twoFactorRemember","successCallback","errorCallback","infoCallback","parseFunction","parseMessage","connectorLink","base64Encode","sendMessage","contentWindow","postMessage","removeEventListener","validMessage","origin","View_RegisterComponent_1","i11","View_PasswordStrengthComponent_0","RenderType_PasswordStrengthComponent","i12","View_RegisterComponent_2","confirmMasterPassword","currVal_73","hint","currVal_37","currVal_57","currVal_71","currVal_74","currVal_84","currVal_86","currVal_87","currVal_91","registerRequest_1","useLowerKdf","isEdge","isIE","RegisterRequest","orgInvite","confirmField","currVal_31","passwordHintRequest_1","PasswordHintRequest","onSuccessfulSubmit","currVal_7","pinLock","invalidPinAttempts","pinSet","failed","decPin","doContinue","protectedKeyCs","decKey","setKeyAndContinue","storedKeyHash","View_AcceptOrganizationComponent_1","View_AcceptOrganizationComponent_2","currVal_19","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","currVal_16","currVal_18","currVal_21","setLoaded","collapsedGroupings","clearSelections","selectFavorites","selectType","selectFolder","selectCollection","idPrefix","View_CiphersComponent_7","View_CiphersComponent_4","View_IconComponent_0","RenderType_IconComponent","View_CiphersComponent_5","View_CiphersComponent_6","View_CiphersComponent_8","View_CiphersComponent_9","View_CiphersComponent_10","View_CiphersComponent_11","View_CiphersComponent_3","View_CiphersComponent_15","View_CiphersComponent_13","View_CiphersComponent_14","View_CiphersComponent_2","View_CiphersComponent_12","View_CiphersComponent_1","FallbackSrcDirective","onError","appFallbackSrc","activeCipherId","onCipherRightClicked","onAddCipherOptions","searchTimeout","searchCiphers","rightClickCipher","addCipherOptions","onCancelled","onEditAttachments","onShareCipher","onEditCollections","onGeneratePassword","showCardCode","fieldType","addFieldType","ownershipOptions","typeOptions","cardBrandOptions","identityTitleOptions","addFieldTypeOptions","uriMatchOptions","myEmail","organizationChanged","addUri","removeUri","addField","removeField","trackByFunction","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","currVal_45","currVal_46","View_ProfileComponent_1","View_ProfileComponent_2","View_ChangeEmailComponent_1","View_ChangeEmailComponent_2","View_ChangeEmailComponent_3","View_ChangeEmailComponent_4","currVal_61","currVal_63","currVal_64","View_ChangeKdfComponent_1","currVal_50","currVal_51","View_OptionsComponent_1","View_OptionsComponent_2","currVal_33","currVal_43","currVal_44","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","currVal_32","currVal_35","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","View_UserBillingComponent_28","View_UserBillingComponent_29","View_UserBillingComponent_27","View_UserBillingComponent_33","View_UserBillingComponent_34","View_UserBillingComponent_35","text-strike","Charge","Refund","View_UserBillingComponent_32","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","View_UserBillingComponent_30","View_UserBillingComponent_31","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","currVal_34","currVal_39","View_CreateOrganizationComponent_3","View_CreateOrganizationComponent_4","View_CreateOrganizationComponent_5","View_CreateOrganizationComponent_6","mt-4","currVal_97","currVal_65","currVal_66","currVal_67","currVal_68","currVal_69","currVal_70","currVal_82","currVal_83","currVal_85","currVal_88","currVal_89","currVal_90","currVal_92","currVal_93","currVal_94","currVal_95","currVal_99","currVal_100","View_CreateOrganizationComponent_1","View_CreateOrganizationComponent_2","View_ToolsComponent_1","View_ToolsComponent_2","currVal_47","View_ImportComponent_3","View_ImportComponent_18","View_ImportComponent_5","View_ImportComponent_6","View_ImportComponent_7","View_ImportComponent_8","View_ImportComponent_9","View_ImportComponent_10","View_ImportComponent_11","View_ImportComponent_12","View_ImportComponent_13","View_ImportComponent_14","View_ImportComponent_15","View_ImportComponent_16","View_ImportComponent_17","View_ImportComponent_19","View_ImportComponent_20","View_ImportComponent_21","View_ImportComponent_22","View_ImportComponent_23","View_ImportComponent_24","View_ImportComponent_25","View_ImportComponent_26","View_ImportComponent_27","View_ImportComponent_28","View_ImportComponent_29","View_ImportComponent_30","View_ImportComponent_31","View_ImportComponent_32","View_ImportComponent_33","View_ImportComponent_34","View_ImportComponent_35","View_ImportComponent_36","View_ImportComponent_37","View_ImportComponent_38","View_ImportComponent_39","View_ImportComponent_40","View_ImportComponent_41","View_ImportComponent_42","View_ImportComponent_43","View_ImportComponent_44","View_ImportComponent_1","View_ImportComponent_2","View_ImportComponent_4","onSaved","downloadFile","getExport","prefix","csv","MaxLengthValidator","maxlength","avoidAmbiguous","View_PasswordGeneratorComponent_1","View_PasswordGeneratorComponent_2","View_PasswordGeneratorComponent_3","showSelect","onSelected","sliderChanged","sliderInput","normalizeOptions","regenerate","copyOptions","toggleOptions","View_BreachReportComponent_8","dataClasses","logoPath","pwnCount","breachDate","addedDate","View_BreachReportComponent_7","View_BreachReportComponent_4","View_BreachReportComponent_5","View_BreachReportComponent_6","View_BreachReportComponent_2","View_BreachReportComponent_3","View_BreachReportComponent_1","View_ReusedPasswordsReportComponent_7","View_ReusedPasswordsReportComponent_8","View_ReusedPasswordsReportComponent_6","View_ReusedPasswordsReportComponent_4","View_ReusedPasswordsReportComponent_5","View_ReusedPasswordsReportComponent_1","View_ReusedPasswordsReportComponent_2","View_ReusedPasswordsReportComponent_3","View_ReusedPasswordsReportComponent_9","View_UnsecuredWebsitesReportComponent_7","View_UnsecuredWebsitesReportComponent_8","View_UnsecuredWebsitesReportComponent_6","View_UnsecuredWebsitesReportComponent_4","View_UnsecuredWebsitesReportComponent_5","View_UnsecuredWebsitesReportComponent_1","View_UnsecuredWebsitesReportComponent_2","View_UnsecuredWebsitesReportComponent_3","View_UnsecuredWebsitesReportComponent_9","View_WeakPasswordsReportComponent_7","View_WeakPasswordsReportComponent_8","View_WeakPasswordsReportComponent_6","View_WeakPasswordsReportComponent_4","View_WeakPasswordsReportComponent_5","View_WeakPasswordsReportComponent_1","View_WeakPasswordsReportComponent_2","View_WeakPasswordsReportComponent_3","View_WeakPasswordsReportComponent_9","View_ExposedPasswordsReportComponent_5","View_ExposedPasswordsReportComponent_6","View_ExposedPasswordsReportComponent_4","View_ExposedPasswordsReportComponent_2","View_ExposedPasswordsReportComponent_3","View_ExposedPasswordsReportComponent_1","View_ExposedPasswordsReportComponent_7","View_InactiveTwoFactorReportComponent_7","View_InactiveTwoFactorReportComponent_8","View_InactiveTwoFactorReportComponent_9","View_InactiveTwoFactorReportComponent_6","View_InactiveTwoFactorReportComponent_4","View_InactiveTwoFactorReportComponent_5","View_InactiveTwoFactorReportComponent_1","View_InactiveTwoFactorReportComponent_2","View_InactiveTwoFactorReportComponent_3","View_InactiveTwoFactorReportComponent_10","View_OrganizationLayoutComponent_4","View_OrganizationLayoutComponent_5","View_OrganizationLayoutComponent_2","View_OrganizationLayoutComponent_3","isManager","View_OrganizationLayoutComponent_1","View_ManageComponent_2","View_ManageComponent_3","View_ManageComponent_4","View_ManageComponent_1","View_CollectionsComponent_5","View_CollectionsComponent_3","View_CollectionsComponent_4","View_CollectionsComponent_1","View_CollectionsComponent_2","View_CollectionsComponent_6","View_CollectionsComponent_7","View_EventsComponent_5","View_EventsComponent_3","View_EventsComponent_4","View_EventsComponent_6","fa-spin","View_EventsComponent_1","View_EventsComponent_2","View_GroupsComponent_5","View_GroupsComponent_3","View_GroupsComponent_4","View_GroupsComponent_1","View_GroupsComponent_2","View_GroupsComponent_6","View_GroupsComponent_7","invitedCount","View_PeopleComponent_9","View_PeopleComponent_10","View_PeopleComponent_11","View_PeopleComponent_12","View_PeopleComponent_13","View_PeopleComponent_14","View_PeopleComponent_15","View_PeopleComponent_16","View_PeopleComponent_17","View_PeopleComponent_18","View_PeopleComponent_19","View_PeopleComponent_20","Owner","Admin","Manager","View_PeopleComponent_7","View_PeopleComponent_8","showConfirmUsers","View_PeopleComponent_5","View_PeopleComponent_6","View_PeopleComponent_1","View_PeopleComponent_2","View_PeopleComponent_3","View_PeopleComponent_4","View_PeopleComponent_21","View_PeopleComponent_22","View_PeopleComponent_23","View_PeopleComponent_24","View_AccountComponent_4","View_OrganizationBillingComponent_8","isExpired","View_OrganizationBillingComponent_7","View_OrganizationBillingComponent_9","View_OrganizationBillingComponent_12","View_OrganizationBillingComponent_14","View_OrganizationBillingComponent_11","View_OrganizationBillingComponent_13","View_OrganizationBillingComponent_16","View_AdjustSeatsComponent_0","RenderType_AdjustSeatsComponent","View_OrganizationBillingComponent_21","View_OrganizationBillingComponent_22","View_OrganizationBillingComponent_24","View_OrganizationBillingComponent_25","View_OrganizationBillingComponent_28","View_OrganizationBillingComponent_34","View_OrganizationBillingComponent_35","View_OrganizationBillingComponent_33","View_OrganizationBillingComponent_39","View_OrganizationBillingComponent_40","View_OrganizationBillingComponent_41","View_OrganizationBillingComponent_38","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","View_OrganizationBillingComponent_36","View_OrganizationBillingComponent_37","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","currVal_106","currVal_116","currVal_126","currVal_136","currVal_146","currVal_156","currVal_166","currVal_176","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_bh","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","currVal_81","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","AddedDate","BreachDate","DataClasses","isActive","IsActive","isVerified","IsVerified","LogoPath","modifiedDate","ModifiedDate","PwnCount","Title","FileName","Size","SizeName","LastUsedDate","CardholderName","Brand","ExpMonth","ExpYear","Code","Value","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","messages","lastSep","lastIndexOf","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","throttleKey","allThrottles","throttles","getThrottles","argsThrottleKey","queue","exec","filePath","store","browserCache","chrome","isFirefox","isChrome","isOpera","isVivaldi","isSafari","isMacAppStore","analyticsId","rel","blobData","blobOptions","fileNameLower","doDownload","endsWith","msSaveOrOpenBlob","msSaveBlob","createObjectURL","position","confirmText","cancelText","buttons","contentDiv","titleDiv","createTextNode","textDiv","button","clipboardData","setData","queryCommandSupported","textarea","copyEl","execCommand","GaObj","AnalyticsIds","gaFilter","dependencyResolver","gaTrackingId","defaultDisabled","deps","appVersion","GoogleAnalyticsObject","param1","param2","ga","disabled","gaAnonAppId","gaTrackPageView","hitType","page","gaTrackEvent","XMLHttpRequest","eventCategory","eventAction","eventLabel","eventValue","cleanPagePath","pagePath","paramIndex","pathParts","newPathParts","cipherWithIds_1","collectionWithId_1","folderWithId_1","foldersMap_1","exportCiphers_1","buildCommonCipher","unparse","jsonDoc_1","collectionPromises","decCol","cipherPromises","decCipher","collectionsMap_1","exportCiphers_2","jsonDoc_2","extension","padNumber","getSeconds","padCharacter","numString","login_uri","login_username","login_password","login_totp","template","toView","importCiphersRequest_1","importOrganizationCiphersRequest_1","kvpRequest_1","ascendoCsvImporter_1","avastCsvImporter_1","aviraCsvImporter_1","bitwardenCsvImporter_1","bitwardenJsonImporter_1","blurCsvImporter_1","chromeCsvImporter_1","clipperzHtmlImporter_1","dashlaneJsonImporter_1","enpassCsvImporter_1","enpassJsonImporter_1","firefoxCsvImporter_1","fsecureFskImporter_1","gnomeJsonImporter_1","kasperskyTxtImporter_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","rememBearCsvImporter_1","roboformCsvImporter_1","safeInCloudXmlImporter_1","saferpassCsvImport_1","splashIdCsvImporter_1","stickyPasswordXmlImporter_1","truekeyCsvImporter_1","upmCsvImporter_1","zohoVaultCsvImporter_1","getImportOptions","importResult","halfway","last","badData","postImport","getImporterInstance","BitwardenCsvImporter","BitwardenJsonImporter","LastPassCsvImporter","KeePassXCsvImporter","AviraCsvImporter","BlurCsvImporter","SafeInCloudXmlImporter","PadlockCsvImporter","KeePass2XmlImporter","ChromeCsvImporter","FirefoxCsvImporter","UpmCsvImporter","SaferPassCsvImporter","MeldiumCsvImporter","OnePassword1PifImporter","OnePasswordWinCsvImporter","KeeperCsvImporter","PasswordDragonXmlImporter","EnpassCsvImporter","EnpassJsonImporter","PasswordSafeXmlImporter","DashlaneJsonImporter","MSecureCsvImporter","StickyPasswordXmlImporter","TrueKeyCsvImporter","ClipperzHtmlImporter","RoboFormCsvImporter","AscendoCsvImporter","PasswordBossJsonImporter","ZohoVaultCsvImporter","SplashIdCsvImporter","PassKeepCsvImporter","GnomeJsonImporter","PasswordAgentCsvImporter","PasspackCsvImporter","PassmanJsonImporter","AvastCsvImporter","FSecureFskImporter","KasperskyTxtImporter","RememBearCsvImporter","ImportCiphersRequest","KvpRequest","request_2","ImportOrganizationCiphersRequest","baseImporter_1","importResult_1","fieldLower","web","website","secondary_username","col","addCollection","collectionIndex","delimPosition","groupingsMap","errorMessage","entry","currentVersion","actionType","labelLower","HandledResults","ADDRESS","processAddress","AUTHENTIFIANT","processAuth","BANKSTATEMENT","processNote","IDCARD","PAYMENTMEANS_CREDITCARD","processCard","IDENTITY","processIdentity","credential","secondaryLogin","note","fullName","nameParts","pseudo","addressName","addressFull","zipcode","cardNumber","owner","nameProperty","firstRow","containsField","fieldValue","fieldName","fieldNameLower","template_type","processLogin","creditNumber","creditCvv","creditExpiry","keyRing","display_name","secret","attributes","attr","username_value","notesData","applicationsData","websitesData","workingData","parseDataCategory","applications","websites","nameKey","itemComment","itemCommentKey","colonIndex","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","DisplayName","UserName","line","processStandardItem","processWinOpVaultItem","overview","URLs","urls_1","cvv","notesPlain","parseFields","sections","section","openContents","faveIndex","typeName","secureContents","urls_2","designationKey","valueKey","fieldDesignation","view_1","IgnoredProperties","altUsername","View","tags","tag","getValue","custom_fields","customField","field_type","tagsJson","Tags","tagJson","__parsed_extra","fieldsJson","extraFields","fieldJson","login_url","identifiers","valObj","expDate","records","record","categoryText","accountName","passwordSafe","notesDelimiter","getAttribute","entries","groupText","trash","cardholder","verification","expiryMonth","expMonthNumber","expiryYear","expYearNumber","zipCode","Note","Pwd","Rf_fields","foldersMap","labelEl","cardEl","labelIdEl","labelId","fieldEl","notesEl","parseFieldsToNotes","startIndex","loginNodes","loginNode","accountId","usernameText","passwordText","titleText","linkText","notesText","accountLogin","account","parentElement","buildGroupText","PropertiesToIgnore","memo","kind","expiryDate","document_content","ChamberName","parseData","SecretData","CustomData","signalR","signalRMsgPack","notificationType_1","notificationResponse_1","connected","inactive","reconnectTimer","signalrConnection","off","HubConnectionBuilder","withUrl","accessTokenFactory","withHubProtocol","MessagePackHubProtocol","processNotification","NotificationResponse","onclose","reconnect","isAuthedAndUnlocked","sync","contextId","payloadUserId","myUserId","SyncCipherCreate","SyncCipherUpdate","SyncCipherDelete","SyncLoginDelete","SyncFolderCreate","SyncFolderUpdate","SyncFolderDelete","SyncVault","SyncCiphers","SyncSettings","SyncOrgKeys","LogOut","ContextId","Payload","SyncCipherNotification","SyncFolderNotification","UserNotification","lunr","indexing","onlySearchName","isSearchable","time","builder","Builder","boost","extractor","uriExtractor","fieldExtractor","attachmentExtractor","timeEnd","getIndexForSearch","ciphersMap","searchResults","soWild_1","Query","wildcard","LEADING","TRAILING","q","tokenizer","term","joined","protocolIndex","queryIndex","forge","decryptParameters_1","crypto","subtle","ua","isOldSafari","algorithm","iterations","forgeLen","passwordBytes","toByteString","saltBytes","derivedKeyBytes","wcLen","passwordBuf","toBuf","saltBuf","pbkdf2Params","toWebCryptoAlgorithm","importKey","impKey","deriveBits","md","md5","sha1","valueBytes","digest","valueBuf","signingAlgorithm","mac1","mac2","arr1","arr2","getBytes","rand","Uint32Array","util","createBuffer","putInt32","DecryptParameters","meta","encKeyByteString","macKeyByteString","decode64","parameters","dataBuffer","createDecipher","finish","rsaParams","impPrivateKey","exportKey","jwkPrivateKey","jwkPublicKeyParams","kty","ext","impPublicKey","modulusLength","publicExponent","generateKey","getRandomValues","encodeUtf8","frontend_layout_component_1","organization_layout_component_1","user_layout_component_1","accept_organization_component_1","hint_component_1","lock_component_1","login_component_1","recover_delete_component_1","recover_two_factor_component_1","register_component_1","two_factor_component_1","verify_email_token_component_1","verify_recover_delete_component_1","events_component_1","groups_component_1","manage_component_1","people_component_1","account_component_1","organization_billing_component_1","settings_component_1","two_factor_setup_component_1","export_component_1","exposed_passwords_report_component_1","import_component_1","inactive_two_factor_report_component_1","reused_passwords_report_component_1","tools_component_1","unsecured_websites_report_component_1","weak_passwords_report_component_1","vault_component_1","account_component_2","create_organization_component_1","domain_rules_component_1","options_component_1","organizations_component_1","premium_component_1","settings_component_2","two_factor_setup_component_2","user_billing_component_1","breach_report_component_1","export_component_2","exposed_passwords_report_component_2","import_component_2","inactive_two_factor_report_component_2","reused_passwords_report_component_2","tools_component_2","unsecured_websites_report_component_2","weak_passwords_report_component_2","vault_component_2","organization_guard_service_1","organization_type_guard_service_1","unauth_guard_service_1","auth_guard_service_1","ɵ5","ɵ30","ɵ31","ɵ32","ɵ33","ɵ34","ɵ35","ɵ36","ɵ37","ɵ38","ɵ39","ɵ40","ɵ41","AppRoutingModule"],"mappings":"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A7xB,mBAAmBC,GAASk3C,UA3lB5CrP,EAAA,CADCO,EAAA0G,cAAa/G,qHA2EdF,EAAA,CADCO,EAAA0G,cAAakC,sHAohBlB/5E,EA5qBA,GAAapE,EAAAoE,+FC3BApE,EAAA4jF,gBAAkB,CAC3B,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,EAAA1kF,EAAA,KAEAiX,EAAAjX,EAAA,IAOA4U,EAAA,WAQI,SAAAA,EAAoB8S,EAAgCiY,EACxC4wB,GADQhuD,KAAAmlB,aAAgCnlB,KAAAo9B,iBACxCp9B,KAAAguD,uBAyFhB,OAvFI37C,EAAA3V,UAAA0lF,eAAA,WACI,OAAwB,MAApBpiF,KAAKqiF,YACEriF,KAAKqiF,YACLriF,KAAKsV,QACLtV,KAAKsV,QAET,MAGLjD,EAAA3V,UAAA4lF,mBAAN,6GACyB,SAAMtiF,KAAKo9B,eAAe5+B,IAAIkW,EAAAnC,iBAAiBC,4BAYpE,OAZM+vE,EAAepzE,EAAAsG,OACfuuD,EAAOue,GAAW,CACpBte,KAAM,KACNE,IAAK,KACLzpD,SAAU,KACV8nE,MAAO,KACPC,cAAe,KACfC,SAAU,MAGRC,EAAU,IAAIR,EAAAS,gBAEhB5e,EAAKC,MACLjkE,KAAKsV,QAAUqtE,EAAQ1e,KAAOD,EAAKC,KACnCjkE,KAAKmlB,WAAW4+C,QAAQ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","file":"app/main.24b12cf2806f2044ae5c.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\t0: 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([673,2]);\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';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\nimport { EmailRequest } from '../models/request/emailRequest';\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { GroupRequest } from '../models/request/groupRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KdfRequest } from '../models/request/kdfRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\nimport { PasswordRequest } from '../models/request/passwordRequest';\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\nimport { PaymentRequest } from '../models/request/paymentRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { RegisterRequest } from '../models/request/registerRequest';\nimport { SeatRequest } from '../models/request/seatRequest';\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\nimport { StorageRequest } from '../models/request/storageRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\n\nimport { BillingResponse } from '../models/response/billingResponse';\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport {\n CollectionGroupDetailsResponse,\n CollectionResponse,\n} from '../models/response/collectionResponse';\nimport { DomainsResponse } from '../models/response/domainsResponse';\nimport { EventResponse } from '../models/response/eventResponse';\nimport { FolderResponse } from '../models/response/folderResponse';\nimport {\n GroupDetailsResponse,\n GroupResponse,\n} from '../models/response/groupResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\nimport { ListResponse } from '../models/response/listResponse';\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\nimport { OrganizationResponse } from '../models/response/organizationResponse';\nimport {\n OrganizationUserDetailsResponse,\n OrganizationUserUserDetailsResponse,\n} from '../models/response/organizationUserResponse';\nimport { PreloginResponse } from '../models/response/preloginResponse';\nimport { ProfileResponse } from '../models/response/profileResponse';\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\nimport { SyncResponse } from '../models/response/syncResponse';\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from '../models/response/twoFactorU2fResponse';\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\n\nexport abstract class ApiService {\n urlsSet: boolean;\n apiBaseUrl: string;\n identityBaseUrl: string;\n\n setUrls: (urls: EnvironmentUrls) => void;\n postIdentityToken: (request: TokenRequest) => Promise;\n refreshIdentityToken: () => Promise;\n\n getProfile: () => Promise;\n getUserBilling: () => Promise;\n putProfile: (request: UpdateProfileRequest) => Promise;\n postPrelogin: (request: PreloginRequest) => Promise;\n postEmailToken: (request: EmailTokenRequest) => Promise;\n postEmail: (request: EmailRequest) => Promise;\n postPassword: (request: PasswordRequest) => Promise;\n postSecurityStamp: (request: PasswordVerificationRequest) => Promise;\n deleteAccount: (request: PasswordVerificationRequest) => Promise;\n getAccountRevisionDate: () => Promise;\n postPasswordHint: (request: PasswordHintRequest) => Promise;\n postRegister: (request: RegisterRequest) => Promise;\n postPremium: (data: FormData) => Promise;\n postReinstatePremium: () => Promise;\n postCancelPremium: () => Promise;\n postAccountStorage: (request: StorageRequest) => Promise;\n postAccountPayment: (request: PaymentRequest) => Promise;\n postAccountLicense: (data: FormData) => Promise;\n postAccountKey: (request: UpdateKeyRequest) => Promise;\n postAccountKeys: (request: KeysRequest) => Promise;\n postAccountVerifyEmail: () => Promise;\n postAccountVerifyEmailToken: (request: VerifyEmailRequest) => Promise;\n postAccountRecoverDelete: (request: DeleteRecoverRequest) => Promise;\n postAccountRecoverDeleteToken: (request: VerifyDeleteRecoverRequest) => Promise;\n postAccountKdf: (request: KdfRequest) => Promise;\n\n getFolder: (id: string) => Promise;\n postFolder: (request: FolderRequest) => Promise;\n putFolder: (id: string, request: FolderRequest) => Promise;\n deleteFolder: (id: string) => Promise;\n\n getCipher: (id: string) => Promise;\n getCipherAdmin: (id: string) => Promise;\n getCiphersOrganization: (organizationId: string) => Promise>;\n postCipher: (request: CipherRequest) => Promise;\n postCipherCreate: (request: CipherCreateRequest) => Promise;\n postCipherAdmin: (request: CipherCreateRequest) => Promise;\n putCipher: (id: string, request: CipherRequest) => Promise;\n putCipherAdmin: (id: string, request: CipherRequest) => Promise;\n deleteCipher: (id: string) => Promise;\n deleteCipherAdmin: (id: string) => Promise;\n deleteManyCiphers: (request: CipherBulkDeleteRequest) => Promise;\n putMoveCiphers: (request: CipherBulkMoveRequest) => Promise;\n putShareCipher: (id: string, request: CipherShareRequest) => Promise;\n putShareCiphers: (request: CipherBulkShareRequest) => Promise;\n putCipherCollections: (id: string, request: CipherCollectionsRequest) => Promise;\n putCipherCollectionsAdmin: (id: string, request: CipherCollectionsRequest) => Promise;\n postPurgeCiphers: (request: PasswordVerificationRequest, organizationId?: string) => Promise;\n postImportCiphers: (request: ImportCiphersRequest) => Promise;\n postImportOrganizationCiphers: (organizationId: string, request: ImportOrganizationCiphersRequest) => Promise;\n\n postCipherAttachment: (id: string, data: FormData) => Promise;\n postCipherAttachmentAdmin: (id: string, data: FormData) => Promise;\n deleteCipherAttachment: (id: string, attachmentId: string) => Promise;\n deleteCipherAttachmentAdmin: (id: string, attachmentId: string) => Promise;\n postShareCipherAttachment: (id: string, attachmentId: string, data: FormData,\n organizationId: string) => Promise;\n\n getCollectionDetails: (organizationId: string, id: string) => Promise;\n getUserCollections: () => Promise>;\n getCollections: (organizationId: string) => Promise>;\n getCollectionUsers: (organizationId: string, id: string) => Promise;\n postCollection: (organizationId: string, request: CollectionRequest) => Promise;\n putCollectionUsers: (organizationId: string, id: string, request: SelectionReadOnlyRequest[]) => Promise;\n putCollection: (organizationId: string, id: string, request: CollectionRequest) => Promise;\n deleteCollection: (organizationId: string, id: string) => Promise;\n deleteCollectionUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\n\n getGroupDetails: (organizationId: string, id: string) => Promise;\n getGroups: (organizationId: string) => Promise>;\n getGroupUsers: (organizationId: string, id: string) => Promise;\n postGroup: (organizationId: string, request: GroupRequest) => Promise;\n putGroup: (organizationId: string, id: string, request: GroupRequest) => Promise;\n putGroupUsers: (organizationId: string, id: string, request: string[]) => Promise;\n deleteGroup: (organizationId: string, id: string) => Promise;\n deleteGroupUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\n\n getOrganizationUser: (organizationId: string, id: string) => Promise;\n getOrganizationUserGroups: (organizationId: string, id: string) => Promise;\n getOrganizationUsers: (organizationId: string) => Promise>;\n postOrganizationUserInvite: (organizationId: string, request: OrganizationUserInviteRequest) => Promise;\n postOrganizationUserReinvite: (organizationId: string, id: string) => Promise;\n postOrganizationUserAccept: (organizationId: string, id: string,\n request: OrganizationUserAcceptRequest) => Promise;\n postOrganizationUserConfirm: (organizationId: string, id: string,\n request: OrganizationUserConfirmRequest) => Promise;\n putOrganizationUser: (organizationId: string, id: string, request: OrganizationUserUpdateRequest) => Promise;\n putOrganizationUserGroups: (organizationId: string, id: string,\n request: OrganizationUserUpdateGroupsRequest) => Promise;\n deleteOrganizationUser: (organizationId: string, id: string) => Promise;\n\n getSync: () => Promise;\n postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise;\n\n getSettingsDomains: () => Promise;\n putSettingsDomains: (request: UpdateDomainsRequest) => Promise;\n\n getTwoFactorProviders: () => Promise>;\n getTwoFactorOrganizationProviders: (organizationId: string) => Promise>;\n getTwoFactorAuthenticator: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorEmail: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorDuo: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorOrganizationDuo: (organizationId: string,\n request: PasswordVerificationRequest) => Promise;\n getTwoFactorYubiKey: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorU2f: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorU2fChallenge: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorRecover: (request: PasswordVerificationRequest) => Promise;\n putTwoFactorAuthenticator: (\n request: UpdateTwoFactorAuthenticatorRequest) => Promise;\n putTwoFactorEmail: (request: UpdateTwoFactorEmailRequest) => Promise;\n putTwoFactorDuo: (request: UpdateTwoFactorDuoRequest) => Promise;\n putTwoFactorOrganizationDuo: (organizationId: string,\n request: UpdateTwoFactorDuoRequest) => Promise;\n putTwoFactorYubiKey: (request: UpdateTwoFactorYubioOtpRequest) => Promise;\n putTwoFactorU2f: (request: UpdateTwoFactorU2fRequest) => Promise;\n deleteTwoFactorU2f: (request: UpdateTwoFactorU2fDeleteRequest) => Promise;\n putTwoFactorDisable: (request: TwoFactorProviderRequest) => Promise;\n putTwoFactorOrganizationDisable: (organizationId: string,\n request: TwoFactorProviderRequest) => Promise;\n postTwoFactorRecover: (request: TwoFactorRecoveryRequest) => Promise;\n postTwoFactorEmailSetup: (request: TwoFactorEmailRequest) => Promise;\n postTwoFactorEmail: (request: TwoFactorEmailRequest) => Promise;\n\n getOrganization: (id: string) => Promise;\n getOrganizationBilling: (id: string) => Promise;\n getOrganizationLicense: (id: string, installationId: string) => Promise;\n postOrganization: (request: OrganizationCreateRequest) => Promise;\n putOrganization: (id: string, request: OrganizationUpdateRequest) => Promise;\n postLeaveOrganization: (id: string) => Promise;\n postOrganizationLicense: (data: FormData) => Promise;\n postOrganizationLicenseUpdate: (id: string, data: FormData) => Promise;\n postOrganizationSeat: (id: string, request: SeatRequest) => Promise;\n postOrganizationStorage: (id: string, request: StorageRequest) => Promise;\n postOrganizationPayment: (id: string, request: PaymentRequest) => Promise;\n postOrganizationVerifyBank: (id: string, request: VerifyBankRequest) => Promise;\n postOrganizationCancel: (id: string) => Promise;\n postOrganizationReinstate: (id: string) => Promise;\n deleteOrganization: (id: string, request: PasswordVerificationRequest) => Promise;\n\n getEvents: (start: string, end: string, token: string) => Promise>;\n getEventsCipher: (id: string, start: string, end: string, token: string) => Promise>;\n getEventsOrganization: (id: string, start: string, end: string,\n token: string) => Promise>;\n getEventsOrganizationUser: (organizationId: string, id: string,\n start: string, end: string, token: string) => Promise>;\n\n getUserPublicKey: (id: string) => Promise;\n\n getHibpBreach: (username: string) => Promise;\n\n getActiveBearerToken: () => Promise;\n fetch: (request: Request) => Promise;\n}\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 { 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 { 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';\n\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { ErrorResponse } from '../../models/response/errorResponse';\n\n@Injectable()\nexport class ValidationService {\n constructor(private i18nService: I18nService, private platformUtilsService: PlatformUtilsService) { }\n\n showError(data: any): string[] {\n const defaultErrorMessage = this.i18nService.t('unexpectedError');\n let errors: string[] = [];\n\n if (data != null && typeof data === 'string') {\n errors.push(data);\n } else if (data == null || typeof data !== 'object') {\n errors.push(defaultErrorMessage);\n } else if (data.validationErrors != null) {\n errors = errors.concat((data as ErrorResponse).getAllMessages());\n } else {\n errors.push(data.message ? data.message : defaultErrorMessage);\n }\n\n if (errors.length === 1) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors[0]);\n } else if (errors.length > 1) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors, {\n timeout: 5000 * errors.length,\n });\n }\n\n return errors;\n }\n}\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\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 { CipherType } from '../enums/cipherType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Field } from '../models/domain/field';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\n\r\nexport abstract class CipherService {\r\n decryptedCipherCache: CipherView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CipherView, key?: SymmetricCryptoKey, originalCipher?: Cipher) => Promise;\r\n encryptFields: (fieldsModel: FieldView[], key: SymmetricCryptoKey) => Promise;\r\n encryptField: (fieldModel: FieldView, key: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllDecryptedForGrouping: (groupingId: string, folder?: boolean) => Promise;\r\n getAllDecryptedForUrl: (url: string, includeOtherTypes?: CipherType[]) => Promise;\r\n getAllFromApiForOrganization: (organizationId: string) => Promise;\r\n getLastUsedForUrl: (url: string) => Promise;\r\n updateLastUsedDate: (id: string) => Promise;\r\n saveNeverDomain: (domain: string) => Promise;\r\n saveWithServer: (cipher: Cipher) => Promise;\r\n shareWithServer: (cipher: CipherView, organizationId: string, collectionIds: string[]) => Promise;\r\n shareManyWithServer: (ciphers: CipherView[], organizationId: string, collectionIds: string[]) => Promise;\r\n saveAttachmentWithServer: (cipher: Cipher, unencryptedFile: any, admin?: boolean) => Promise;\r\n saveAttachmentRawWithServer: (cipher: Cipher, filename: string, data: ArrayBuffer,\r\n admin?: boolean) => Promise;\r\n saveCollectionsWithServer: (cipher: Cipher) => Promise;\r\n upsert: (cipher: CipherData | CipherData[]) => Promise;\r\n replace: (ciphers: { [id: string]: CipherData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n moveManyWithServer: (ids: string[], folderId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n deleteManyWithServer: (ids: string[]) => Promise;\r\n deleteAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteAttachmentWithServer: (id: string, attachmentId: string) => Promise;\r\n sortCiphersByLastUsed: (a: any, b: any) => number;\r\n sortCiphersByLastUsedThenName: (a: any, b: any) => number;\r\n getLocaleSortingFunction: () => (a: CipherView, b: CipherView) => number;\r\n}\r\n","import { 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 clearPinProtectedKey: () => 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 makePinKey: (pin: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\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) => 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","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 Utils.isNullOrWhitespace(str);\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 setCardExpiration(cipher: CipherView, expiration: string): boolean {\r\n if (!this.isNullOrWhitespace(expiration)) {\r\n const parts = expiration.split('/');\r\n if (parts.length === 2) {\r\n let month: string = null;\r\n let year: string = null;\r\n if (parts[0].length === 1 || parts[0].length === 2) {\r\n month = parts[0];\r\n if (month.length === 2 && month[0] === '0') {\r\n month = month.substr(1, 1);\r\n }\r\n }\r\n if (parts[1].length === 2 || parts[1].length === 4) {\r\n year = month.length === 2 ? '20' + parts[1] : parts[1];\r\n }\r\n if (month != null && year != null) {\r\n cipher.card.expMonth = month;\r\n cipher.card.expYear = year;\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\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","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","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","
\r\n

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

\r\n \r\n
\r\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 static tldEndingRegex = /.*\\.(com|net|org|edu|uk|gov|ca|de|jp|fr|au|ru|ch|io|es|us|co|xyz|info|ly|mil)$/;\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 let httpUrl = uriString.startsWith('http://') || uriString.startsWith('https://');\r\n if (!httpUrl && uriString.indexOf('://') < 0 && Utils.tldEndingRegex.test(uriString)) {\r\n uriString = 'http://' + uriString;\r\n httpUrl = true;\r\n }\r\n\r\n if (httpUrl) {\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 static isNullOrWhitespace(str: string): boolean {\r\n return str == null || typeof str !== 'string' || str.trim() === '';\r\n }\r\n\r\n private static validIpAddress(ipString: string): boolean {\r\n // tslint:disable-next-line\r\n const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;\r\n return ipRegex.test(ipString);\r\n }\r\n\r\n private static isMobile(win: Window) {\r\n let mobile = false;\r\n ((a) => {\r\n // tslint:disable-next-line\r\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) {\r\n mobile = true;\r\n }\r\n })(win.navigator.userAgent || win.navigator.vendor || (win as any).opera);\r\n return mobile || win.navigator.userAgent.match(/iPad/i) != null;\r\n }\r\n\r\n private static getUrl(uriString: string): URL {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n const hasProtocol = uriString.indexOf('://') > -1;\r\n if (!hasProtocol && uriString.indexOf('.') > -1) {\r\n uriString = 'http://' + uriString;\r\n } else if (!hasProtocol) {\r\n return null;\r\n }\r\n\r\n return Utils.getUrlObject(uriString);\r\n }\r\n\r\n private static getUrlObject(uriString: string): URL {\r\n try {\r\n if (nodeURL != null) {\r\n return nodeURL.URL ? new nodeURL.URL(uriString) : nodeURL.parse(uriString);\r\n } else if (typeof URL === 'function') {\r\n return new URL(uriString);\r\n } else if (window != null) {\r\n const anchor = window.document.createElement('a');\r\n anchor.href = uriString;\r\n return anchor as any;\r\n }\r\n } catch (e) { }\r\n\r\n return null;\r\n }\r\n}\r\n\r\nUtils.init();\r\n","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopClick]',\r\n})\r\nexport class StopClickDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.preventDefault();\r\n }\r\n}\n","import { CollectionData } from '../models/data/collectionData';\r\n\r\nimport { Collection } from '../models/domain/collection';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport abstract class CollectionService {\r\n decryptedCollectionCache: CollectionView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CollectionView) => Promise;\r\n decryptMany: (collections: Collection[]) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: (collections?: CollectionView[]) => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n upsert: (collection: CollectionData | CollectionData[]) => Promise;\r\n replace: (collections: { [id: string]: CollectionData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[appInputVerbatim]',\n})\nexport class InputVerbatimDirective {\n @Input() set appInputVerbatim(condition: boolean | string) {\n this.disableComplete = condition === '' || condition === true;\n }\n\n private disableComplete: boolean;\n\n constructor(private el: ElementRef, private renderer: Renderer2) { }\n\n ngOnInit() {\n if (this.disableComplete && !this.el.nativeElement.hasAttribute('autocomplete')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocomplete', 'off');\n }\n if (!this.el.nativeElement.hasAttribute('autocapitalize')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocapitalize', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('autocorrect')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocorrect', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('spellcheck')) {\n this.renderer.setAttribute(this.el.nativeElement, 'spellcheck', 'false');\n }\n if (!this.el.nativeElement.hasAttribute('inputmode')) {\n this.renderer.setAttribute(this.el.nativeElement, 'inputmode', 'verbatim');\n }\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport abstract class FolderService {\r\n decryptedFolderCache: FolderView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: FolderView, key?: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: () => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n saveWithServer: (folder: Folder) => Promise;\r\n upsert: (folder: FolderData | FolderData[]) => Promise;\r\n replace: (folders: { [id: string]: FolderData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n}\r\n","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","import { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nexport abstract class PasswordGenerationService {\r\n generatePassword: (options: any) => Promise;\r\n generatePassphrase: (options: any) => Promise;\r\n getOptions: () => any;\r\n saveOptions: (options: any) => Promise;\r\n getHistory: () => Promise;\r\n addHistory: (password: string) => Promise;\r\n clear: () => Promise;\r\n passwordStrength: (password: string, userInputs?: string[]) => zxcvbn.ZXCVBNResult;\r\n}\r\n","import {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport abstract class SyncService {\r\n syncInProgress: boolean;\r\n\r\n getLastSync: () => Promise;\r\n setLastSync: (date: Date) => Promise;\r\n fullSync: (forceSync: boolean) => Promise;\r\n syncUpsertFolder: (notification: SyncFolderNotification, isEdit: boolean) => Promise;\r\n syncDeleteFolder: (notification: SyncFolderNotification) => Promise;\r\n syncUpsertCipher: (notification: SyncCipherNotification, isEdit: boolean) => Promise;\r\n syncDeleteCipher: (notification: SyncFolderNotification) => Promise;\r\n}\r\n","export abstract class TokenService {\n token: string;\n decodedToken: any;\n refreshToken: string;\n setTokens: (accessToken: string, refreshToken: string) => Promise;\n setToken: (token: string) => Promise;\n getToken: () => Promise;\n setRefreshToken: (refreshToken: string) => Promise;\n getRefreshToken: () => Promise;\n setTwoFactorToken: (token: string, email: string) => Promise;\n getTwoFactorToken: (email: string) => Promise;\n clearTwoFactorToken: (email: string) => Promise;\n clearToken: () => Promise;\n decodeToken: () => any;\n getTokenExpirationDate: () => Date;\n tokenSecondsRemaining: (offsetSeconds?: number) => number;\n tokenNeedsRefresh: (minutes?: number) => boolean;\n getUserId: () => string;\n getEmail: () => string;\n getEmailVerified: () => boolean;\n getName: () => string;\n getPremium: () => boolean;\n getIssuer: () => string;\n}\n","export abstract class EnvironmentService {\r\n baseUrl: string;\r\n webVaultUrl: string;\r\n apiUrl: string;\r\n identityUrl: string;\r\n iconsUrl: string;\r\n notificationsUrl: string;\r\n\r\n getWebVaultUrl: () => string;\r\n setUrlsFromStorage: () => Promise;\r\n setUrls: (urls: any) => Promise;\r\n}\r\n","export class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\n","export class ConstantsService {\n static readonly environmentUrlsKey: string = 'environmentUrls';\n static readonly disableGaKey: string = 'disableGa';\n static readonly disableAddLoginNotificationKey: string = 'disableAddLoginNotification';\n static readonly disableChangedPasswordNotificationKey: string = 'disableChangedPasswordNotification';\n static readonly disableContextMenuItemKey: string = 'disableContextMenuItem';\n static readonly disableFaviconKey: string = 'disableFavicon';\n static readonly disableAutoTotpCopyKey: string = 'disableAutoTotpCopy';\n static readonly enableAutoFillOnPageLoadKey: string = 'enableAutoFillOnPageLoad';\n static readonly lockOptionKey: string = 'lockOption';\n static readonly lastActiveKey: string = 'lastActive';\n static readonly neverDomainsKey: string = 'neverDomains';\n static readonly installedVersionKey: string = 'installedVersion';\n static readonly localeKey: string = 'locale';\n static readonly themeKey: string = 'theme';\n static readonly collapsedGroupingsKey: string = 'collapsedGroupings';\n static readonly autoConfirmFingerprints: string = 'autoConfirmFingerprints';\n static readonly dontShowCardsCurrentTab: string = 'dontShowCardsCurrentTab';\n static readonly dontShowIdentitiesCurrentTab: string = 'dontShowIdentitiesCurrentTab';\n static readonly defaultUriMatch: string = 'defaultUriMatch';\n static readonly pinProtectedKey: string = 'pinProtectedKey';\n static readonly protectedPin: string = 'protectedPin';\n\n readonly environmentUrlsKey: string = ConstantsService.environmentUrlsKey;\n readonly disableGaKey: string = ConstantsService.disableGaKey;\n readonly disableAddLoginNotificationKey: string = ConstantsService.disableAddLoginNotificationKey;\n readonly disableContextMenuItemKey: string = ConstantsService.disableContextMenuItemKey;\n readonly disableFaviconKey: string = ConstantsService.disableFaviconKey;\n readonly disableAutoTotpCopyKey: string = ConstantsService.disableAutoTotpCopyKey;\n readonly enableAutoFillOnPageLoadKey: string = ConstantsService.enableAutoFillOnPageLoadKey;\n readonly lockOptionKey: string = ConstantsService.lockOptionKey;\n readonly lastActiveKey: string = ConstantsService.lastActiveKey;\n readonly neverDomainsKey: string = ConstantsService.neverDomainsKey;\n readonly installedVersionKey: string = ConstantsService.installedVersionKey;\n readonly localeKey: string = ConstantsService.localeKey;\n readonly themeKey: string = ConstantsService.themeKey;\n readonly collapsedGroupingsKey: string = ConstantsService.collapsedGroupingsKey;\n readonly autoConfirmFingerprints: string = ConstantsService.autoConfirmFingerprints;\n readonly dontShowCardsCurrentTab: string = ConstantsService.dontShowCardsCurrentTab;\n readonly dontShowIdentitiesCurrentTab: string = ConstantsService.dontShowIdentitiesCurrentTab;\n readonly defaultUriMatch: string = ConstantsService.defaultUriMatch;\n readonly pinProtectedKey: string = ConstantsService.pinProtectedKey;\n readonly protectedPin: string = ConstantsService.protectedPin;\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 = null;\r\n expMonth: string = null;\r\n expYear: string = null;\r\n code: string = null;\r\n\r\n // tslint:disable\r\n private _brand: string = null;\r\n private _number: string = null;\r\n private _subTitle: string = null;\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\r\n // Show last 5 on amex, last 4 for all others\r\n const count = this.number.length >= 5 && this.number.match(new RegExp('^3[47]')) != null ? 5 : 4;\r\n this._subTitle += ('*' + this.number.substr(this.number.length - count));\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 { 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 = null;\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 { 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","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 { Injectable } from '@angular/core';\r\n\r\nimport { BroadcasterService as BaseBroadcasterService } from '../../services/broadcaster.service';\r\n\r\n@Injectable()\r\nexport class BroadcasterService extends BaseBroadcasterService {\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n} from '@angular/core';\n\nimport { Utils } from '../../misc/utils';\n\n@Directive({\n selector: '[appAutofocus]',\n})\nexport class AutofocusDirective {\n @Input() set appAutofocus(condition: boolean | string) {\n this.autofocus = condition === '' || condition === true;\n }\n\n private autofocus: boolean;\n\n constructor(private el: ElementRef) { }\n\n ngOnInit() {\n if (!Utils.isMobileBrowser && this.autofocus) {\n this.el.nativeElement.focus();\n }\n }\n}\n","import * as jq from 'jquery';\n\nimport {\n Component,\n ComponentFactoryResolver,\n Type,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ModalComponent as BaseModalComponent } from 'jslib/angular/components/modal.component';\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-modal',\n template: ``,\n})\nexport class ModalComponent extends BaseModalComponent {\n el: any = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n super(componentFactoryResolver);\n }\n\n ngOnDestroy() { /* Nothing */ }\n\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\n this.parentContainer = parentContainer;\n this.fade = fade;\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\n const componentRef = this.container.createComponent(factory);\n\n const modals = Array.from(document.querySelectorAll('.modal'));\n if (modals.length > 0) {\n this.el = jq(modals[0]);\n this.el.modal('show');\n\n this.el.on('show.bs.modal', () => {\n this.onShow.emit();\n });\n this.el.on('shown.bs.modal', () => {\n this.onShown.emit();\n if (!Utils.isMobileBrowser) {\n this.el.find('*[appAutoFocus]').focus();\n }\n });\n this.el.on('hide.bs.modal', () => {\n this.onClose.emit();\n });\n this.el.on('hidden.bs.modal', () => {\n this.onClosed.emit();\n if (this.parentContainer != null) {\n this.parentContainer.clear();\n }\n });\n }\n\n return componentRef.instance;\n }\n\n close() {\n if (this.el != null) {\n this.el.modal('hide');\n }\n }\n}\n","export enum TwoFactorProviderType {\r\n Authenticator = 0,\r\n Email = 1,\r\n Duo = 2,\r\n Yubikey = 3,\n U2f = 4,\r\n Remember = 5,\r\n OrganizationDuo = 6,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopProp]',\r\n})\r\nexport class StopPropDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.stopPropagation();\r\n }\r\n}\n","
\r\n \"\"\r\n \r\n
\r\n","import { DecryptParameters } from '../models/domain/decryptParameters';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class CryptoFunctionService {\n pbkdf2: (password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\n iterations: number) => Promise;\n hash: (value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5') => Promise;\n hmac: (value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512') => Promise;\n compare: (a: ArrayBuffer, b: ArrayBuffer) => Promise;\n hmacFast: (value: ArrayBuffer | string, key: ArrayBuffer | string, algorithm: 'sha1' | 'sha256' | 'sha512') =>\n Promise;\n compareFast: (a: ArrayBuffer | string, b: ArrayBuffer | string) => Promise;\n aesEncrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n aesDecryptFastParameters: (data: string, iv: string, mac: string, key: SymmetricCryptoKey) =>\n DecryptParameters;\n aesDecryptFast: (parameters: DecryptParameters) => Promise;\n aesDecrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaDecrypt: (data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaExtractPublicKey: (privateKey: ArrayBuffer) => Promise;\n rsaGenerateKeyPair: (length: 1024 | 2048 | 4096) => Promise<[ArrayBuffer, ArrayBuffer]>;\n randomBytes: (length: number) => Promise;\n}\n","import { BreachAccountResponse } from '../models/response/breachAccountResponse';\n\nexport abstract class AuditService {\n passwordLeaked: (password: string) => Promise;\n breachedAccounts: (username: string) => Promise;\n}\n","export enum SecureNoteType {\r\n Generic = 0,\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","export abstract class LockService {\n pinLocked: boolean;\n isLocked: () => Promise;\n checkLock: () => Promise;\n lock: (allowSoftLock?: boolean) => Promise;\n setLockOption: (lockOption: number) => Promise;\n isPinLockSet: () => Promise<[boolean, boolean]>;\n clear: () => Promise;\n}\n","import { CipherView } from '../models/view/cipherView';\n\nexport abstract class SearchService {\n clearIndex: () => void;\n isSearchable: (query: string) => boolean;\n indexCiphers: () => Promise;\n searchCiphers: (query: string, filter?: (cipher: CipherView) => boolean,\n ciphers?: CipherView[]) => Promise;\n searchCiphersBasic: (ciphers: CipherView[], query: string) => CipherView[];\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { AttachmentView } from './attachmentView';\r\nimport { CardView } from './cardView';\r\nimport { FieldView } from './fieldView';\r\nimport { IdentityView } from './identityView';\r\nimport { LoginView } from './loginView';\r\nimport { PasswordHistoryView } from './passwordHistoryView';\r\nimport { SecureNoteView } from './secureNoteView';\r\nimport { View } from './view';\r\n\r\nexport class CipherView implements View {\r\n id: string = null;\r\n organizationId: string = null;\r\n folderId: string = null;\r\n name: string = null;\r\n notes: string = null;\r\n type: CipherType = null;\r\n favorite = false;\r\n organizationUseTotp = false;\r\n edit = false;\r\n localData: any;\r\n login = new LoginView();\r\n identity = new IdentityView();\r\n card = new CardView();\r\n secureNote = new SecureNoteView();\r\n attachments: AttachmentView[] = null;\r\n fields: FieldView[] = null;\r\n passwordHistory: PasswordHistoryView[] = null;\r\n collectionIds: string[] = null;\r\n revisionDate: Date = null;\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.type !== CipherType.Login || this.login == null) {\r\n return null;\r\n } else if (this.login.password == null || this.login.password === '') {\r\n return null;\r\n }\r\n return this.login.passwordRevisionDate;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { CryptoFunctionService } from 'jslib/abstractions/cryptoFunction.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-avatar',\n template: '',\n})\nexport class AvatarComponent implements OnChanges, OnInit {\n @Input() data: string;\n @Input() email: string;\n @Input() size = 45;\n @Input() charCount = 2;\n @Input() textColor = '#ffffff';\n @Input() fontSize = 20;\n @Input() fontWeight = 300;\n @Input() dynamic = false;\n @Input() circle = false;\n\n src: string;\n\n constructor(public sanitizer: DomSanitizer, private cryptoFunctionService: CryptoFunctionService,\n private stateService: StateService) { }\n\n ngOnInit() {\n if (!this.dynamic) {\n this.generate();\n }\n }\n\n ngOnChanges() {\n if (this.dynamic) {\n this.generate();\n }\n }\n\n private async generate() {\n const enableGravatars = await this.stateService.get('enableGravatars');\n if (enableGravatars && this.email != null) {\n const hashBytes = await this.cryptoFunctionService.hash(this.email.toLowerCase().trim(), 'md5');\n const hash = Utils.fromBufferToHex(hashBytes).toLowerCase();\n this.src = 'https://www.gravatar.com/avatar/' + hash + '?s=' + this.size + '&r=pg&d=retro';\n } else {\n let chars: string = null;\n const upperData = this.data.toUpperCase();\n\n if (this.charCount > 1) {\n chars = this.getFirstLetters(upperData, this.charCount);\n }\n if (chars == null) {\n chars = upperData.substr(0, this.charCount);\n }\n\n const charObj = this.getCharText(chars);\n const color = this.stringToColor(upperData);\n const svg = this.getSvg(this.size, color);\n svg.appendChild(charObj);\n const html = window.document.createElement('div').appendChild(svg).outerHTML;\n const svgHtml = window.btoa(unescape(encodeURIComponent(html)));\n this.src = 'data:image/svg+xml;base64,' + svgHtml;\n }\n }\n\n private stringToColor(str: string): string {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n // tslint:disable-next-line\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n let color = '#';\n for (let i = 0; i < 3; i++) {\n // tslint:disable-next-line\n const value = (hash >> (i * 8)) & 0xFF;\n color += ('00' + value.toString(16)).substr(-2);\n }\n return color;\n }\n\n private getFirstLetters(data: string, count: number): string {\n const parts = data.split(' ');\n if (parts.length > 1) {\n let text = '';\n for (let i = 0; i < count; i++) {\n text += parts[i].substr(0, 1);\n }\n return text;\n }\n return null;\n }\n\n private getSvg(size: number, color: string): HTMLElement {\n const svgTag = window.document.createElement('svg');\n svgTag.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgTag.setAttribute('pointer-events', 'none');\n svgTag.setAttribute('width', size.toString());\n svgTag.setAttribute('height', size.toString());\n svgTag.style.backgroundColor = color;\n svgTag.style.width = size + 'px';\n svgTag.style.height = size + 'px';\n return svgTag;\n }\n\n private getCharText(character: string): HTMLElement {\n const textTag = window.document.createElement('text');\n textTag.setAttribute('text-anchor', 'middle');\n textTag.setAttribute('y', '50%');\n textTag.setAttribute('x', '50%');\n textTag.setAttribute('dy', '0.35em');\n textTag.setAttribute('pointer-events', 'auto');\n textTag.setAttribute('fill', this.textColor);\n textTag.setAttribute('font-family', '\"Open Sans\",\"Helvetica Neue\",Helvetica,Arial,' +\n 'sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\"');\n textTag.textContent = character;\n textTag.style.fontWeight = this.fontWeight.toString();\n textTag.style.fontSize = this.fontSize + 'px';\n return textTag;\n }\n}\n","import { LoginUriView } from './loginUriView';\nimport { View } from './view';\n\nimport { Login } from '../domain/login';\n\nexport class LoginView implements View {\n username: string = null;\n password: string = null;\n passwordRevisionDate?: Date = null;\n totp: string = null;\n uris: LoginUriView[] = null;\n\n constructor(l?: Login) {\n if (!l) {\n return;\n }\n\n this.passwordRevisionDate = l.passwordRevisionDate;\n }\n\n get uri(): string {\n return this.hasUris ? this.uris[0].uri : null;\n }\n\n get maskedPassword(): string {\n return this.password != null ? '••••••••' : null;\n }\n\n get subTitle(): string {\n return this.username;\n }\n\n get canLaunch(): boolean {\n return this.hasUris && this.uris.some((u) => u.canLaunch);\n }\n\n get launchUri(): string {\n if (this.hasUris) {\n const uri = this.uris.find((u) => u.canLaunch);\n if (uri != null) {\n return uri.launchUri;\n }\n }\n return null;\n }\n\n get hasUris(): boolean {\n return this.uris != null && this.uris.length > 0;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Folder } from '../domain/folder';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class FolderView implements View, ITreeNodeObject {\r\n id: string = null;\r\n name: string = null;\r\n revisionDate: Date = null;\r\n\r\n constructor(f?: Folder) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.id = f.id;\r\n this.revisionDate = f.revisionDate;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Collection } from '../domain/collection';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class CollectionView implements View, ITreeNodeObject {\r\n id: string = null;\r\n organizationId: string = null;\r\n name: string = null;\r\n readOnly: boolean = null;\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 { View } from './view';\r\n\r\nimport { Identity } from '../domain/identity';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class IdentityView implements View {\r\n title: string = null;\r\n middleName: string = null;\r\n address1: string = null;\r\n address2: string = null;\r\n address3: string = null;\r\n city: string = null;\r\n state: string = null;\r\n postalCode: string = null;\r\n country: string = null;\r\n company: string = null;\r\n email: string = null;\r\n phone: string = null;\r\n ssn: string = null;\r\n username: string = null;\r\n passportNumber: string = null;\r\n licenseNumber: string = null;\r\n\r\n // tslint:disable\r\n private _firstName: string = null;\r\n private _lastName: string = null;\r\n private _subTitle: string = null;\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 get fullAddress(): string {\r\n let address = this.address1;\r\n if (Utils.isNullOrWhitespace(this.address2)) {\r\n if (Utils.isNullOrWhitespace(address)) {\r\n address += ', ';\r\n }\r\n address += this.address2;\r\n }\r\n if (Utils.isNullOrWhitespace(this.address3)) {\r\n if (Utils.isNullOrWhitespace(address)) {\r\n address += ', ';\r\n }\r\n address += this.address3;\r\n }\r\n return address;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nconst Keys = {\n stripeTest: 'pk_test_KPoCfZXu7mznb9uSCPZ2JpTD',\n stripeLive: 'pk_live_bpN0P37nMxrMQkcaHXtAybJk',\n btSandbox: 'sandbox_r72q8jq6_9pnxkwm75f87sdc2',\n btProduction: 'production_qfbsv8kc_njj2zjtyngtjmbjd',\n};\n\n@Component({\n selector: 'app-payment',\n templateUrl: 'payment.component.html',\n})\nexport class PaymentComponent implements OnInit {\n @Input() showOptions = true;\n @Input() method: 'card' | 'paypal' | 'bank' = 'card';\n @Input() hideBank = false;\n @Input() hidePaypal = false;\n\n card: any = {\n number: null,\n exp_month: '',\n exp_year: '',\n address_country: '',\n address_zip: null,\n };\n bank: any = {\n routing_number: null,\n account_number: null,\n account_holder_name: null,\n account_holder_type: '',\n currency: 'USD',\n country: 'US',\n };\n cardExpMonthOptions: any[];\n cardExpYearOptions: any[];\n\n private stripeScript: HTMLScriptElement;\n private btScript: HTMLScriptElement;\n private btInstance: any = null;\n\n constructor(i18nService: I18nService, private platformUtilsService: PlatformUtilsService) {\n this.stripeScript = window.document.createElement('script');\n this.stripeScript.src = 'https://js.stripe.com/v2/';\n this.stripeScript.async = true;\n this.stripeScript.onload = () => {\n (window as any).Stripe.setPublishableKey(\n this.platformUtilsService.isDev() ? Keys.stripeTest : Keys.stripeLive);\n };\n this.btScript = window.document.createElement('script');\n this.btScript.src = 'scripts/dropin.js';\n this.btScript.async = true;\n\n this.cardExpMonthOptions = [\n { name: '-- ' + i18nService.t('select') + ' --', value: '' },\n { name: '01 - ' + i18nService.t('january'), value: '01' },\n { name: '02 - ' + i18nService.t('february'), value: '02' },\n { name: '03 - ' + i18nService.t('march'), value: '03' },\n { name: '04 - ' + i18nService.t('april'), value: '04' },\n { name: '05 - ' + i18nService.t('may'), value: '05' },\n { name: '06 - ' + i18nService.t('june'), value: '06' },\n { name: '07 - ' + i18nService.t('july'), value: '07' },\n { name: '08 - ' + i18nService.t('august'), value: '08' },\n { name: '09 - ' + i18nService.t('september'), value: '09' },\n { name: '10 - ' + i18nService.t('october'), value: '10' },\n { name: '11 - ' + i18nService.t('november'), value: '11' },\n { name: '12 - ' + i18nService.t('december'), value: '12' },\n ];\n\n this.cardExpYearOptions = [\n { name: '-- ' + i18nService.t('select') + ' --', value: '' },\n ];\n const year = (new Date()).getFullYear();\n for (let i = year; i < (year + 15); i++) {\n this.cardExpYearOptions.push({ name: i.toString(), value: i.toString().slice(-2) });\n }\n }\n\n ngOnInit() {\n if (!this.showOptions) {\n this.hidePaypal = this.method !== 'paypal';\n this.hideBank = this.method !== 'bank';\n }\n window.document.head.appendChild(this.stripeScript);\n if (!this.hidePaypal) {\n window.document.head.appendChild(this.btScript);\n }\n }\n\n ngOnDestroy() {\n window.document.head.removeChild(this.stripeScript);\n Array.from(window.document.querySelectorAll('iframe')).forEach((el) => {\n if (el.src != null && el.src.indexOf('stripe') > -1) {\n window.document.body.removeChild(el);\n }\n });\n if (!this.hidePaypal) {\n window.document.head.removeChild(this.btScript);\n const btStylesheet = window.document.head.querySelector('#braintree-dropin-stylesheet');\n if (btStylesheet != null) {\n window.document.head.removeChild(btStylesheet);\n }\n }\n }\n\n changeMethod() {\n if (this.method !== 'paypal') {\n this.btInstance = null;\n return;\n }\n\n window.setTimeout(() => {\n (window as any).braintree.dropin.create({\n authorization: this.platformUtilsService.isDev() ? Keys.btSandbox : Keys.btProduction,\n container: '#bt-dropin-container',\n paymentOptionPriority: ['paypal'],\n paypal: {\n flow: 'vault',\n buttonStyle: {\n label: 'pay',\n size: 'medium',\n shape: 'pill',\n color: 'blue',\n },\n },\n }, (createErr: any, instance: any) => {\n if (createErr != null) {\n // tslint:disable-next-line\n console.error(createErr);\n return;\n }\n this.btInstance = instance;\n });\n }, 250);\n }\n\n createPaymentToken(): Promise {\n return new Promise((resolve, reject) => {\n if (this.method === 'paypal') {\n this.btInstance.requestPaymentMethod().then((payload: any) => {\n resolve(payload.nonce);\n }).catch((err: any) => {\n reject(err.message);\n });\n } else if (this.method === 'card' || this.method === 'bank') {\n const isCard = this.method === 'card';\n const createObj: any = isCard ? (window as any).Stripe.card :\n (window as any).Stripe.bankAccount;\n const sourceObj = isCard ? this.card : this.bank;\n createObj.createToken(sourceObj, (status: number, response: any) => {\n if (status === 200 && response.id != null) {\n resolve(response.id);\n } else if (response.error != null) {\n reject(response.error.message);\n } else {\n reject();\n }\n });\n }\n });\n }\n\n getCountry(): string {\n return this.card.address_country;\n }\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { AttachmentData } from './attachmentData';\r\nimport { CardData } from './cardData';\r\nimport { FieldData } from './fieldData';\r\nimport { IdentityData } from './identityData';\r\nimport { LoginData } from './loginData';\r\nimport { PasswordHistoryData } from './passwordHistoryData';\r\nimport { SecureNoteData } from './secureNoteData';\r\n\r\nimport { CipherResponse } from '../response/cipherResponse';\r\n\r\nexport class CipherData {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n userId: string;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n favorite: boolean;\r\n revisionDate: string;\r\n type: CipherType;\r\n sizeName: string;\r\n name: string;\r\n notes: string;\r\n login?: LoginData;\r\n secureNote?: SecureNoteData;\r\n card?: CardData;\r\n identity?: IdentityData;\r\n fields?: FieldData[];\r\n attachments?: AttachmentData[];\r\n passwordHistory?: PasswordHistoryData[];\r\n collectionIds?: string[];\r\n\r\n constructor(response?: CipherResponse, userId?: string, collectionIds?: string[]) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.id = response.id;\r\n this.organizationId = response.organizationId;\r\n this.folderId = response.folderId;\r\n this.userId = userId;\r\n this.edit = response.edit;\r\n this.organizationUseTotp = response.organizationUseTotp;\r\n this.favorite = response.favorite;\r\n this.revisionDate = response.revisionDate;\r\n this.type = response.type;\r\n this.name = response.name;\r\n this.notes = response.notes;\r\n\r\n if (collectionIds != null) {\r\n this.collectionIds = collectionIds;\r\n } else {\r\n this.collectionIds = response.collectionIds;\r\n }\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = new LoginData(response.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNoteData(response.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new CardData(response.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new IdentityData(response.identity);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (response.fields != null) {\r\n this.fields = [];\r\n response.fields.forEach((field) => {\r\n this.fields.push(new FieldData(field));\r\n });\r\n }\r\n\r\n if (response.attachments != null) {\r\n this.attachments = [];\r\n response.attachments.forEach((attachment) => {\r\n this.attachments.push(new AttachmentData(attachment));\r\n });\r\n }\r\n\r\n if (response.passwordHistory != null) {\r\n this.passwordHistory = [];\r\n response.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push(new PasswordHistoryData(ph));\r\n });\r\n }\r\n }\r\n}\r\n","import { CollectionDetailsResponse } from '../response/collectionResponse';\n\nexport class CollectionData {\n id: string;\n organizationId: string;\n name: string;\n readOnly: boolean;\n\n constructor(response: CollectionDetailsResponse) {\n this.id = response.id;\n this.organizationId = response.organizationId;\n this.name = response.name;\n this.readOnly = response.readOnly;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-two-factor-verify',\n templateUrl: 'two-factor-verify.component.html',\n})\nexport class TwoFactorVerifyComponent {\n @Input() type: TwoFactorProviderType;\n @Input() organizationId: string;\n @Output() onAuthed = new EventEmitter();\n\n masterPassword: string;\n formPromise: Promise;\n\n private masterPasswordHash: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private toasterService: ToasterService, private cryptoService: CryptoService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash =\n await this.cryptoService.hashPassword(this.masterPassword, null);\n\n try {\n switch (this.type) {\n case -1:\n this.formPromise = this.apiService.getTwoFactorRecover(request);\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.organizationId != null) {\n this.formPromise = this.apiService.getTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.getTwoFactorDuo(request);\n }\n break;\n case TwoFactorProviderType.Email:\n this.formPromise = this.apiService.getTwoFactorEmail(request);\n break;\n case TwoFactorProviderType.U2f:\n this.formPromise = this.apiService.getTwoFactorU2f(request);\n break;\n case TwoFactorProviderType.Authenticator:\n this.formPromise = this.apiService.getTwoFactorAuthenticator(request);\n break;\n case TwoFactorProviderType.Yubikey:\n this.formPromise = this.apiService.getTwoFactorYubiKey(request);\n break;\n }\n\n const response = await this.formPromise;\n this.onAuthed.emit({\n response: response,\n masterPasswordHash: this.masterPasswordHash,\n });\n } catch { }\n }\n}\n","export enum DeviceType {\n Android = 0,\n iOS = 1,\n ChromeExtension = 2,\n FirefoxExtension = 3,\n OperaExtension = 4,\n EdgeExtension = 5,\n WindowsDesktop = 6,\n MacOsDesktop = 7,\n LinuxDesktop = 8,\n ChromeBrowser = 9,\n FirefoxBrowser = 10,\n OperaBrowser = 11,\n EdgeBrowser = 12,\n IEBrowser = 13,\n UnknownBrowser = 14,\n AndroidAmazon = 15,\n UWP = 16,\n SafariBrowser = 17,\n VivaldiBrowser = 18,\n VivaldiExtension = 19,\n SafariExtension = 20,\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nimport { AttachmentRequest } from './attachmentRequest';\r\nimport { PasswordHistoryRequest } from './passwordHistoryRequest';\r\n\r\nexport class CipherRequest {\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n login: LoginApi;\r\n secureNote: SecureNoteApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n fields: FieldApi[];\r\n passwordHistory: PasswordHistoryRequest[];\r\n // Deprecated, remove at some point and rename attachments2 to attachments\r\n attachments: { [id: string]: string; };\r\n attachments2: { [id: string]: AttachmentRequest; };\r\n\r\n constructor(cipher: Cipher) {\r\n this.type = cipher.type;\r\n this.folderId = cipher.folderId;\r\n this.organizationId = cipher.organizationId;\r\n this.name = cipher.name ? cipher.name.encryptedString : null;\r\n this.notes = cipher.notes ? cipher.notes.encryptedString : null;\r\n this.favorite = cipher.favorite;\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = {\r\n uris: null,\r\n username: cipher.login.username ? cipher.login.username.encryptedString : null,\r\n password: cipher.login.password ? cipher.login.password.encryptedString : null,\r\n passwordRevisionDate: cipher.login.passwordRevisionDate != null ?\r\n cipher.login.passwordRevisionDate.toISOString() : null,\r\n totp: cipher.login.totp ? cipher.login.totp.encryptedString : null,\r\n };\r\n\r\n if (cipher.login.uris) {\r\n this.login.uris = [];\r\n cipher.login.uris.forEach((u) => {\r\n this.login.uris.push({\r\n uri: u.uri ? u.uri.encryptedString : null,\r\n match: u.match != null ? u.match : null,\r\n });\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = {\r\n type: cipher.secureNote.type,\r\n };\r\n break;\r\n case CipherType.Card:\r\n this.card = {\r\n cardholderName: cipher.card.cardholderName ? cipher.card.cardholderName.encryptedString : null,\r\n brand: cipher.card.brand ? cipher.card.brand.encryptedString : null,\r\n number: cipher.card.number ? cipher.card.number.encryptedString : null,\r\n expMonth: cipher.card.expMonth ? cipher.card.expMonth.encryptedString : null,\r\n expYear: cipher.card.expYear ? cipher.card.expYear.encryptedString : null,\r\n code: cipher.card.code ? cipher.card.code.encryptedString : null,\r\n };\r\n break;\r\n case CipherType.Identity:\r\n this.identity = {\r\n title: cipher.identity.title ? cipher.identity.title.encryptedString : null,\r\n firstName: cipher.identity.firstName ? cipher.identity.firstName.encryptedString : null,\r\n middleName: cipher.identity.middleName ? cipher.identity.middleName.encryptedString : null,\r\n lastName: cipher.identity.lastName ? cipher.identity.lastName.encryptedString : null,\r\n address1: cipher.identity.address1 ? cipher.identity.address1.encryptedString : null,\r\n address2: cipher.identity.address2 ? cipher.identity.address2.encryptedString : null,\r\n address3: cipher.identity.address3 ? cipher.identity.address3.encryptedString : null,\r\n city: cipher.identity.city ? cipher.identity.city.encryptedString : null,\r\n state: cipher.identity.state ? cipher.identity.state.encryptedString : null,\r\n postalCode: cipher.identity.postalCode ? cipher.identity.postalCode.encryptedString : null,\r\n country: cipher.identity.country ? cipher.identity.country.encryptedString : null,\r\n company: cipher.identity.company ? cipher.identity.company.encryptedString : null,\r\n email: cipher.identity.email ? cipher.identity.email.encryptedString : null,\r\n phone: cipher.identity.phone ? cipher.identity.phone.encryptedString : null,\r\n ssn: cipher.identity.ssn ? cipher.identity.ssn.encryptedString : null,\r\n username: cipher.identity.username ? cipher.identity.username.encryptedString : null,\r\n passportNumber: cipher.identity.passportNumber ?\r\n cipher.identity.passportNumber.encryptedString : null,\r\n licenseNumber: cipher.identity.licenseNumber ? cipher.identity.licenseNumber.encryptedString : null,\r\n };\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (cipher.fields) {\r\n this.fields = [];\r\n cipher.fields.forEach((field) => {\r\n this.fields.push({\r\n type: field.type,\r\n name: field.name ? field.name.encryptedString : null,\r\n value: field.value ? field.value.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.passwordHistory) {\r\n this.passwordHistory = [];\r\n cipher.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push({\r\n lastUsedDate: ph.lastUsedDate,\r\n password: ph.password ? ph.password.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.attachments) {\r\n this.attachments = {};\r\n this.attachments2 = {};\r\n cipher.attachments.forEach((attachment) => {\r\n const fileName = attachment.fileName ? attachment.fileName.encryptedString : null;\r\n this.attachments[attachment.id] = fileName;\r\n const attachmentRequest = new AttachmentRequest();\r\n attachmentRequest.fileName = fileName;\r\n if (attachment.key != null) {\r\n attachmentRequest.key = attachment.key.encryptedString;\r\n }\r\n this.attachments2[attachment.id] = attachmentRequest;\r\n });\r\n }\r\n }\r\n}\r\n","export enum FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { Field } from '../domain/field';\r\n\r\nexport class FieldView implements View {\r\n name: string = null;\r\n value: string = null;\r\n type: FieldType = null;\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 { CollectionData } from '../data/collectionData';\n\nimport { CollectionView } from '../view/collectionView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Collection extends Domain {\n id: string;\n organizationId: string;\n name: CipherString;\n readOnly: boolean;\n\n constructor(obj?: CollectionData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n organizationId: null,\n name: null,\n readOnly: null,\n }, alreadyEncrypted, ['id', 'organizationId', 'readOnly']);\n }\n\n decrypt(): Promise {\n return this.decryptObj(new CollectionView(this), {\n name: null,\n }, this.organizationId);\n }\n}\n","
\n
\n

{{'twoStepLoginAuthDesc' | i18n}}

\n \n \n
\n
\n \n \n
\n
\n","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 { EncryptionType } from '../../enums/encryptionType';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class CipherString {\r\n encryptedString?: string;\r\n encryptionType?: EncryptionType;\r\n decryptedValue?: string;\r\n data?: string;\r\n iv?: string;\r\n mac?: string;\r\n\r\n constructor(encryptedStringOrType: string | EncryptionType, data?: string, iv?: string, mac?: string) {\r\n if (data != null) {\r\n // data and header\r\n const encType = encryptedStringOrType as EncryptionType;\r\n this.encryptedString = encType + '.' + data;\r\n\r\n // iv\r\n if (iv != null) {\r\n this.encryptedString += ('|' + iv);\r\n }\r\n\r\n // mac\r\n if (mac != null) {\r\n this.encryptedString += ('|' + mac);\r\n }\r\n\r\n this.encryptionType = encType;\r\n this.data = data;\r\n this.iv = iv;\r\n this.mac = mac;\r\n\r\n return;\r\n }\r\n\r\n this.encryptedString = encryptedStringOrType as string;\r\n if (!this.encryptedString) {\r\n return;\r\n }\r\n\r\n const headerPieces = this.encryptedString.split('.');\r\n let encPieces: string[] = null;\r\n\r\n if (headerPieces.length === 2) {\r\n try {\r\n this.encryptionType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) {\r\n return;\r\n }\r\n } else {\r\n encPieces = this.encryptedString.split('|');\r\n this.encryptionType = encPieces.length === 3 ? EncryptionType.AesCbc128_HmacSha256_B64 :\r\n EncryptionType.AesCbc256_B64;\r\n }\r\n\r\n switch (this.encryptionType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encPieces.length !== 3) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n this.mac = encPieces[2];\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encPieces.length !== 2) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n if (encPieces.length !== 1) {\r\n return;\r\n }\r\n\r\n this.data = encPieces[0];\r\n break;\r\n default:\r\n return;\r\n }\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n if (this.decryptedValue) {\r\n return Promise.resolve(this.decryptedValue);\r\n }\r\n\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n this.decryptedValue = await cryptoService.decryptToUtf8(this, orgKey);\r\n } catch (e) {\r\n this.decryptedValue = '[error: cannot decrypt]';\r\n }\r\n return this.decryptedValue;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-organizations',\n templateUrl: 'organizations.component.html',\n})\nexport class OrganizationsComponent implements OnInit {\n @Input() vault = false;\n\n organizations: Organization[];\n loaded: boolean = false;\n actionPromise: Promise;\n\n constructor(private userService: UserService, private platformUtilsService: PlatformUtilsService,\n private i18nService: I18nService, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private syncService: SyncService) { }\n\n async ngOnInit() {\n if (!this.vault) {\n await this.load();\n }\n }\n\n async load() {\n const orgs = await this.userService.getAllOrganizations();\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.organizations = orgs;\n this.loaded = true;\n }\n\n async leave(org: Organization) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('leaveOrganizationConfirmation'), org.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.apiService.postLeaveOrganization(org.id).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Left Organization' });\n this.toasterService.popAsync('success', null, this.i18nService.t('leftOrganization'));\n await this.load();\n } catch { }\n }\n}\n","export abstract class TotpService {\n getCode: (key: string) => Promise;\n getTimeInterval: (key: string) => number;\n isAutoCopyEnabled: () => Promise;\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { View } from './view';\n\nimport { LoginUri } from '../domain/loginUri';\n\nimport { Utils } from '../../misc/utils';\n\nconst CanLaunchWhitelist = [\n 'https://',\n 'http://',\n 'ssh://',\n 'ftp://',\n 'sftp://',\n 'irc://',\n 'vnc://',\n 'chrome://',\n];\n\nexport class LoginUriView implements View {\n match: UriMatchType = null;\n\n // tslint:disable\n private _uri: string = null;\n private _domain: string = null;\n private _hostname: string = null;\n private _canLaunch: boolean = null;\n // tslint:enable\n\n constructor(u?: LoginUri) {\n if (!u) {\n return;\n }\n\n this.match = u.match;\n }\n\n get uri(): string {\n return this._uri;\n }\n set uri(value: string) {\n this._uri = value;\n this._domain = null;\n this._canLaunch = null;\n }\n\n get domain(): string {\n if (this._domain == null && this.uri != null) {\n this._domain = Utils.getDomain(this.uri);\n if (this._domain === '') {\n this._domain = null;\n }\n }\n\n return this._domain;\n }\n\n get hostname(): string {\n if (this._hostname == null && this.uri != null) {\n this._hostname = Utils.getHostname(this.uri);\n if (this._hostname === '') {\n this._hostname = null;\n }\n }\n\n return this._hostname;\n }\n\n get hostnameOrUri(): string {\n return this.hostname != null ? this.hostname : this.uri;\n }\n\n get isWebsite(): boolean {\n return this.uri != null && (this.uri.indexOf('http://') === 0 || this.uri.indexOf('https://') === 0 ||\n (this.uri.indexOf('://') < 0 && Utils.tldEndingRegex.test(this.uri)));\n }\n\n get canLaunch(): boolean {\n if (this._canLaunch != null) {\n return this._canLaunch;\n }\n if (this.uri != null && this.match !== UriMatchType.RegularExpression) {\n const uri = this.launchUri;\n for (let i = 0; i < CanLaunchWhitelist.length; i++) {\n if (uri.indexOf(CanLaunchWhitelist[i]) === 0) {\n this._canLaunch = true;\n return this._canLaunch;\n }\n }\n }\n this._canLaunch = false;\n return this._canLaunch;\n }\n\n get launchUri(): string {\n return this.uri.indexOf('://') < 0 && Utils.tldEndingRegex.test(this.uri) ? ('http://' + this.uri) : this.uri;\n }\n}\n","import {\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { TwoFactorProviderRequest } from 'jslib/models/request/twoFactorProviderRequest';\n\nexport abstract class TwoFactorBaseComponent {\n @Output() onUpdated = new EventEmitter();\n\n type: TwoFactorProviderType;\n organizationId: string;\n twoFactorProviderType = TwoFactorProviderType;\n enabled = false;\n authed = false;\n\n protected masterPasswordHash: string;\n\n constructor(protected apiService: ApiService, protected i18nService: I18nService,\n protected analytics: Angulartics2, protected toasterService: ToasterService,\n protected platformUtilsService: PlatformUtilsService) { }\n\n protected auth(authResponse: any) {\n this.masterPasswordHash = authResponse.masterPasswordHash;\n this.authed = true;\n }\n\n protected async enable(enableFunction: () => Promise) {\n try {\n await enableFunction();\n this.analytics.eventTrack.next({\n action: 'Enabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.onUpdated.emit(true);\n } catch { }\n }\n\n protected async disable(promise: Promise) {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('twoStepDisableDesc'),\n this.i18nService.t('disable'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n const request = new TwoFactorProviderRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.type = this.type;\n if (this.organizationId != null) {\n promise = this.apiService.putTwoFactorOrganizationDisable(this.organizationId, request);\n } else {\n promise = this.apiService.putTwoFactorDisable(request);\n }\n await promise;\n this.enabled = false;\n this.analytics.eventTrack.next({\n action: 'Disabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepDisabled'));\n this.onUpdated.emit(false);\n } catch { }\n }\n}\n","import { Importer } from '../importers/importer';\r\n\r\nexport interface ImportOption {\r\n id: string;\r\n name: string;\r\n}\r\nexport abstract class ImportService {\r\n featuredImportOptions: ImportOption[];\r\n regularImportOptions: ImportOption[];\r\n getImportOptions: () => ImportOption[];\r\n import: (importer: Importer, fileContents: string, organizationId?: string) => Promise;\r\n getImporter: (format: string, organization?: boolean) => Importer;\r\n}\r\n","export abstract class ExportService {\r\n getExport: (format?: 'csv' | 'json') => Promise;\r\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\r\n getFileName: (prefix?: string, extension?: string) => string;\r\n}\r\n","import {\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { ModalComponent } from '../modal.component';\nimport { AddEditComponent as OrgAddEditComponent } from '../organizations/vault/add-edit.component';\nimport { AddEditComponent } from '../vault/add-edit.component';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nexport class CipherReportComponent {\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n\n loading = false;\n hasLoaded = false;\n ciphers: CipherView[] = [];\n organization: Organization;\n\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, protected userService: UserService,\n protected messagingService: MessagingService, public requiresPaid: boolean) { }\n\n async load() {\n this.loading = true;\n await this.setCiphers();\n this.loading = false;\n this.hasLoaded = true;\n }\n\n selectCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n let childComponent: OrgAddEditComponent | AddEditComponent;\n if (this.organization != null) {\n childComponent = this.modal.show(OrgAddEditComponent, this.cipherAddEditModalRef);\n (childComponent as OrgAddEditComponent).organization = this.organization;\n } else {\n childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n }\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n if (this.organization != null) {\n childComponent.organizationId = this.organization.id;\n }\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n protected async checkAccess(): Promise {\n if (this.organization != null) {\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n if (this.requiresPaid && !this.organization.useTotp) {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n return false;\n }\n } else {\n const accessPremium = await this.userService.canAccessPremium();\n if (this.requiresPaid && !accessPremium) {\n this.messagingService.send('premiumRequired');\n this.loading = false;\n return false;\n }\n }\n return true;\n }\n\n protected async setCiphers() {\n this.ciphers = [];\n }\n}\n","import { CipherType } from '../../enums/cipherType';\n\nimport { CipherData } from '../data/cipherData';\n\nimport { CipherView } from '../view/cipherView';\n\nimport { Attachment } from './attachment';\nimport { Card } from './card';\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\nimport { Field } from './field';\nimport { Identity } from './identity';\nimport { Login } from './login';\nimport { Password } from './password';\nimport { SecureNote } from './secureNote';\n\nexport class Cipher extends Domain {\n id: string;\n organizationId: string;\n folderId: string;\n name: CipherString;\n notes: CipherString;\n type: CipherType;\n favorite: boolean;\n organizationUseTotp: boolean;\n edit: boolean;\n revisionDate: Date;\n localData: any;\n login: Login;\n identity: Identity;\n card: Card;\n secureNote: SecureNote;\n attachments: Attachment[];\n fields: Field[];\n passwordHistory: Password[];\n collectionIds: string[];\n\n constructor(obj?: CipherData, alreadyEncrypted: boolean = false, localData: any = null) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n userId: null,\n organizationId: null,\n folderId: null,\n name: null,\n notes: null,\n }, alreadyEncrypted, ['id', 'userId', 'organizationId', 'folderId']);\n\n this.type = obj.type;\n this.favorite = obj.favorite;\n this.organizationUseTotp = obj.organizationUseTotp;\n this.edit = obj.edit;\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n this.collectionIds = obj.collectionIds;\n this.localData = localData;\n\n switch (this.type) {\n case CipherType.Login:\n this.login = new Login(obj.login, alreadyEncrypted);\n break;\n case CipherType.SecureNote:\n this.secureNote = new SecureNote(obj.secureNote, alreadyEncrypted);\n break;\n case CipherType.Card:\n this.card = new Card(obj.card, alreadyEncrypted);\n break;\n case CipherType.Identity:\n this.identity = new Identity(obj.identity, alreadyEncrypted);\n break;\n default:\n break;\n }\n\n if (obj.attachments != null) {\n this.attachments = [];\n obj.attachments.forEach((attachment) => {\n this.attachments.push(new Attachment(attachment, alreadyEncrypted));\n });\n } else {\n this.attachments = null;\n }\n\n if (obj.fields != null) {\n this.fields = [];\n obj.fields.forEach((field) => {\n this.fields.push(new Field(field, alreadyEncrypted));\n });\n } else {\n this.fields = null;\n }\n\n if (obj.passwordHistory != null) {\n this.passwordHistory = [];\n obj.passwordHistory.forEach((ph) => {\n this.passwordHistory.push(new Password(ph, alreadyEncrypted));\n });\n } else {\n this.passwordHistory = null;\n }\n }\n\n async decrypt(): Promise {\n const model = new CipherView(this);\n\n await this.decryptObj(model, {\n name: null,\n notes: null,\n }, this.organizationId);\n\n switch (this.type) {\n case CipherType.Login:\n model.login = await this.login.decrypt(this.organizationId);\n break;\n case CipherType.SecureNote:\n model.secureNote = await this.secureNote.decrypt(this.organizationId);\n break;\n case CipherType.Card:\n model.card = await this.card.decrypt(this.organizationId);\n break;\n case CipherType.Identity:\n model.identity = await this.identity.decrypt(this.organizationId);\n break;\n default:\n break;\n }\n\n const orgId = this.organizationId;\n\n if (this.attachments != null && this.attachments.length > 0) {\n const attachments: any[] = [];\n await this.attachments.reduce((promise, attachment) => {\n return promise.then(() => {\n return attachment.decrypt(orgId);\n }).then((decAttachment) => {\n attachments.push(decAttachment);\n });\n }, Promise.resolve());\n model.attachments = attachments;\n }\n\n if (this.fields != null && this.fields.length > 0) {\n const fields: any[] = [];\n await this.fields.reduce((promise, field) => {\n return promise.then(() => {\n return field.decrypt(orgId);\n }).then((decField) => {\n fields.push(decField);\n });\n }, Promise.resolve());\n model.fields = fields;\n }\n\n if (this.passwordHistory != null && this.passwordHistory.length > 0) {\n const passwordHistory: any[] = [];\n await this.passwordHistory.reduce((promise, ph) => {\n return promise.then(() => {\n return ph.decrypt(orgId);\n }).then((decPh) => {\n passwordHistory.push(decPh);\n });\n }, Promise.resolve());\n model.passwordHistory = passwordHistory;\n }\n\n return model;\n }\n\n toCipherData(userId: string): CipherData {\n const c = new CipherData();\n c.id = this.id;\n c.organizationId = this.organizationId;\n c.folderId = this.folderId;\n c.userId = this.organizationId != null ? userId : null;\n c.edit = this.edit;\n c.organizationUseTotp = this.organizationUseTotp;\n c.favorite = this.favorite;\n c.revisionDate = this.revisionDate != null ? this.revisionDate.toISOString() : null;\n c.type = this.type;\n c.collectionIds = this.collectionIds;\n\n this.buildDataModel(this, c, {\n name: null,\n notes: null,\n });\n\n switch (c.type) {\n case CipherType.Login:\n c.login = this.login.toLoginData();\n break;\n case CipherType.SecureNote:\n c.secureNote = this.secureNote.toSecureNoteData();\n break;\n case CipherType.Card:\n c.card = this.card.toCardData();\n break;\n case CipherType.Identity:\n c.identity = this.identity.toIdentityData();\n break;\n default:\n break;\n }\n\n if (this.fields != null) {\n c.fields = [];\n this.fields.forEach((field) => {\n c.fields.push(field.toFieldData());\n });\n }\n\n if (this.attachments != null) {\n c.attachments = [];\n this.attachments.forEach((attachment) => {\n c.attachments.push(attachment.toAttachmentData());\n });\n }\n\n if (this.passwordHistory != null) {\n c.passwordHistory = [];\n this.passwordHistory.forEach((ph) => {\n c.passwordHistory.push(ph.toPasswordHistoryData());\n });\n }\n return c;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\nimport { EventType } from 'jslib/enums/eventType';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\n\n@Injectable()\nexport class EventService {\n constructor(private i18nService: I18nService) { }\n\n getDefaultDateFilters() {\n const d = new Date();\n const end = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59);\n d.setDate(d.getDate() - 30);\n const start = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0);\n return [this.toDateTimeLocalString(start), this.toDateTimeLocalString(end)];\n }\n\n formatDateFilters(filterStart: string, filterEnd: string) {\n const start: Date = new Date(filterStart);\n const end: Date = new Date(filterEnd + ':59.999');\n if (isNaN(start.getTime()) || isNaN(end.getTime()) || end < start) {\n throw new Error('Invalid date range.');\n }\n return [start.toISOString(), end.toISOString()];\n }\n\n getEventInfo(ev: EventResponse, options = new EventOptions()): EventInfo {\n const appInfo = this.getAppInfo(ev.deviceType);\n return {\n message: this.getEventMessage(ev, options),\n appIcon: appInfo[0],\n appName: appInfo[1],\n };\n }\n\n private getEventMessage(ev: EventResponse, options: EventOptions) {\n let msg = '';\n switch (ev.type) {\n // User\n case EventType.User_LoggedIn:\n msg = this.i18nService.t('loggedIn');\n break;\n case EventType.User_ChangedPassword:\n msg = this.i18nService.t('changedPassword');\n break;\n case EventType.User_Updated2fa:\n msg = this.i18nService.t('enabledUpdated2fa');\n break;\n case EventType.User_Disabled2fa:\n msg = this.i18nService.t('disabled2fa');\n break;\n case EventType.User_Recovered2fa:\n msg = this.i18nService.t('recovered2fa');\n break;\n case EventType.User_FailedLogIn:\n msg = this.i18nService.t('failedLogin');\n break;\n case EventType.User_FailedLogIn2fa:\n msg = this.i18nService.t('failedLogin2fa');\n break;\n // Cipher\n case EventType.Cipher_Created:\n msg = this.i18nService.t('createdItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Updated:\n msg = this.i18nService.t('editedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Deleted:\n msg = this.i18nService.t('deletedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentCreated:\n msg = this.i18nService.t('createdAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentDeleted:\n msg = this.i18nService.t('deletedAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Shared:\n msg = this.i18nService.t('sharedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_UpdatedCollections:\n msg = this.i18nService.t('editedCollectionsForItem', this.formatCipherId(ev, options));\n break;\n // Collection\n case EventType.Collection_Created:\n msg = this.i18nService.t('createdCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Updated:\n msg = this.i18nService.t('editedCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Deleted:\n msg = this.i18nService.t('deletedCollectionId', this.formatCollectionId(ev));\n break;\n // Group\n case EventType.Group_Created:\n msg = this.i18nService.t('createdGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Updated:\n msg = this.i18nService.t('editedGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Deleted:\n msg = this.i18nService.t('deletedGroupId', this.formatGroupId(ev));\n break;\n // Org user\n case EventType.OrganizationUser_Invited:\n msg = this.i18nService.t('invitedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Confirmed:\n msg = this.i18nService.t('confirmedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Updated:\n msg = this.i18nService.t('editedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Removed:\n msg = this.i18nService.t('removedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_UpdatedGroups:\n msg = this.i18nService.t('editedGroupsForUser', this.formatOrgUserId(ev));\n break;\n // Org\n case EventType.Organization_Updated:\n msg = this.i18nService.t('editedOrgSettings');\n break;\n case EventType.Organization_PurgedVault:\n msg = this.i18nService.t('purgedOrganizationVault');\n break;\n default:\n break;\n }\n return msg === '' ? null : msg;\n }\n\n private getAppInfo(deviceType: DeviceType): [string, string] {\n switch (deviceType) {\n case DeviceType.Android:\n return ['fa-android', this.i18nService.t('mobile') + ' - Android'];\n case DeviceType.iOS:\n return ['fa-apple', this.i18nService.t('mobile') + ' - iOS'];\n case DeviceType.UWP:\n return ['fa-windows', this.i18nService.t('mobile') + ' - Windows'];\n case DeviceType.ChromeExtension:\n return ['fa-chrome', this.i18nService.t('extension') + ' - Chrome'];\n case DeviceType.FirefoxExtension:\n return ['fa-firefox', this.i18nService.t('extension') + ' - Firefox'];\n case DeviceType.OperaExtension:\n return ['fa-opera', this.i18nService.t('extension') + ' - Opera'];\n case DeviceType.EdgeExtension:\n return ['fa-edge', this.i18nService.t('extension') + ' - Edge'];\n case DeviceType.VivaldiExtension:\n return ['fa-puzzle-piece', this.i18nService.t('extension') + ' - Vivaldi'];\n case DeviceType.SafariExtension:\n return ['fa-safari', this.i18nService.t('extension') + ' - Safari'];\n case DeviceType.WindowsDesktop:\n return ['fa-windows', this.i18nService.t('desktop') + ' - Windows'];\n case DeviceType.MacOsDesktop:\n return ['fa-apple', this.i18nService.t('desktop') + ' - macOS'];\n case DeviceType.LinuxDesktop:\n return ['fa-linux', this.i18nService.t('desktop') + ' - Linux'];\n case DeviceType.ChromeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Chrome'];\n case DeviceType.FirefoxBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Firefox'];\n case DeviceType.OperaBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Opera'];\n case DeviceType.SafariBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Safari'];\n case DeviceType.VivaldiBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Vivaldi'];\n case DeviceType.EdgeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Edge'];\n case DeviceType.IEBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - IE'];\n case DeviceType.UnknownBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - ' + this.i18nService.t('unknown')];\n default:\n return ['fa-globe', this.i18nService.t('unknown')];\n }\n }\n\n private formatCipherId(ev: EventResponse, options: EventOptions) {\n const shortId = this.getShortId(ev.cipherId);\n if (ev.organizationId == null || !options.cipherInfo) {\n return '' + shortId + '';\n }\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/vault?search=' + shortId +\n '&viewEvents=' + ev.cipherId);\n return a.outerHTML;\n }\n\n private formatGroupId(ev: EventResponse) {\n const shortId = this.getShortId(ev.groupId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/groups?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatCollectionId(ev: EventResponse) {\n const shortId = this.getShortId(ev.collectionId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/collections?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatOrgUserId(ev: EventResponse) {\n const shortId = this.getShortId(ev.organizationUserId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/people?search=' + shortId +\n '&viewEvents=' + ev.organizationUserId);\n return a.outerHTML;\n }\n\n private makeAnchor(shortId: string) {\n const a = document.createElement('a');\n a.title = this.i18nService.t('view');\n a.innerHTML = '' + shortId + '';\n return a;\n }\n\n private getShortId(id: string) {\n return id.substring(0, 8);\n }\n\n private toDateTimeLocalString(date: Date) {\n return date.getFullYear() +\n '-' + this.pad(date.getMonth() + 1) +\n '-' + this.pad(date.getDate()) +\n 'T' + this.pad(date.getHours()) +\n ':' + this.pad(date.getMinutes());\n }\n\n private pad(num: number) {\n const norm = Math.floor(Math.abs(num));\n return (norm < 10 ? '0' : '') + norm;\n }\n}\n\nexport class EventInfo {\n message: string;\n appIcon: string;\n appName: string;\n}\n\nexport class EventOptions {\n cipherInfo = true;\n}\n","export enum OrganizationUserType {\r\n Owner = 0,\r\n Admin = 1,\r\n User = 2,\r\n Manager = 3,\r\n}\r\n","import { KdfType } from '../enums/kdfType';\nimport { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { DeviceRequest } from '../models/request/deviceRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\n\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService } from '../abstractions/user.service';\n\nexport const TwoFactorProviders = {\n [TwoFactorProviderType.Authenticator]: {\n type: TwoFactorProviderType.Authenticator,\n name: null as string,\n description: null as string,\n priority: 1,\n sort: 1,\n premium: false,\n },\n [TwoFactorProviderType.Yubikey]: {\n type: TwoFactorProviderType.Yubikey,\n name: null as string,\n description: null as string,\n priority: 3,\n sort: 2,\n premium: true,\n },\n [TwoFactorProviderType.Duo]: {\n type: TwoFactorProviderType.Duo,\n name: 'Duo',\n description: null as string,\n priority: 2,\n sort: 3,\n premium: true,\n },\n [TwoFactorProviderType.OrganizationDuo]: {\n type: TwoFactorProviderType.OrganizationDuo,\n name: 'Duo (Organization)',\n description: null as string,\n priority: 10,\n sort: 4,\n premium: false,\n },\n [TwoFactorProviderType.U2f]: {\n type: TwoFactorProviderType.U2f,\n name: null as string,\n description: null as string,\n priority: 4,\n sort: 5,\n premium: true,\n },\n [TwoFactorProviderType.Email]: {\n type: TwoFactorProviderType.Email,\n name: null as string,\n description: null as string,\n priority: 0,\n sort: 6,\n premium: false,\n },\n};\n\nexport class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType = null;\n\n private key: SymmetricCryptoKey;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private cryptoService: CryptoService, private apiService: ApiService,\n private userService: UserService, private tokenService: TokenService,\n private appIdService: AppIdService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private messagingService: MessagingService,\n private setCryptoKeys = true) { }\n\n init() {\n TwoFactorProviders[TwoFactorProviderType.Email].name = this.i18nService.t('emailTitle');\n TwoFactorProviders[TwoFactorProviderType.Email].description = this.i18nService.t('emailDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Authenticator].name = this.i18nService.t('authenticatorAppTitle');\n TwoFactorProviders[TwoFactorProviderType.Authenticator].description =\n this.i18nService.t('authenticatorAppDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Duo].description = this.i18nService.t('duoDesc');\n\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].name =\n 'Duo (' + this.i18nService.t('organization') + ')';\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].description =\n this.i18nService.t('duoOrganizationDesc');\n\n TwoFactorProviders[TwoFactorProviderType.U2f].name = this.i18nService.t('u2fTitle');\n TwoFactorProviders[TwoFactorProviderType.U2f].description = this.i18nService.t('u2fDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Yubikey].name = this.i18nService.t('yubiKeyTitle');\n TwoFactorProviders[TwoFactorProviderType.Yubikey].description = this.i18nService.t('yubiKeyDesc');\n }\n\n async logIn(email: string, masterPassword: string): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key);\n }\n\n async logInTwoFactor(twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean): Promise {\n return await this.logInHelper(this.email, this.masterPasswordHash, this.key, twoFactorProvider,\n twoFactorToken, remember);\n }\n\n async logInComplete(email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key, twoFactorProvider, twoFactorToken, remember);\n }\n\n logOut(callback: Function) {\n callback();\n this.messagingService.send('loggedOut');\n }\n\n getSupportedTwoFactorProviders(win: Window): any[] {\n const providers: any[] = [];\n if (this.twoFactorProviders == null) {\n return providers;\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.OrganizationDuo) &&\n this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.OrganizationDuo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Authenticator)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Authenticator]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Yubikey)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Yubikey]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Duo) && this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Duo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.U2f) && this.platformUtilsService.supportsU2f(win)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.U2f]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Email)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Email]);\n }\n\n return providers;\n }\n\n getDefaultTwoFactorProvider(u2fSupported: boolean): TwoFactorProviderType {\n if (this.twoFactorProviders == null) {\n return null;\n }\n\n if (this.selectedTwoFactorProviderType != null &&\n this.twoFactorProviders.has(this.selectedTwoFactorProviderType)) {\n return this.selectedTwoFactorProviderType;\n }\n\n let providerType: TwoFactorProviderType = null;\n let providerPriority = -1;\n this.twoFactorProviders.forEach((value, type) => {\n const provider = (TwoFactorProviders as any)[type];\n if (provider != null && provider.priority > providerPriority) {\n if (type === TwoFactorProviderType.U2f && !u2fSupported) {\n return;\n }\n\n providerType = type;\n providerPriority = provider.priority;\n }\n });\n\n return providerType;\n }\n\n async makePreloginKey(masterPassword: string, email: string): Promise {\n email = email.trim().toLowerCase();\n this.kdf = null;\n this.kdfIterations = null;\n try {\n const preloginResponse = await this.apiService.postPrelogin(new PreloginRequest(email));\n if (preloginResponse != null) {\n this.kdf = preloginResponse.kdf;\n this.kdfIterations = preloginResponse.kdfIterations;\n }\n } catch (e) {\n if (e == null || e.statusCode !== 404) {\n throw e;\n }\n }\n return this.cryptoService.makeKey(masterPassword, email, this.kdf, this.kdfIterations);\n }\n\n private async logInHelper(email: string, hashedPassword: string, key: SymmetricCryptoKey,\n twoFactorProvider?: TwoFactorProviderType, twoFactorToken?: string, remember?: boolean): Promise {\n const storedTwoFactorToken = await this.tokenService.getTwoFactorToken(email);\n const appId = await this.appIdService.getAppId();\n const deviceRequest = new DeviceRequest(appId, this.platformUtilsService);\n\n let request: TokenRequest;\n if (twoFactorToken != null && twoFactorProvider != null) {\n request = new TokenRequest(email, hashedPassword, twoFactorProvider, twoFactorToken, remember,\n deviceRequest);\n } else if (storedTwoFactorToken != null) {\n request = new TokenRequest(email, hashedPassword, TwoFactorProviderType.Remember,\n storedTwoFactorToken, false, deviceRequest);\n } else {\n request = new TokenRequest(email, hashedPassword, null, null, false, deviceRequest);\n }\n\n const response = await this.apiService.postIdentityToken(request);\n\n this.clearState();\n const result = new AuthResult();\n result.twoFactor = !(response as any).accessToken;\n\n if (result.twoFactor) {\n // two factor required\n const twoFactorResponse = response as IdentityTwoFactorResponse;\n this.email = email;\n this.masterPasswordHash = hashedPassword;\n this.key = this.setCryptoKeys ? key : null;\n this.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n result.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n return result;\n }\n\n const tokenResponse = response as IdentityTokenResponse;\n if (tokenResponse.twoFactorToken != null) {\n this.tokenService.setTwoFactorToken(tokenResponse.twoFactorToken, email);\n }\n\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n await this.userService.setInformation(this.tokenService.getUserId(), this.tokenService.getEmail(),\n this.kdf, this.kdfIterations);\n if (this.setCryptoKeys) {\n await this.cryptoService.setKey(key);\n await this.cryptoService.setKeyHash(hashedPassword);\n await this.cryptoService.setEncKey(tokenResponse.key);\n\n // User doesn't have a key pair yet (old account), let's generate one for them\n if (tokenResponse.privateKey == null) {\n try {\n const keyPair = await this.cryptoService.makeKeyPair();\n await this.apiService.postAccountKeys(new KeysRequest(keyPair[0], keyPair[1].encryptedString));\n tokenResponse.privateKey = keyPair[1].encryptedString;\n } catch (e) {\n // tslint:disable-next-line\n console.error(e);\n }\n }\n\n await this.cryptoService.setEncPrivateKey(tokenResponse.privateKey);\n }\n\n this.messagingService.send('loggedIn');\n return result;\n }\n\n private clearState(): void {\n this.email = null;\n this.masterPasswordHash = null;\n this.twoFactorProviders = null;\n this.selectedTwoFactorProviderType = null;\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from 'jslib/angular/components/groupings.component';\n\n@Component({\n selector: 'app-vault-groupings',\n templateUrl: 'groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n @Output() onSearchTextChanged = new EventEmitter();\n\n searchText: string = '';\n searchPlaceholder: string = null;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n searchTextChanged() {\n this.onSearchTextChanged.emit(this.searchText);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CiphersComponent as BaseCiphersComponent } from 'jslib/angular/components/ciphers.component';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nconst MaxCheckedCount = 500;\n\n@Component({\n selector: 'app-vault-ciphers',\n templateUrl: 'ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent implements OnDestroy {\n @Input() showAddNew = true;\n @Output() onAttachmentsClicked = new EventEmitter();\n @Output() onShareClicked = new EventEmitter();\n @Output() onCollectionsClicked = new EventEmitter();\n\n cipherType = CipherType;\n actionPromise: Promise;\n\n constructor(searchService: SearchService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected cipherService: CipherService) {\n super(searchService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n checkCipher(c: CipherView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n if (select) {\n this.selectAll(false);\n }\n const selectCount = select && this.ciphers.length > MaxCheckedCount ? MaxCheckedCount : this.ciphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(this.ciphers[i], select);\n }\n }\n\n getSelected(): CipherView[] {\n if (this.ciphers == null) {\n return [];\n }\n return this.ciphers.filter((c) => !!(c as any).checked);\n }\n\n getSelectedIds(): string[] {\n return this.getSelected().map((c) => c.id);\n }\n\n attachments(c: CipherView) {\n this.onAttachmentsClicked.emit(c);\n }\n\n share(c: CipherView) {\n this.onShareClicked.emit(c);\n }\n\n collections(c: CipherView) {\n this.onCollectionsClicked.emit(c);\n }\n\n async delete(c: CipherView): Promise {\n if (this.actionPromise != null) {\n return;\n }\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.deleteCipher(c.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Cipher' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItem'));\n this.refresh();\n } catch { }\n this.actionPromise = null;\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.analytics.eventTrack.next({ action: 'Copied ' + aType.toLowerCase() + ' from listing.' });\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.toasterService.popAsync('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n protected deleteCipher(id: string) {\n return this.cipherService.deleteWithServer(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return c.hasOldAttachments && c.organizationId == null;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AddEditComponent as BaseAddEditComponent } from 'jslib/angular/components/add-edit.component';\nimport { LoginUriView } from 'jslib/models/view/loginUriView';\n\n@Component({\n selector: 'app-vault-add-edit',\n templateUrl: 'add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n canAccessPremium: boolean;\n totpCode: string;\n totpCodeFormatted: string;\n totpDash: number;\n totpSec: number;\n totpLow: boolean;\n showRevisionDate = false;\n hasPasswordHistory = false;\n viewingPasswordHistory = false;\n\n protected totpInterval: number;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n protected totpService: TotpService, protected passwordGenerationService: PasswordGenerationService,\n protected messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService, messagingService);\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.launchUri);\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Copied ' + aType);\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n async generatePassword(): Promise {\n const confirmed = await super.generatePassword();\n if (confirmed) {\n const options = await this.passwordGenerationService.getOptions();\n this.cipher.login.password = await this.passwordGenerationService.generatePassword(options);\n }\n return confirmed;\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.cipher.organizationId });\n }\n\n viewHistory() {\n this.viewingPasswordHistory = !this.viewingPasswordHistory;\n }\n\n protected cleanUp() {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n\n protected async totpUpdateCode() {\n if (this.cipher == null || this.cipher.type !== CipherType.Login || this.cipher.login.totp == null) {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n return;\n }\n\n this.totpCode = await this.totpService.getCode(this.cipher.login.totp);\n if (this.totpCode != null) {\n if (this.totpCode.length > 4) {\n const half = Math.floor(this.totpCode.length / 2);\n this.totpCodeFormatted = this.totpCode.substring(0, half) + ' ' + this.totpCode.substring(half);\n } else {\n this.totpCodeFormatted = this.totpCode;\n }\n } else {\n this.totpCodeFormatted = null;\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n }\n\n private async totpTick(intervalSeconds: number) {\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const mod = epoch % intervalSeconds;\n\n this.totpSec = intervalSeconds - mod;\n this.totpDash = +(Math.round((((78.6 / intervalSeconds) * mod) + 'e+2') as any) + 'e-2');\n this.totpLow = this.totpSec <= 7;\n if (mod === 0) {\n await this.totpUpdateCode();\n }\n }\n}\n","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\n","export enum UriMatchType {\r\n Domain = 0,\r\n Host = 1,\r\n StartsWith = 2,\r\n Exact = 3,\r\n RegularExpression = 4,\r\n Never = 5,\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n Type,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviders } from 'jslib/services/auth.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorAuthenticatorComponent } from './two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './two-factor-recovery.component';\nimport { TwoFactorU2fComponent } from './two-factor-u2f.component';\nimport { TwoFactorYubiKeyComponent } from './two-factor-yubikey.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: 'two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent implements OnInit {\n @ViewChild('recoveryTemplate', { read: ViewContainerRef }) recoveryModalRef: ViewContainerRef;\n @ViewChild('authenticatorTemplate', { read: ViewContainerRef }) authenticatorModalRef: ViewContainerRef;\n @ViewChild('yubikeyTemplate', { read: ViewContainerRef }) yubikeyModalRef: ViewContainerRef;\n @ViewChild('u2fTemplate', { read: ViewContainerRef }) u2fModalRef: ViewContainerRef;\n @ViewChild('duoTemplate', { read: ViewContainerRef }) duoModalRef: ViewContainerRef;\n @ViewChild('emailTemplate', { read: ViewContainerRef }) emailModalRef: ViewContainerRef;\n\n organizationId: string;\n providers: any[] = [];\n canAccessPremium: boolean;\n loading = true;\n\n private modal: ModalComponent = null;\n\n constructor(protected apiService: ApiService, protected userService: UserService,\n protected componentFactoryResolver: ComponentFactoryResolver, protected messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n\n for (const key in TwoFactorProviders) {\n if (!TwoFactorProviders.hasOwnProperty(key)) {\n continue;\n }\n\n const p = (TwoFactorProviders as any)[key];\n if (this.filterProvider(p.type)) {\n continue;\n }\n\n this.providers.push({\n type: p.type,\n name: p.name,\n description: p.description,\n enabled: false,\n premium: p.premium,\n sort: p.sort,\n });\n }\n\n this.providers.sort((a: any, b: any) => a.sort - b.sort);\n await this.load();\n }\n\n async load() {\n this.loading = true;\n const providerList = await this.getTwoFactorProviders();\n providerList.data.forEach((p) => {\n this.providers.forEach((p2) => {\n if (p.type === p2.type) {\n p2.enabled = p.enabled;\n }\n });\n });\n this.loading = false;\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.Authenticator:\n const authComp = this.openModal(this.authenticatorModalRef, TwoFactorAuthenticatorComponent);\n authComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Authenticator);\n });\n break;\n case TwoFactorProviderType.Yubikey:\n const yubiComp = this.openModal(this.yubikeyModalRef, TwoFactorYubiKeyComponent);\n yubiComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Yubikey);\n });\n break;\n case TwoFactorProviderType.Duo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Duo);\n });\n break;\n case TwoFactorProviderType.Email:\n const emailComp = this.openModal(this.emailModalRef, TwoFactorEmailComponent);\n emailComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Email);\n });\n break;\n case TwoFactorProviderType.U2f:\n const u2fComp = this.openModal(this.u2fModalRef, TwoFactorU2fComponent);\n u2fComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.U2f);\n });\n break;\n default:\n break;\n }\n }\n\n recoveryCode() {\n this.openModal(this.recoveryModalRef, TwoFactorRecoveryComponent);\n }\n\n async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorProviders();\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type === TwoFactorProviderType.OrganizationDuo;\n }\n\n protected openModal(ref: ViewContainerRef, type: Type): T {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = ref.createComponent(factory).instance;\n const childComponent = this.modal.show(type, ref);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return childComponent;\n }\n\n protected updateStatus(enabled: boolean, type: TwoFactorProviderType) {\n if (!enabled && this.modal != null) {\n this.modal.close();\n }\n this.providers.forEach((p) => {\n if (p.type === type) {\n p.enabled = enabled;\n }\n });\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { ImportOption, ImportService } from 'jslib/abstractions/import.service';\n\n@Component({\n selector: 'app-import',\n templateUrl: 'import.component.html',\n})\nexport class ImportComponent implements OnInit {\n featuredImportOptions: ImportOption[];\n importOptions: ImportOption[];\n format: string = null;\n fileContents: string;\n formPromise: Promise;\n\n protected organizationId: string = null;\n protected successNavigate: any[] = ['vault'];\n\n constructor(protected i18nService: I18nService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected importService: ImportService,\n protected router: Router) { }\n\n ngOnInit() {\n this.setImportOptions();\n this.importOptions.sort((a, b) => {\n if (a.name == null && b.name != null) {\n return -1;\n }\n if (a.name != null && b.name == null) {\n return 1;\n }\n if (a.name == null && b.name == null) {\n return 0;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(a.name, b.name) :\n a.name.localeCompare(b.name);\n });\n }\n\n async submit() {\n const importer = this.importService.getImporter(this.format, this.organizationId != null);\n if (importer === null) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFormat'));\n return;\n }\n\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if ((files == null || files.length === 0) && (this.fileContents == null || this.fileContents === '')) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n let fileContents = this.fileContents;\n if (files != null && files.length > 0) {\n try {\n const content = await this.getFileContents(files[0]);\n if (content != null) {\n fileContents = content;\n }\n } catch { }\n }\n\n if (fileContents == null || fileContents === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n this.formPromise = this.importService.import(importer, fileContents, this.organizationId);\n const error = await this.formPromise;\n if (error != null) {\n this.error(error);\n return;\n }\n this.analytics.eventTrack.next({\n action: 'Imported Data',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('importSuccess'));\n this.router.navigate(this.successNavigate);\n } catch { }\n }\n\n getFormatInstructionTitle() {\n if (this.format == null) {\n return null;\n }\n\n const results = this.featuredImportOptions.concat(this.importOptions).filter((o) => o.id === this.format);\n if (results.length > 0) {\n return this.i18nService.t('instructionsFor', results[0].name);\n }\n return null;\n }\n\n protected setImportOptions() {\n this.featuredImportOptions = [{\n id: null,\n name: '-- ' + this.i18nService.t('select') + ' --',\n }, ...this.importService.featuredImportOptions];\n this.importOptions = this.importService.regularImportOptions;\n }\n\n private error(error: Error) {\n this.analytics.eventTrack.next({\n action: 'Import Data Failed',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'), error.message);\n }\n\n private getFileContents(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsText(file, 'utf-8');\n reader.onload = (evt) => {\n if (this.format === 'lastpasscsv' && file.type === 'text/html') {\n const parser = new DOMParser();\n const doc = parser.parseFromString((evt.target as any).result, 'text/html');\n const pre = doc.querySelector('pre');\n if (pre != null) {\n resolve(pre.textContent);\n return;\n }\n reject();\n return;\n }\n\n resolve((evt.target as any).result);\n };\n reader.onerror = () => {\n reject();\n };\n });\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from 'jslib/angular/components/export.component';\n\n@Component({\n selector: 'app-export',\n templateUrl: 'export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService) {\n super(cryptoService, i18nService, platformUtilsService, exportService, window);\n }\n\n protected saved() {\n super.saved();\n this.masterPassword = null;\n this.platformUtilsService.showToast('success', null, this.i18nService.t('exportSuccess'));\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: 'reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordUseMap: Map;\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const ciphersWithPasswords: CipherView[] = [];\n this.passwordUseMap = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n ciphersWithPasswords.push(c);\n if (this.passwordUseMap.has(c.login.password)) {\n this.passwordUseMap.set(c.login.password, this.passwordUseMap.get(c.login.password) + 1);\n } else {\n this.passwordUseMap.set(c.login.password, 1);\n }\n });\n const reusedPasswordCiphers = ciphersWithPasswords.filter((c) =>\n this.passwordUseMap.has(c.login.password) && this.passwordUseMap.get(c.login.password) > 1);\n this.ciphers = reusedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: 'unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends CipherReportComponent implements OnInit {\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const unsecuredCiphers = allCiphers.filter((c) => {\n if (c.type !== CipherType.Login || !c.login.hasUris) {\n return false;\n }\n return c.login.uris.some((u) => u.uri != null && u.uri.indexOf('http://') === 0);\n });\n this.ciphers = unsecuredCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: 'weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordStrengthMap = new Map();\n\n private passwordStrengthCache = new Map();\n\n constructor(protected cipherService: CipherService, protected passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const weakPasswordCiphers: CipherView[] = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const hasUsername = c.login.username != null && c.login.username.trim() !== '';\n const cacheKey = c.login.password + '_____' + (hasUsername ? c.login.username : '');\n if (!this.passwordStrengthCache.has(cacheKey)) {\n let userInput: string[] = [];\n if (hasUsername) {\n const atPosition = c.login.username.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(\n c.login.username.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/))\n .filter((i) => i.length >= 3);\n } else {\n userInput = c.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/)\n .filter((i) => i.length >= 3);\n }\n }\n const result = this.passwordGenerationService.passwordStrength(c.login.password,\n userInput.length > 0 ? userInput : null);\n this.passwordStrengthCache.set(cacheKey, result.score);\n }\n const score = this.passwordStrengthCache.get(cacheKey);\n if (score != null && score <= 3) {\n this.passwordStrengthMap.set(c.id, this.scoreKey(score));\n weakPasswordCiphers.push(c);\n }\n });\n this.ciphers = weakPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private scoreKey(score: number): [string, string] {\n switch (score) {\n case 4:\n return ['strong', 'success'];\n case 3:\n return ['good', 'primary'];\n case 2:\n return ['weak', 'warning'];\n default:\n return ['veryWeak', 'danger'];\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: 'exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n exposedPasswordMap = new Map();\n\n constructor(protected cipherService: CipherService, protected auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n ngOnInit() {\n this.checkAccess();\n }\n\n async load() {\n if (await this.checkAccess()) {\n super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const exposedPasswordCiphers: CipherView[] = [];\n const promises: Array> = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const promise = this.auditService.passwordLeaked(c.login.password).then((exposedCount) => {\n if (exposedCount > 0) {\n exposedPasswordCiphers.push(c);\n this.exposedPasswordMap.set(c.id, exposedCount);\n }\n });\n promises.push(promise);\n });\n await Promise.all(promises);\n this.ciphers = exposedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: 'inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends CipherReportComponent implements OnInit {\n services = new Map();\n cipherDocs = new Map();\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n try {\n await this.load2fa();\n } catch { }\n if (this.services.size > 0) {\n const allCiphers = await this.getAllCiphers();\n const inactive2faCiphers: CipherView[] = [];\n const promises: Array> = [];\n const docs = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || (c.login.totp != null && c.login.totp !== '') || !c.login.hasUris) {\n return;\n }\n for (let i = 0; i < c.login.uris.length; i++) {\n const u = c.login.uris[i];\n if (u.uri != null && u.uri !== '') {\n const hostname = Utils.getHostname(u.uri);\n if (hostname != null && this.services.has(hostname)) {\n if (this.services.get(hostname) != null) {\n docs.set(c.id, this.services.get(hostname));\n }\n inactive2faCiphers.push(c);\n break;\n }\n }\n }\n });\n await Promise.all(promises);\n this.ciphers = inactive2faCiphers;\n this.cipherDocs = docs;\n }\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private async load2fa() {\n if (this.services.size > 0) {\n return;\n }\n const response = await fetch(new Request('https://twofactorauth.org/data.json'));\n if (response.status !== 200) {\n throw new Error();\n }\n const responseJson = await response.json();\n for (const categoryName in responseJson) {\n if (responseJson.hasOwnProperty(categoryName)) {\n const category = responseJson[categoryName];\n for (const serviceName in category) {\n if (category.hasOwnProperty(serviceName)) {\n const service = category[serviceName];\n if (service.tfa && service.url != null) {\n const hostname = Utils.getHostname(service.url);\n if (hostname != null) {\n this.services.set(hostname, service.doc);\n }\n }\n }\n }\n }\n }\n }\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n@Pipe({\n name: 'search',\n})\nexport class SearchPipe implements PipeTransform {\n transform(items: any[], searchText: string, prop1?: string, prop2?: string, prop3?: string): any[] {\n if (items == null || items.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return items;\n }\n\n searchText = searchText.trim().toLowerCase();\n return items.filter((i) => {\n if (prop1 != null && i[prop1] != null && i[prop1].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop2 != null && i[prop2] != null && i[prop2].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop3 != null && i[prop3] != null && i[prop3].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n return false;\n });\n }\n}\n","export class SelectionReadOnlyRequest {\n id: string;\n readOnly: boolean;\n\n constructor(id: string, readOnly: boolean) {\n this.id = id;\n this.readOnly = readOnly;\n }\n}\n","export class SelectionReadOnlyResponse {\n id: string;\n readOnly: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.readOnly = response.ReadOnly;\n }\n}\n","import { EnvironmentService } from './environment.service';\r\n\r\nexport abstract class NotificationsService {\r\n init: (environmentService: EnvironmentService) => Promise;\r\n updateConnection: (sync?: boolean) => Promise;\r\n reconnectFromActivity: () => Promise;\r\n disconnectFromInactivity: () => Promise;\r\n}\r\n","export abstract class SettingsService {\r\n clearCache: () => void;\r\n getEquivalentDomains: () => Promise;\r\n setEquivalentDomains: (equivalentDomains: string[][]) => Promise;\r\n clear: (userId: string) => Promise;\r\n}\r\n","import {\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-frontend-layout',\n templateUrl: 'frontend-layout.component.html',\n})\nexport class FrontendLayoutComponent implements OnInit, OnDestroy {\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 document.body.classList.add('layout_frontend');\n }\n\n ngOnDestroy() {\n document.body.classList.remove('layout_frontend');\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { LoginComponent as BaseLoginComponent } from 'jslib/angular/components/login.component';\n\n@Component({\n selector: 'app-login',\n templateUrl: 'login.component.html',\n})\nexport class LoginComponent extends BaseLoginComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, private route: ActivatedRoute,\n storageService: StorageService, private stateService: StateService,\n platformUtilsService: PlatformUtilsService) {\n super(authService, router, platformUtilsService, i18nService, storageService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n async ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n await super.ngOnInit();\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { Router } from '@angular/router';\n\nimport { TwoFactorOptionsComponent } from './two-factor-options.component';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { EnvironmentService } from 'jslib/abstractions/environment.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { TwoFactorComponent as BaseTwoFactorComponent } from 'jslib/angular/components/two-factor.component';\n\n@Component({\n selector: 'app-two-factor',\n templateUrl: 'two-factor.component.html',\n})\nexport class TwoFactorComponent extends BaseTwoFactorComponent {\n @ViewChild('twoFactorOptions', { read: ViewContainerRef }) twoFactorOptionsModal: ViewContainerRef;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, apiService: ApiService,\n platformUtilsService: PlatformUtilsService, private stateService: StateService,\n environmentService: EnvironmentService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n anotherMethod() {\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n const modal = this.twoFactorOptionsModal.createComponent(factory).instance;\n const childComponent = modal.show(TwoFactorOptionsComponent,\n this.twoFactorOptionsModal);\n\n childComponent.onProviderSelected.subscribe(async (provider: TwoFactorProviderType) => {\n modal.close();\n this.selectedProviderType = provider;\n await this.init();\n });\n childComponent.onRecoverSelected.subscribe(() => {\n modal.close();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-password-strength',\n templateUrl: 'password-strength.component.html',\n})\nexport class PasswordStrengthComponent implements OnChanges {\n @Input() score?: number;\n @Input() showText = false;\n\n scoreWidth = 0;\n color = 'bg-danger';\n text: string;\n\n constructor(private i18nService: I18nService) { }\n\n ngOnChanges(): void {\n this.scoreWidth = this.score == null ? 0 : (this.score + 1) * 20;\n switch (this.score) {\n case 4:\n this.color = 'bg-success';\n this.text = this.i18nService.t('strong');\n break;\n case 3:\n this.color = 'bg-primary';\n this.text = this.i18nService.t('good');\n break;\n case 2:\n this.color = 'bg-warning';\n this.text = this.i18nService.t('weak');\n break;\n default:\n this.color = 'bg-danger';\n this.text = this.score != null ? this.i18nService.t('weak') : null;\n break;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { RegisterComponent as BaseRegisterComponent } from 'jslib/angular/components/register.component';\n\n@Component({\n selector: 'app-register',\n templateUrl: 'register.component.html',\n})\nexport class RegisterComponent extends BaseRegisterComponent {\n showCreateOrgMessage = false;\n showTerms = true;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, cryptoService: CryptoService,\n apiService: ApiService, private route: ActivatedRoute,\n stateService: StateService, platformUtilsService: PlatformUtilsService,\n passwordGenerationService: PasswordGenerationService) {\n super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,\n passwordGenerationService);\n this.showTerms = !platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe((qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.showCreateOrgMessage = true;\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.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 {\n constructor(router: Router, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, messagingService: MessagingService,\n userService: UserService, cryptoService: CryptoService,\n storageService: StorageService, lockService: LockService,\n private routerService: RouterService) {\n super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService,\n storageService, lockService);\n }\n\n async ngOnInit() {\n await super.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","export enum EncryptionType {\r\n AesCbc256_B64 = 0,\r\n AesCbc128_HmacSha256_B64 = 1,\r\n AesCbc256_HmacSha256_B64 = 2,\r\n Rsa2048_OaepSha256_B64 = 3,\r\n Rsa2048_OaepSha1_B64 = 4,\r\n Rsa2048_OaepSha256_HmacSha256_B64 = 5,\r\n Rsa2048_OaepSha1_HmacSha256_B64 = 6,\r\n}\r\n","import { 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 {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { VerifyEmailRequest } from 'jslib/models/request/verifyEmailRequest';\n\n@Component({\n selector: 'app-verify-email-token',\n templateUrl: 'verify-email-token.component.html',\n})\nexport class VerifyEmailTokenComponent implements OnInit {\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null) {\n try {\n await this.apiService.postAccountVerifyEmailToken(\n new VerifyEmailRequest(qParams.userId, qParams.token));\n const authed = await this.userService.isAuthenticated();\n if (authed) {\n await this.apiService.refreshIdentityToken();\n }\n this.toasterService.popAsync('success', null, this.i18nService.t('emailVerified'));\n this.router.navigate(['/']);\n return;\n } catch { }\n }\n this.toasterService.popAsync('error', null, this.i18nService.t('emailVerifiedFailed'));\n this.router.navigate(['/']);\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport {\r\n Toast,\r\n ToasterService,\r\n} from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { StateService } from 'jslib/abstractions/state.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\r\n\r\n@Component({\r\n selector: 'app-accept-organization',\r\n templateUrl: 'accept-organization.component.html',\r\n})\r\nexport class AcceptOrganizationComponent implements OnInit {\r\n loading = true;\r\n authed = false;\r\n orgName: string;\r\n email: string;\r\n actionPromise: Promise;\r\n\r\n constructor(private router: Router, private toasterService: ToasterService,\r\n private i18nService: I18nService, private route: ActivatedRoute,\r\n private apiService: ApiService, private userService: UserService,\r\n private stateService: StateService) { }\r\n\r\n ngOnInit() {\r\n let fired = false;\r\n this.route.queryParams.subscribe(async (qParams) => {\r\n if (fired) {\r\n return;\r\n }\r\n fired = true;\r\n await this.stateService.remove('orgInvitation');\r\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\r\n if (!error) {\r\n this.authed = await this.userService.isAuthenticated();\r\n if (this.authed) {\r\n const request = new OrganizationUserAcceptRequest();\r\n request.token = qParams.token;\r\n try {\r\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\r\n qParams.organizationUserId, request);\r\n await this.actionPromise;\r\n const toast: Toast = {\r\n type: 'success',\r\n title: this.i18nService.t('inviteAccepted'),\r\n body: this.i18nService.t('inviteAcceptedDesc'),\r\n timeout: 10000,\r\n };\r\n this.toasterService.popAsync(toast);\r\n this.router.navigate(['/vault']);\r\n } catch {\r\n error = true;\r\n }\r\n } else {\r\n await this.stateService.save('orgInvitation', qParams);\r\n this.email = qParams.email;\r\n this.orgName = qParams.organizationName;\r\n if (this.orgName != null) {\r\n // Fix URL encoding of space issue with Angular\r\n this.orgName = this.orgName.replace(/\\+/g, ' ');\r\n }\r\n }\r\n }\r\n\r\n if (error) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\r\n this.router.navigate(['/']);\r\n }\r\n\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoveryRequest } from 'jslib/models/request/twoFactorRecoveryRequest';\n\n@Component({\n selector: 'app-recover-two-factor',\n templateUrl: 'recover-two-factor.component.html',\n})\nexport class RecoverTwoFactorComponent {\n email: string;\n masterPassword: string;\n recoveryCode: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private cryptoService: CryptoService,\n private authService: AuthService) { }\n\n async submit() {\n try {\n const request = new TwoFactorRecoveryRequest();\n request.recoveryCode = this.recoveryCode.replace(/\\s/g, '').toLowerCase();\n request.email = this.email.trim().toLowerCase();\n const key = await this.authService.makePreloginKey(this.masterPassword, request.email);\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n this.formPromise = this.apiService.postTwoFactorRecover(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered 2FA' });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepRecoverDisabled'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeleteRecoverRequest } from 'jslib/models/request/deleteRecoverRequest';\n\n@Component({\n selector: 'app-recover-delete',\n templateUrl: 'recover-delete.component.html',\n})\nexport class RecoverDeleteComponent {\n email: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService) {\n }\n\n async submit() {\n try {\n const request = new DeleteRecoverRequest();\n request.email = this.email.trim().toLowerCase();\n this.formPromise = this.apiService.postAccountRecoverDelete(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Started Delete Recovery' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deleteRecoverEmailSent'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { VerifyDeleteRecoverRequest } from 'jslib/models/request/verifyDeleteRecoverRequest';\n\n@Component({\n selector: 'app-verify-recover-delete',\n templateUrl: 'verify-recover-delete.component.html',\n})\nexport class VerifyRecoverDeleteComponent implements OnInit {\n email: string;\n formPromise: Promise;\n\n private userId: string;\n private token: string;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute) {\n }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null && qParams.email != null) {\n this.userId = qParams.userId;\n this.token = qParams.token;\n this.email = qParams.email;\n } else {\n this.router.navigate(['/']);\n }\n });\n }\n\n async submit() {\n try {\n const request = new VerifyDeleteRecoverRequest(this.userId, this.token);\n this.formPromise = this.apiService.postAccountRecoverDeleteToken(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered Delete' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\n@Component({\n selector: 'app-navbar',\n templateUrl: 'navbar.component.html',\n})\nexport class NavbarComponent implements OnInit {\n selfHosted = false;\n name: string;\n email: string;\n\n constructor(private messagingService: MessagingService, private platformUtilsService: PlatformUtilsService,\n private tokenService: TokenService) {\n this.selfHosted = this.platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.name = await this.tokenService.getName();\n this.email = await this.tokenService.getEmail();\n if (this.name == null || this.name.trim() === '') {\n this.name = this.email;\n }\n }\n\n lock() {\n this.messagingService.send('lockVault');\n }\n\n logOut() {\n this.messagingService.send('logout');\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-footer',\n templateUrl: 'footer.component.html',\n})\nexport class FooterComponent implements OnInit {\n version: string;\n year: string = '2015';\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n ngOnInit() {\n this.year = new Date().getFullYear().toString();\n this.version = this.platformUtilsService.getApplicationVersion();\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-user-layout',\r\n templateUrl: 'user-layout.component.html',\r\n})\r\nexport class UserLayoutComponent implements OnInit {\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { OrganizationsComponent } from '../settings/organizations.component';\nimport { UpdateKeyComponent } from '../settings/update-key.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { BulkDeleteComponent } from './bulk-delete.component';\nimport { BulkMoveComponent } from './bulk-move.component';\nimport { BulkShareComponent } from './bulk-share.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { FolderAddEditComponent } from './folder-add-edit.component';\nimport { GroupingsComponent } from './groupings.component';\nimport { ShareComponent } from './share.component';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nconst BroadcasterSubscriptionId = 'VaultComponent';\n\n@Component({\n selector: 'app-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild(OrganizationsComponent) organizationsComponent: OrganizationsComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('folderAddEdit', { read: ViewContainerRef }) folderAddEditModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('share', { read: ViewContainerRef }) shareModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('bulkDeleteTemplate', { read: ViewContainerRef }) bulkDeleteModalRef: ViewContainerRef;\n @ViewChild('bulkMoveTemplate', { read: ViewContainerRef }) bulkMoveModalRef: ViewContainerRef;\n @ViewChild('bulkShareTemplate', { read: ViewContainerRef }) bulkShareModalRef: ViewContainerRef;\n @ViewChild('updateKeyTemplate', { read: ViewContainerRef }) updateKeyModalRef: ViewContainerRef;\n\n favorites: boolean = false;\n type: CipherType = null;\n folderId: string = null;\n collectionId: string = null;\n showVerifyEmail = false;\n showBrowserOutdated = false;\n showUpdateKey = false;\n showPremiumCallout = false;\n\n private modal: ModalComponent = null;\n\n constructor(private syncService: SyncService, private route: ActivatedRoute,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private tokenService: TokenService, private cryptoService: CryptoService,\n private messagingService: MessagingService, private userService: UserService,\n private platformUtilsService: PlatformUtilsService, private toasterService: ToasterService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (params) => {\n await this.syncService.fullSync(false);\n\n this.showUpdateKey = !(await this.cryptoService.hasEncKey());\n const canAccessPremium = await this.userService.canAccessPremium();\n this.showPremiumCallout = !this.showVerifyEmail && !canAccessPremium &&\n !this.platformUtilsService.isSelfHost();\n\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n ]);\n\n if (params == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (params.favorites) {\n this.groupingsComponent.selectedFavorites = true;\n await this.filterFavorites();\n } else if (params.type) {\n const t = parseInt(params.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t);\n } else if (params.folderId) {\n this.groupingsComponent.selectedFolder = true;\n this.groupingsComponent.selectedFolderId = params.folderId;\n await this.filterFolder(params.folderId);\n } else if (params.collectionId) {\n this.groupingsComponent.selectedCollectionId = params.collectionId;\n await this.filterCollection(params.collectionId);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n this.ciphersComponent.load(this.ciphersComponent.filter),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.load();\n this.clearFilters();\n this.go();\n }\n\n async filterFavorites() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFavorites');\n await this.ciphersComponent.load((c) => c.favorite);\n this.clearFilters();\n this.favorites = true;\n this.go();\n }\n\n async filterCipherType(type: CipherType) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n await this.ciphersComponent.load((c) => c.type === type);\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterFolder(folderId: string) {\n this.ciphersComponent.showAddNew = true;\n folderId = folderId === 'none' ? null : folderId;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFolder');\n await this.ciphersComponent.load((c) => c.folderId === folderId);\n this.clearFilters();\n this.folderId = folderId == null ? 'none' : folderId;\n this.go();\n }\n\n async filterCollection(collectionId: string) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n await this.ciphersComponent.load((c) => c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1);\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n async editCipherAttachments(cipher: CipherView) {\n const canAccessPremium = await this.userService.canAccessPremium();\n if (cipher.organizationId == null && !canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n } else if (cipher.organizationId != null) {\n const org = await this.userService.getOrganization(cipher.organizationId);\n if (org != null && (org.maxStorageGb == null || org.maxStorageGb === 0)) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onReuploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n shareCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.shareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(ShareComponent, this.shareModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSharedCipher.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n async addFolder() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = null;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async editFolder(folderId: string) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = folderId;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n childComponent.onDeletedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n await this.filterFolder('none');\n this.groupingsComponent.selectedFolderId = null;\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.type = this.type;\n component.folderId = this.folderId === 'none' ? null : this.folderId;\n if (this.collectionId != null) {\n const collection = this.groupingsComponent.collections.filter((c) => c.id === this.collectionId);\n if (collection.length > 0) {\n component.organizationId = collection[0].organizationId;\n component.collectionIds = [this.collectionId];\n }\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n bulkDelete() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkDeleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkDeleteComponent, this.bulkDeleteModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onDeleted.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n bulkShare() {\n const selectedCiphers = this.ciphersComponent.getSelected();\n if (selectedCiphers.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkShareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkShareComponent, this.bulkShareModalRef);\n\n childComponent.ciphers = selectedCiphers;\n childComponent.onShared.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n bulkMove() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkMoveModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkMoveComponent, this.bulkMoveModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onMoved.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n selectAll(select: boolean) {\n this.ciphersComponent.selectAll(select);\n }\n\n updateKey() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.updateKeyModalRef.createComponent(factory).instance;\n this.modal.show(UpdateKeyComponent, this.updateKeyModalRef);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.folderId = null;\n this.collectionId = null;\n this.favorites = false;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n favorites: this.favorites ? true : null,\n type: this.type,\n folderId: this.folderId,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherWithIdRequest extends CipherRequest {\n id: string;\n\n constructor(cipher: Cipher) {\n super(cipher);\n this.id = cipher.id;\n }\n}\n","import { Folder } from '../domain/folder';\r\n\r\nexport class FolderRequest {\r\n name: string;\r\n\r\n constructor(folder: Folder) {\r\n this.name = folder.name ? folder.name.encryptedString : null;\r\n }\r\n}\r\n","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 let updatePromise: Promise = null;\n if (this.organizationId == null) {\n updatePromise = this.apiService.postAccountLicense(fd);\n } else {\n updatePromise = this.apiService.postOrganizationLicenseUpdate(this.organizationId, fd);\n }\n\n this.formPromise = updatePromise.then(() => {\n return this.apiService.refreshIdentityToken();\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","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';\nimport { TransactionType } from 'jslib/enums/transactionType';\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 transactionType = TransactionType;\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 invoices() {\n return this.billing != null ? this.billing.invoices : null;\n }\n\n get transactions() {\n return this.billing != null ? this.billing.transactions : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n}\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { PaymentComponent } from './payment.component';\n\nimport { PlanType } from 'jslib/enums/planType';\nimport { OrganizationCreateRequest } from 'jslib/models/request/organizationCreateRequest';\n\n@Component({\n selector: 'app-create-organization',\n templateUrl: 'create-organization.component.html',\n})\nexport class CreateOrganizationComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n selfHosted = false;\n ownedBusiness = false;\n premiumAccessAddon = false;\n storageGbPriceMonthly = 0.33;\n additionalStorage = 0;\n additionalSeats = 0;\n plan = 'free';\n interval = 'year';\n name: string;\n billingEmail: string;\n businessName: string;\n\n storageGb: any = {\n price: 0.33,\n monthlyPrice: 0.50,\n yearlyPrice: 4,\n };\n\n plans: any = {\n free: {\n basePrice: 0,\n noAdditionalSeats: true,\n noPayment: true,\n },\n families: {\n basePrice: 1,\n annualBasePrice: 12,\n baseSeats: 5,\n noAdditionalSeats: true,\n annualPlanType: PlanType.FamiliesAnnually,\n canBuyPremiumAccessAddon: true,\n },\n teams: {\n basePrice: 5,\n annualBasePrice: 60,\n monthlyBasePrice: 8,\n baseSeats: 5,\n seatPrice: 2,\n annualSeatPrice: 24,\n monthlySeatPrice: 2.5,\n monthPlanType: PlanType.TeamsMonthly,\n annualPlanType: PlanType.TeamsAnnually,\n },\n enterprise: {\n seatPrice: 3,\n annualSeatPrice: 36,\n monthlySeatPrice: 4,\n monthPlanType: PlanType.EnterpriseMonthly,\n annualPlanType: PlanType.EnterpriseAnnually,\n },\n };\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private router: Router, private syncService: SyncService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent implements OnInit {\n canAccessPremium = false;\n\n constructor(private userService: UserService, private messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorComponent as BasePasswordGeneratorComponent,\n} from 'jslib/angular/components/password-generator.component';\n\nimport { ModalComponent } from '../modal.component';\nimport { PasswordGeneratorHistoryComponent } from './password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator',\n templateUrl: 'password-generator.component.html',\n})\nexport class PasswordGeneratorComponent extends BasePasswordGeneratorComponent {\n @ViewChild('historyTemplate', { read: ViewContainerRef }) historyModalRef: ViewContainerRef;\n\n private modal: ModalComponent = null;\n\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n\n history() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.historyModalRef.createComponent(factory).instance;\n this.modal.show(PasswordGeneratorHistoryComponent, this.historyModalRef);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { AuditService } from 'jslib/abstractions/audit.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\nimport { BreachAccountResponse } from 'jslib/models/response/breachAccountResponse';\r\n\r\n@Component({\r\n selector: 'app-breach-report',\r\n templateUrl: 'breach-report.component.html',\r\n})\r\nexport class BreachReportComponent implements OnInit {\r\n error = false;\r\n username: string;\r\n checkedUsername: string;\r\n breachedAccounts: BreachAccountResponse[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private auditService: AuditService, private userService: UserService) { }\r\n\r\n async ngOnInit() {\r\n this.username = await this.userService.getEmail();\r\n }\r\n\r\n async submit() {\r\n this.error = false;\r\n this.username = this.username.toLowerCase();\r\n try {\r\n this.formPromise = this.auditService.breachedAccounts(this.username);\r\n this.breachedAccounts = await this.formPromise;\r\n } catch {\r\n this.error = true;\r\n }\r\n this.checkedUsername = this.username;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCreateRequest } from 'jslib/models/request/cipherCreateRequest';\nimport { CipherRequest } from 'jslib/models/request/cipherRequest';\n\nimport { AddEditComponent as BaseAddEditComponent } from '../../vault/add-edit.component';\n\n@Component({\n selector: 'app-org-vault-add-edit',\n templateUrl: '../../vault/add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n organization: Organization;\n originalCipher: Cipher = null;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n totpService: TotpService, passwordGenerationService: PasswordGenerationService,\n private apiService: ApiService, 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 {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nconst BroadcasterSubscriptionId = 'OrganizationLayoutComponent';\n\n@Component({\n selector: 'app-organization-layout',\n templateUrl: 'organization-layout.component.html',\n})\nexport class OrganizationLayoutComponent implements OnInit, OnDestroy {\n organization: Organization;\n\n private organizationId: string;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n document.body.classList.remove('layout_frontend');\n this.route.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'updatedOrgLicense':\n await this.load();\n break;\n }\n });\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async load() {\n this.organization = await this.userService.getOrganization(this.organizationId);\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from '../../vault/groupings.component';\n\n@Component({\n selector: 'app-org-vault-groupings',\n templateUrl: '../../vault/groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService,\n private apiService: ApiService, private i18nService: I18nService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n async loadCollections() {\n if (!this.organization.isAdmin) {\n await super.loadCollections(this.organization.id);\n return;\n }\n\n const collections = await this.apiService.getCollections(this.organization.id);\n if (collections != null && collections.data != null && collections.data.length) {\n const collectionDomains = collections.data.map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collectionDomains);\n } else {\n this.collections = [];\n }\n\n const unassignedCollection = new CollectionView();\n unassignedCollection.name = this.i18nService.t('unassigned');\n unassignedCollection.id = 'unassigned';\n unassignedCollection.organizationId = this.organization.id;\n unassignedCollection.readOnly = true;\n this.collections.push(unassignedCollection);\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\n }\n\n collapse(grouping: CollectionView) {\n super.collapse(grouping, 'org_');\n }\n\n isCollapsed(grouping: CollectionView) {\n return super.isCollapsed(grouping, 'org_');\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CiphersComponent as BaseCiphersComponent } from '../../vault/ciphers.component';\n\n@Component({\n selector: 'app-org-vault-ciphers',\n templateUrl: '../../vault/ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent {\n @Output() onEventsClicked = new EventEmitter();\n\n organization: Organization;\n accessEvents = false;\n\n protected allCiphers: CipherView[] = [];\n\n constructor(searchService: SearchService, analytics: Angulartics2,\n toasterService: ToasterService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, cipherService: CipherService,\n private apiService: ApiService) {\n super(searchService, analytics, toasterService, i18nService, platformUtilsService, cipherService);\n }\n\n async load(filter: (cipher: CipherView) => boolean = null) {\n if (!this.organization.isAdmin) {\n await super.load(filter);\n return;\n }\n this.accessEvents = this.organization.useEvents;\n this.allCiphers = await this.cipherService.getAllFromApiForOrganization(this.organization.id);\n this.applyFilter(filter);\n this.loaded = true;\n }\n\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\n if (this.organization.isAdmin) {\n await super.applyFilter(filter);\n } else {\n const f = (c: CipherView) => c.organizationId === this.organization.id && (filter == null || filter(c));\n await super.applyFilter(f);\n }\n }\n\n search(timeout: number = null) {\n if (!this.organization.isAdmin) {\n return super.search(timeout);\n }\n this.searchPending = false;\n let filteredCiphers = this.allCiphers;\n if (this.filter != null) {\n filteredCiphers = filteredCiphers.filter(this.filter);\n }\n if (this.searchText == null || this.searchText.trim().length < 2) {\n this.ciphers = filteredCiphers;\n } else {\n this.ciphers = this.searchService.searchCiphersBasic(filteredCiphers, this.searchText);\n }\n }\n\n checkCipher(c: CipherView) {\n // do nothing\n }\n\n events(c: CipherView) {\n this.onEventsClicked.emit(c);\n }\n\n protected deleteCipher(id: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipher(id);\n }\n return this.apiService.deleteCipherAdmin(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return this.organization.isAdmin && c.hasOldAttachments;\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { ModalComponent } from '../../modal.component';\n\nimport { EntityEventsComponent } from '../manage/entity-events.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { GroupingsComponent } from './groupings.component';\n\nconst BroadcasterSubscriptionId = 'OrgVaultComponent';\n\n@Component({\n selector: 'app-org-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n\n organization: Organization;\n collectionId: string;\n type: CipherType;\n\n private modal: ModalComponent = null;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.groupingsComponent.organization = this.organization;\n this.ciphersComponent.organization = this.organization;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.ciphersComponent.searchText = this.groupingsComponent.searchText = qParams.search;\n if (!this.organization.isAdmin) {\n await this.syncService.fullSync(false);\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.ciphersComponent.refresh(),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n }\n await this.groupingsComponent.load();\n\n if (qParams == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (qParams.type) {\n const t = parseInt(qParams.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t, true);\n } else if (qParams.collectionId) {\n this.groupingsComponent.selectedCollectionId = qParams.collectionId;\n await this.filterCollection(qParams.collectionId, true);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n if (qParams.viewEvents != null) {\n const cipher = this.ciphersComponent.ciphers.filter((c) => c.id === qParams.viewEvents);\n if (cipher.length > 0) {\n this.viewEvents(cipher[0]);\n }\n }\n\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { EventService } from '../../services/event.service';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\n\n@Component({\n selector: 'app-entity-events',\n templateUrl: 'entity-events.component.html',\n})\nexport class EntityEventsComponent implements OnInit {\n @Input() name: string;\n @Input() entity: 'user' | 'cipher';\n @Input() entityId: string;\n @Input() organizationId: string;\n @Input() showUser = false;\n\n loading = true;\n loaded = false;\n events: any[];\n start: string;\n end: string;\n continuationToken: string;\n refreshPromise: Promise;\n morePromise: Promise;\n\n private orgUsersUserIdMap = new Map();\n private orgUsersIdMap = new Map();\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private eventService: EventService, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const defaultDates = this.eventService.getDefaultDateFilters();\n this.start = defaultDates[0];\n this.end = defaultDates[1];\n await this.load();\n }\n\n async load() {\n if (this.showUser) {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n response.data.forEach((u) => {\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\n });\n }\n await this.loadEvents(true);\n this.loaded = true;\n }\n\n async loadEvents(clearExisting: boolean) {\n if (this.refreshPromise != null || this.morePromise != null) {\n return;\n }\n\n let dates: string[] = null;\n try {\n dates = this.eventService.formatDateFilters(this.start, this.end);\n } catch (e) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidDateRange'));\n return;\n }\n\n this.loading = true;\n let response: ListResponse;\n try {\n let promise: Promise;\n if (this.entity === 'user') {\n promise = this.apiService.getEventsOrganizationUser(this.organizationId, this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n } else {\n promise = this.apiService.getEventsCipher(this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n }\n if (clearExisting) {\n this.refreshPromise = promise;\n } else {\n this.morePromise = promise;\n }\n response = await promise;\n } catch { }\n\n this.continuationToken = response.continuationToken;\n const events = response.data.map((r) => {\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\n const eventInfo = this.eventService.getEventInfo(r);\n const user = this.showUser && userId != null && this.orgUsersUserIdMap.has(userId) ?\n this.orgUsersUserIdMap.get(userId) : null;\n return {\n message: eventInfo.message,\n appIcon: eventInfo.appIcon,\n appName: eventInfo.appName,\n userId: userId,\n userName: user != null ? user.name : this.showUser ? this.i18nService.t('unknown') : null,\n userEmail: user != null ? user.email : this.showUser ? '' : null,\n date: r.date,\n ip: r.ipAddress,\n type: r.type,\n };\n });\n\n if (!clearExisting && this.events != null && this.events.length > 0) {\n this.events = this.events.concat(events);\n } else {\n this.events = events;\n }\n\n this.loading = false;\n this.morePromise = null;\n this.refreshPromise = null;\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent {\n organization: Organization;\n accessReports = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private messagingService: MessagingService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n this.accessReports = this.organization.useTotp;\n });\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n }\n}\n","import { Component } from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService } from 'jslib/abstractions/import.service';\r\n\r\nimport { ImportComponent as BaseImportComponent } from '../../tools/import.component';\r\n\r\n@Component({\r\n selector: 'app-org-import',\r\n templateUrl: '../../tools/import.component.html',\r\n})\r\nexport class ImportComponent extends BaseImportComponent {\r\n constructor(i18nService: I18nService, analytics: Angulartics2,\r\n toasterService: ToasterService, importService: ImportService,\r\n router: Router, private route: ActivatedRoute) {\r\n super(i18nService, analytics, toasterService, importService, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n this.successNavigate = ['organizations', this.organizationId, 'vault'];\r\n super.ngOnInit();\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from '../../tools/export.component';\n\n@Component({\n selector: 'app-org-export',\n templateUrl: '../../tools/export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n organizationId: string;\n\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService,\n private route: ActivatedRoute) {\n super(cryptoService, i18nService, platformUtilsService, exportService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n });\n }\n\n getExportData() {\n return this.exportService.getOrganizationExport(this.organizationId, this.format);\n }\n\n getFileName() {\n return super.getFileName('org');\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent,\n} from '../../tools/exposed-passwords-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: '../../tools/exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends BaseExposedPasswordsReportComponent {\n constructor(cipherService: CipherService, auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, auditService, componentFactoryResolver, messagingService, userService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent,\n} from '../../tools/inactive-two-factor-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: '../../tools/inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends BaseInactiveTwoFactorReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent,\n} from '../../tools/reused-passwords-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: '../../tools/reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends BaseReusedPasswordsReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent,\n} from '../../tools/unsecured-websites-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: '../../tools/unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends BaseUnsecuredWebsitesReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent,\n} from '../../tools/weak-passwords-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: '../../tools/weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends BaseWeakPasswordsReportComponent {\n constructor(cipherService: CipherService, passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, passwordGenerationService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-org-manage',\n templateUrl: 'manage.component.html',\n})\nexport class ManageComponent implements OnInit {\n organization: Organization;\n accessGroups = false;\n accessEvents = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.accessEvents = this.organization.useEvents;\n this.accessGroups = this.organization.useGroups;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport {\n CollectionDetailsResponse,\n CollectionResponse,\n} from 'jslib/models/response/collectionResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ModalComponent } from '../../modal.component';\nimport { CollectionAddEditComponent } from './collection-add-edit.component';\nimport { EntityUsersComponent } from './entity-users.component';\n\n@Component({\n selector: 'app-org-manage-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n collections: CollectionView[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private collectionService: CollectionService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private platformUtilsService: PlatformUtilsService,\n private userService: UserService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n });\n }\n\n async load() {\n const organization = await this.userService.getOrganization(this.organizationId);\n let response: ListResponse;\n if (organization.isAdmin) {\n response = await this.apiService.getCollections(this.organizationId);\n } else {\n response = await this.apiService.getUserCollections();\n }\n const collections = response.data.filter((c) => c.organizationId === this.organizationId).map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collections);\n this.loading = false;\n }\n\n edit(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n CollectionAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.collectionId = collection != null ? collection.id : null;\n childComponent.onSavedCollection.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedCollection.subscribe(() => {\n this.modal.close();\n this.removeCollection(collection);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(collection: CollectionView) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), collection.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteCollection(this.organizationId, collection.id);\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', collection.name));\n this.removeCollection(collection);\n } catch { }\n }\n\n users(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'collection';\n childComponent.entityId = collection.id;\n childComponent.entityName = collection.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.load();\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeCollection(collection: CollectionView) {\n const index = this.collections.indexOf(collection);\n if (index > -1) {\n this.collections.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-entity-users',\n templateUrl: 'entity-users.component.html',\n})\nexport class EntityUsersComponent implements OnInit {\n @Input() entity: 'group' | 'collection';\n @Input() entityId: string;\n @Input() entityName: string;\n @Input() organizationId: string;\n @Output() onEditedUsers = new EventEmitter();\n\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n\n showSelected = false;\n loading = true;\n formPromise: Promise;\n selectedCount = 0;\n searchText: string;\n\n private allUsers: OrganizationUserUserDetailsResponse[] = [];\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n await this.loadUsers();\n this.loading = false;\n }\n\n get users() {\n if (this.showSelected) {\n return this.allUsers.filter((u) => (u as any).checked);\n } else {\n return this.allUsers;\n }\n }\n\n async loadUsers() {\n const users = await this.apiService.getOrganizationUsers(this.organizationId);\n this.allUsers = users.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'email'));\n if (this.entity === 'group') {\n const response = await this.apiService.getGroupUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => u.id === s);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n }\n });\n }\n } else if (this.entity === 'collection') {\n const response = await this.apiService.getCollectionUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => !u.accessAll && u.id === s.id);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n (user[0] as any).readOnly = s.readOnly;\n }\n });\n }\n }\n\n this.allUsers.forEach((u) => {\n if (this.entity === 'collection' && u.accessAll) {\n (u as any).checked = true;\n }\n if ((u as any).checked) {\n this.selectedCount++;\n }\n });\n }\n\n check(u: OrganizationUserUserDetailsResponse) {\n if (this.entity === 'collection' && u.accessAll) {\n return;\n }\n (u as any).checked = !(u as any).checked;\n this.selectedChanged(u);\n }\n\n selectedChanged(u: OrganizationUserUserDetailsResponse) {\n if ((u as any).checked) {\n this.selectedCount++;\n } else {\n if (this.entity === 'collection') {\n (u as any).readOnly = false;\n }\n this.selectedCount--;\n }\n }\n\n filterSelected(showSelected: boolean) {\n this.showSelected = showSelected;\n }\n\n async submit() {\n try {\n if (this.entity === 'group') {\n const selections = this.users.filter((u) => (u as any).checked).map((u) => u.id);\n this.formPromise = this.apiService.putGroupUsers(this.organizationId, this.entityId, selections);\n } else {\n const selections = this.users.filter((u) => (u as any).checked && !u.accessAll)\n .map((u) => new SelectionReadOnlyRequest(u.id, !!(u as any).readOnly));\n this.formPromise = this.apiService.putCollectionUsers(this.organizationId, this.entityId, selections);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.entity === 'group' ? 'Edited Group Users' : 'Edited Collection Users',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedUsers'));\n this.onEditedUsers.emit();\n } catch { }\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { EventService } from '../../services/event.service';\r\n\r\nimport { EventResponse } from 'jslib/models/response/eventResponse';\r\nimport { ListResponse } from 'jslib/models/response/listResponse';\r\n\r\n@Component({\r\n selector: 'app-org-events',\r\n templateUrl: 'events.component.html',\r\n})\r\nexport class EventsComponent implements OnInit {\r\n loading = true;\r\n loaded = false;\r\n organizationId: string;\r\n events: any[];\r\n start: string;\r\n end: string;\r\n continuationToken: string;\r\n refreshPromise: Promise;\r\n morePromise: Promise;\r\n\r\n private orgUsersUserIdMap = new Map();\r\n private orgUsersIdMap = new Map();\r\n\r\n constructor(private apiService: ApiService, private route: ActivatedRoute,\r\n private eventService: EventService, private i18nService: I18nService,\r\n private toasterService: ToasterService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n const organization = await this.userService.getOrganization(this.organizationId);\r\n if (organization == null || !organization.useEvents) {\r\n this.router.navigate(['/organizations', this.organizationId]);\r\n return;\r\n }\r\n const defaultDates = this.eventService.getDefaultDateFilters();\r\n this.start = defaultDates[0];\r\n this.end = defaultDates[1];\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\r\n response.data.forEach((u) => {\r\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\r\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\r\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\r\n });\r\n await this.loadEvents(true);\r\n this.loaded = true;\r\n }\r\n\r\n async loadEvents(clearExisting: boolean) {\r\n if (this.refreshPromise != null || this.morePromise != null) {\r\n return;\r\n }\r\n\r\n let dates: string[] = null;\r\n try {\r\n dates = this.eventService.formatDateFilters(this.start, this.end);\r\n } catch (e) {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidDateRange'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n let response: ListResponse;\r\n try {\r\n const promise = this.apiService.getEventsOrganization(this.organizationId, dates[0], dates[1],\r\n clearExisting ? null : this.continuationToken);\r\n if (clearExisting) {\r\n this.refreshPromise = promise;\r\n } else {\r\n this.morePromise = promise;\r\n }\r\n response = await promise;\r\n } catch { }\r\n\r\n this.continuationToken = response.continuationToken;\r\n const events = response.data.map((r) => {\r\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\r\n const eventInfo = this.eventService.getEventInfo(r);\r\n const user = userId != null && this.orgUsersUserIdMap.has(userId) ?\r\n this.orgUsersUserIdMap.get(userId) : null;\r\n return {\r\n message: eventInfo.message,\r\n appIcon: eventInfo.appIcon,\r\n appName: eventInfo.appName,\r\n userId: userId,\r\n userName: user != null ? user.name : this.i18nService.t('unknown'),\r\n userEmail: user != null ? user.email : '',\r\n date: r.date,\r\n ip: r.ipAddress,\r\n type: r.type,\r\n };\r\n });\r\n\r\n if (!clearExisting && this.events != null && this.events.length > 0) {\r\n this.events = this.events.concat(events);\r\n } else {\r\n this.events = events;\r\n }\r\n\r\n this.loading = false;\r\n this.morePromise = null;\r\n this.refreshPromise = null;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityUsersComponent } from './entity-users.component';\nimport { GroupAddEditComponent } from './group-add-edit.component';\n\n@Component({\n selector: 'app-org-groups',\n templateUrl: 'groups.component.html',\n})\nexport class GroupsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n groups: GroupResponse[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private userService: UserService,\n private router: Router) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (organization == null || !organization.useGroups) {\n this.router.navigate(['/organizations', this.organizationId]);\n return;\n }\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getGroups(this.organizationId);\n const groups = response.data != null && response.data.length > 0 ? response.data : [];\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n this.loading = false;\n }\n\n edit(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n GroupAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.groupId = group != null ? group.id : null;\n childComponent.onSavedGroup.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedGroup.subscribe(() => {\n this.modal.close();\n this.removeGroup(group);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(group: GroupResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteGroupConfirmation'), group.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteGroup(this.organizationId, group.id);\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', group.name));\n this.removeGroup(group);\n } catch { }\n }\n\n users(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'group';\n childComponent.entityId = group.id;\n childComponent.entityName = group.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeGroup(group: GroupResponse) {\n const index = this.groups.indexOf(group);\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityEventsComponent } from './entity-events.component';\nimport { UserAddEditComponent } from './user-add-edit.component';\nimport { UserConfirmComponent } from './user-confirm.component';\nimport { UserGroupsComponent } from './user-groups.component';\n\n@Component({\n selector: 'app-org-people',\n templateUrl: 'people.component.html',\n})\nexport class PeopleComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('groupsTemplate', { read: ViewContainerRef }) groupsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n @ViewChild('confirmTemplate', { read: ViewContainerRef }) confirmModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n users: OrganizationUserUserDetailsResponse[];\n searchText: string;\n status: OrganizationUserStatusType = null;\n statusMap = new Map();\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n actionPromise: Promise;\n accessEvents = false;\n accessGroups = false;\n\n private modal: ModalComponent = null;\n private allUsers: OrganizationUserUserDetailsResponse[];\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private platformUtilsService: PlatformUtilsService, private analytics: Angulartics2,\n private toasterService: ToasterService, private cryptoService: CryptoService,\n private userService: UserService, private router: Router,\n private storageService: StorageService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (!organization.isAdmin) {\n this.router.navigate(['../collections'], { relativeTo: this.route });\n return;\n }\n this.accessEvents = organization.useEvents;\n this.accessGroups = organization.useGroups;\n await this.load();\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (qParams.viewEvents != null) {\n const user = this.users.filter((u) => u.id === qParams.viewEvents);\n if (user.length > 0 && user[0].status === OrganizationUserStatusType.Confirmed) {\n this.events(user[0]);\n }\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 { MessagingService } from 'jslib/abstractions/messaging.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';\nimport { TransactionType } from 'jslib/enums/transactionType';\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 transactionType = TransactionType;\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 messagingService: MessagingService, 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(updated: boolean) {\n this.showUpdateLicense = false;\n if (updated) {\n this.load();\n this.messagingService.send('updatedOrgLicense');\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 invoices() {\n return this.billing != null ? this.billing.invoices : null;\n }\n\n get transactions() {\n return this.billing != null ? this.billing.transactions : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : 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 = 522;","import * as jq from 'jquery';\nimport * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport {\n BodyOutputType,\n Toast,\n ToasterConfig,\n ToasterContainerComponent,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n SecurityContext,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport {\n NavigationEnd,\n Router,\n} from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { NotificationsService } from 'jslib/abstractions/notifications.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\nimport { SettingsService } from 'jslib/abstractions/settings.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { RouterService } from './services/router.service';\n\nconst BroadcasterSubscriptionId = 'AppComponent';\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\nconst IdleTimeout = 60000 * 10; // 10 minutes\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n})\nexport class AppComponent implements OnDestroy, OnInit {\n toasterConfig: ToasterConfig = new ToasterConfig({\n showCloseButton: true,\n mouseoverTimerStop: true,\n animation: 'flyRight',\n limit: 5,\n });\n\n private lastActivity: number = null;\n private idleTimer: number = null;\n private isIdle = false;\n\n constructor(private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics,\n private broadcasterService: BroadcasterService, private userService: UserService,\n private tokenService: TokenService, private folderService: FolderService,\n private settingsService: SettingsService, private syncService: SyncService,\n private passwordGenerationService: PasswordGenerationService, private cipherService: CipherService,\n private authService: AuthService, private router: Router, private analytics: Angulartics2,\n private toasterService: ToasterService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private ngZone: NgZone,\n private lockService: LockService, private storageService: StorageService,\n private cryptoService: CryptoService, private collectionService: CollectionService,\n private sanitizer: DomSanitizer, private searchService: SearchService,\n private notificationsService: NotificationsService, private routerService: RouterService) { }\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n window.onmousemove = () => this.recordActivity();\n window.onmousedown = () => this.recordActivity();\n window.ontouchstart = () => this.recordActivity();\n window.onclick = () => this.recordActivity();\n window.onscroll = () => this.recordActivity();\n window.onkeypress = () => this.recordActivity();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'loggedIn':\n case 'loggedOut':\n case 'unlocked':\n this.notificationsService.updateConnection(false);\n break;\n case 'logout':\n this.logOut(!!message.expired);\n break;\n case 'lockVault':\n await this.lockService.lock();\n break;\n case 'locked':\n this.notificationsService.updateConnection(false);\n this.router.navigate(['lock']);\n break;\n case 'syncStarted':\n break;\n case 'syncCompleted':\n break;\n case 'upgradeOrganization':\n const upgradeConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('upgradeOrganizationDesc'), this.i18nService.t('upgradeOrganization'),\n this.i18nService.t('upgradeOrganization'), this.i18nService.t('cancel'));\n if (upgradeConfirmed) {\n this.router.navigate(['organizations', message.organizationId, 'settings', 'billing']);\n }\n break;\n case 'premiumRequired':\n const premiumConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\n if (premiumConfirmed) {\n this.router.navigate(['settings/premium']);\n }\n break;\n case 'showToast':\n this.showToast(message);\n break;\n case 'analyticsEventTrack':\n this.analytics.eventTrack.next({\n action: message.action,\n properties: { label: message.label },\n });\n break;\n default:\n break;\n }\n });\n });\n\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n const modals = Array.from(document.querySelectorAll('.modal'));\n for (const modal of modals) {\n (jq(modal) as any).modal('hide');\n }\n\n if (document.querySelector('.swal-modal') != null) {\n swal.close(undefined);\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n private async logOut(expired: boolean) {\n const userId = await this.userService.getUserId();\n\n await Promise.all([\n this.syncService.setLastSync(new Date(0)),\n this.tokenService.clearToken(),\n this.cryptoService.clearKeys(),\n this.userService.clear(),\n this.settingsService.clear(userId),\n this.cipherService.clear(userId),\n this.folderService.clear(userId),\n this.collectionService.clear(userId),\n this.passwordGenerationService.clear(),\n ]);\n\n this.searchService.clearIndex();\n this.authService.logOut(async () => {\n this.analytics.eventTrack.next({ action: 'Logged Out' });\n if (expired) {\n this.toasterService.popAsync('warning', this.i18nService.t('loggedOut'),\n this.i18nService.t('loginExpired'));\n }\n this.router.navigate(['/']);\n });\n }\n\n private async recordActivity() {\n const now = (new Date()).getTime();\n if (this.lastActivity != null && now - this.lastActivity < 250) {\n return;\n }\n\n this.lastActivity = now;\n this.storageService.save(ConstantsService.lastActiveKey, now);\n\n // Idle states\n if (this.isIdle) {\n this.isIdle = false;\n this.idleStateChanged();\n }\n if (this.idleTimer != null) {\n window.clearTimeout(this.idleTimer);\n this.idleTimer = null;\n }\n this.idleTimer = window.setTimeout(() => {\n if (!this.isIdle) {\n this.isIdle = true;\n this.idleStateChanged();\n }\n }, IdleTimeout);\n }\n\n private showToast(msg: any) {\n const toast: Toast = {\n type: msg.type,\n title: msg.title,\n };\n if (typeof (msg.text) === 'string') {\n toast.body = msg.text;\n } else if (msg.text.length === 1) {\n toast.body = msg.text[0];\n } else {\n let message = '';\n msg.text.forEach((t: string) =>\n message += ('

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

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

\n \n

\n \n \n

{{'noOrganizationsList' | i18n}}

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

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

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

{{'noOrganizationsList' | i18n}}

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

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

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

' + new Date() + '

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

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

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

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

\n \n \n \n
\n
\n","export enum TransactionType {\n Charge = 0,\n Credit = 1,\n PromotionalCredit = 2,\n ReferralCredit = 3,\n Refund = 4,\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 {\r\n Pipe,\r\n PipeTransform,\r\n} from '@angular/core';\r\n\r\n/**\r\n * A pipe that sanitizes HTML and highlights numbers and special characters (in different colors each).\r\n */\r\n@Pipe({ name: 'colorPassword' })\r\nexport class ColorPasswordPipe implements PipeTransform {\r\n transform(password: string) {\r\n let colorizedPassword = '';\r\n for (let i = 0; i < password.length; i++) {\r\n let character = password[i];\r\n let isSpecial = false;\r\n // Sanitize HTML first.\r\n switch (character) {\r\n case '&':\r\n character = '&';\r\n isSpecial = true;\r\n break;\r\n case '<':\r\n character = '<';\r\n isSpecial = true;\r\n break;\r\n case '>':\r\n character = '>';\r\n isSpecial = true;\r\n break;\r\n case ' ':\r\n character = ' ';\r\n isSpecial = true;\r\n break;\r\n default:\r\n break;\r\n }\r\n let type = 'letter';\r\n if (isSpecial || character.match(/[^\\w ]/)) {\r\n type = 'special';\r\n } else if (character.match(/\\d/)) {\r\n type = 'number';\r\n }\r\n colorizedPassword += '' + character + '';\r\n }\r\n return colorizedPassword;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n} from '@angular/core';\r\n\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\n@Directive({\r\n selector: '[appFlexCopy]',\r\n})\r\nexport class FlexCopyDirective {\r\n constructor(private el: ElementRef, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n @HostListener('copy') onCopy() {\r\n if (window == null) {\r\n return;\r\n }\r\n let copyText = '';\r\n const selection = window.getSelection();\r\n for (let i = 0; i < selection.rangeCount; i++) {\r\n const range = selection.getRangeAt(i);\r\n const text = range.toString();\r\n copyText += text;\r\n }\r\n this.platformUtilsService.copyToClipboard(copyText, { window: window });\r\n }\r\n}\r\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 = null;\r\n url: string = null;\r\n size: number = null;\r\n sizeName: string = null;\r\n fileName: string = null;\r\n key: SymmetricCryptoKey = null;\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 { 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 = null;\r\n lastUsedDate: Date = null;\r\n\r\n constructor(ph?: Password) {\r\n if (!ph) {\r\n return;\r\n }\r\n\r\n this.lastUsedDate = ph.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteData } from '../data/secureNoteData';\n\nimport Domain from './domainBase';\n\nimport { SecureNoteView } from '../view/secureNoteView';\n\nexport class SecureNote extends Domain {\n type: SecureNoteType;\n\n constructor(obj?: SecureNoteData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n }\n\n decrypt(orgId: string): Promise {\n return Promise.resolve(new SecureNoteView(this));\n }\n\n toSecureNoteData(): SecureNoteData {\n const n = new SecureNoteData();\n n.type = this.type;\n return n;\n }\n}\n","import { CipherRequest } from './cipherRequest';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nexport class CipherCreateRequest {\r\n cipher: CipherRequest;\r\n collectionIds: string[];\r\n\r\n constructor(cipher: Cipher) {\r\n this.cipher = new CipherRequest(cipher);\r\n this.collectionIds = cipher.collectionIds;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from '../../vault/attachments.component';\n\n@Component({\n selector: 'app-org-vault-attachments',\n templateUrl: '../../vault/attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n organization: Organization;\n\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService, private apiService: ApiService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.organization.isAdmin && this.showFixOldAttachments(attachment)) {\n await super.reuploadCipherAttachment(attachment, true);\n }\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected saveCipherAttachment(file: File) {\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file, this.organization.isAdmin);\n }\n\n protected deleteCipherAttachment(attachmentId: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipherAttachment(attachmentId);\n }\n return this.apiService.deleteCipherAttachmentAdmin(this.cipherId, attachmentId);\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.organization.isAdmin;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCollectionsRequest } from 'jslib/models/request/cipherCollectionsRequest';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from '../../vault/collections.component';\n\n@Component({\n selector: 'app-org-vault-collections',\n templateUrl: '../../vault/collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService,\n private apiService: ApiService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected loadCipherCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCipherCollections();\n }\n return this.collectionIds;\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected saveCollections() {\n if (this.organization.isAdmin) {\n const request = new CipherCollectionsRequest(this.cipherDomain.collectionIds);\n return this.apiService.putCipherCollectionsAdmin(this.cipherId, request);\n } else {\n return super.saveCollections();\n }\n }\n}\n","export class CipherCollectionsRequest {\n collectionIds: string[];\n\n constructor(collectionIds: string[]) {\n this.collectionIds = collectionIds == null ? [] : collectionIds;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\nimport { CollectionRequest } from 'jslib/models/request/collectionRequest';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-collection-add-edit',\n templateUrl: 'collection-add-edit.component.html',\n})\nexport class CollectionAddEditComponent implements OnInit {\n @Input() collectionId: string;\n @Input() organizationId: string;\n @Output() onSavedCollection = new EventEmitter();\n @Output() onDeletedCollection = new EventEmitter();\n\n loading = true;\n editMode: boolean = false;\n accessGroups: boolean = false;\n title: string;\n name: string;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n deletePromise: Promise;\n\n private orgKey: SymmetricCryptoKey;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private userService: UserService) { }\n\n async ngOnInit() {\n const organization = await this.userService.getOrganization(this.organizationId);\n this.accessGroups = organization.useGroups;\n this.editMode = this.loading = this.collectionId != null;\n if (this.accessGroups) {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n this.groups = groupsResponse.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n this.orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n\n if (this.editMode) {\n this.editMode = true;\n this.title = this.i18nService.t('editCollection');\n try {\n const collection = await this.apiService.getCollectionDetails(this.organizationId, this.collectionId);\n this.name = await this.cryptoService.decryptToUtf8(new CipherString(collection.name), this.orgKey);\n if (collection.groups != null && this.groups.length > 0) {\n collection.groups.forEach((s) => {\n const group = this.groups.filter((g) => !g.accessAll && g.id === s.id);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n (group[0] as any).readOnly = s.readOnly;\n }\n });\n }\n } catch { }\n } else {\n this.title = this.i18nService.t('addCollection');\n }\n\n this.groups.forEach((g) => {\n if (g.accessAll) {\n (g as any).checked = true;\n }\n });\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n if (g.accessAll) {\n return;\n }\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n if (this.orgKey == null) {\n throw new Error('No encryption key for this organization.');\n }\n\n const request = new CollectionRequest();\n request.name = (await this.cryptoService.encrypt(this.name, this.orgKey)).encryptedString;\n request.groups = this.groups.filter((g) => (g as any).checked && !g.accessAll)\n .map((g) => new SelectionReadOnlyRequest(g.id, !!(g as any).readOnly));\n\n try {\n if (this.editMode) {\n this.formPromise = this.apiService.putCollection(this.organizationId, this.collectionId, request);\n } else {\n this.formPromise = this.apiService.postCollection(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Collection' : 'Created Collection' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t(this.editMode ? 'editedCollectionId' : 'createdCollectionId', this.name));\n this.onSavedCollection.emit();\n } catch { }\n }\n\n async delete() {\n if (!this.editMode) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), this.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.deletePromise = this.apiService.deleteCollection(this.organizationId, this.collectionId);\n await this.deletePromise;\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', this.name));\n this.onDeletedCollection.emit();\n } catch { }\n }\n}\n","import { Collection } from '../domain/collection';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class CollectionRequest {\n name: string;\n groups: SelectionReadOnlyRequest[] = [];\n\n constructor(collection?: Collection) {\n if (collection == null) {\n return;\n }\n this.name = collection.name ? collection.name.encryptedString : null;\n }\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { GroupRequest } from 'jslib/models/request/groupRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\n@Component({\r\n selector: 'app-group-add-edit',\r\n templateUrl: 'group-add-edit.component.html',\r\n})\r\nexport class GroupAddEditComponent implements OnInit {\r\n @Input() groupId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedGroup = new EventEmitter();\r\n @Output() onDeletedGroup = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n name: string;\r\n externalId: string;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.groupId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editGroup');\r\n try {\r\n const group = await this.apiService.getGroupDetails(this.organizationId, this.groupId);\r\n this.access = group.accessAll ? 'all' : 'selected';\r\n this.name = group.name;\r\n this.externalId = group.externalId;\r\n if (group.collections != null && this.collections != null) {\r\n group.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('addGroup');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n const request = new GroupRequest();\r\n request.name = this.name;\r\n request.externalId = this.externalId;\r\n request.accessAll = this.access === 'all';\r\n if (!request.accessAll) {\r\n request.collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n this.formPromise = this.apiService.putGroup(this.organizationId, this.groupId, request);\r\n } else {\r\n this.formPromise = this.apiService.postGroup(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Group' : 'Created Group' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedGroupId' : 'createdGroupId', this.name));\r\n this.onSavedGroup.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteGroupConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteGroup(this.organizationId, this.groupId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', this.name));\r\n this.onDeletedGroup.emit();\r\n } catch { }\r\n }\r\n}\r\n","export class OrganizationUserConfirmRequest {\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { OrganizationUserInviteRequest } from 'jslib/models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateRequest } from 'jslib/models/request/organizationUserUpdateRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Component({\r\n selector: 'app-user-add-edit',\r\n templateUrl: 'user-add-edit.component.html',\r\n})\r\nexport class UserAddEditComponent implements OnInit {\r\n @Input() name: string;\r\n @Input() organizationUserId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedUser = new EventEmitter();\r\n @Output() onDeletedUser = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n emails: string;\r\n type: OrganizationUserType = OrganizationUserType.User;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n organizationUserType = OrganizationUserType;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.organizationUserId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editUser');\r\n try {\r\n const user = await this.apiService.getOrganizationUser(this.organizationId, this.organizationUserId);\r\n this.access = user.accessAll ? 'all' : 'selected';\r\n this.type = user.type;\r\n if (user.collections != null && this.collections != null) {\r\n user.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('inviteUser');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n let collections: SelectionReadOnlyRequest[] = null;\r\n if (this.access !== 'all') {\r\n collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n const request = new OrganizationUserUpdateRequest();\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.putOrganizationUser(this.organizationId, this.organizationUserId,\r\n request);\r\n } else {\r\n const request = new OrganizationUserInviteRequest();\r\n request.emails = this.emails.trim().split(/\\s*,\\s*/);\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.postOrganizationUserInvite(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited User' : 'Invited User' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedUserId' : 'invitedUsers', this.name));\r\n this.onSavedUser.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('removeUserConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteOrganizationUser(this.organizationId, this.organizationUserId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted User' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', this.name));\r\n this.onDeletedUser.emit();\r\n } catch { }\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-confirm',\n templateUrl: 'user-confirm.component.html',\n})\nexport class UserConfirmComponent implements OnInit {\n @Input() name: string;\n @Input() userId: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onConfirmedUser = new EventEmitter();\n\n dontAskAgain = false;\n loading = true;\n fingerprint: string;\n formPromise: Promise;\n\n private publicKey: Uint8Array = null;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private storageService: StorageService) { }\n\n async ngOnInit() {\n try {\n const publicKeyResponse = await this.apiService.getUserPublicKey(this.userId);\n if (publicKeyResponse != null) {\n this.publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n const fingerprint = await this.cryptoService.getFingerprint(this.userId, this.publicKey.buffer);\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n } catch { }\n this.loading = false;\n }\n\n async submit() {\n if (this.loading) {\n return;\n }\n\n if (this.dontAskAgain) {\n await this.storageService.save(ConstantsService.autoConfirmFingerprints, true);\n }\n\n try {\n this.formPromise = this.doConfirmation();\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', this.name));\n this.onConfirmedUser.emit();\n } catch { }\n }\n\n private async doConfirmation() {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, this.publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, this.organizationUserId, request);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserUpdateGroupsRequest } from 'jslib/models/request/organizationUserUpdateGroupsRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-groups',\n templateUrl: 'user-groups.component.html',\n})\nexport class UserGroupsComponent implements OnInit {\n @Input() name: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onSavedUser = new EventEmitter();\n\n loading = true;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n const groups = groupsResponse.data.map((r) => r);\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n\n try {\n const userGroups = await this.apiService.getOrganizationUserGroups(\n this.organizationId, this.organizationUserId);\n if (userGroups != null && this.groups != null) {\n userGroups.forEach((ug) => {\n const group = this.groups.filter((g) => g.id === ug);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n }\n });\n }\n } catch { }\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n const request = new OrganizationUserUpdateGroupsRequest();\n request.groupIds = this.groups.filter((g) => (g as any).checked).map((g) => g.id);\n\n try {\n this.formPromise = this.apiService.putOrganizationUserGroups(this.organizationId, this.organizationUserId,\n request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Edited User Groups' });\n this.toasterService.popAsync('success', null, this.i18nService.t('editedGroupsForUser', this.name));\n this.onSavedUser.emit();\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-organization',\n templateUrl: 'delete-organization.component.html',\n})\nexport class DeleteOrganizationComponent {\n organizationId: string;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteOrganization(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationDeleted'),\n this.i18nService.t('organizationDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { SeatRequest } from 'jslib/models/request/seatRequest';\n\n@Component({\n selector: 'app-adjust-seats',\n templateUrl: 'adjust-seats.component.html',\n})\nexport class AdjustSeatsComponent {\n @Input() seatPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n seatAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new SeatRequest();\n request.seatAdjustment = this.seatAdjustment;\n if (!this.add) {\n request.seatAdjustment *= -1;\n }\n\n this.formPromise = this.apiService.postOrganizationSeat(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Seats' : 'Removed Seats' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedSeats', request.seatAdjustment.toString()));\n this.onAdjusted.emit(this.seatAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedSeatTotal(): number {\n return this.seatAdjustment * this.seatPrice;\n }\n}\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appBoxRow]',\r\n})\r\nexport class BoxRowDirective implements OnInit {\r\n el: HTMLElement = null;\r\n formEls: Element[];\r\n\r\n constructor(private elRef: ElementRef) {\r\n this.el = elRef.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formEls = Array.from(this.el.querySelectorAll('input:not([type=\"hidden\"]), select, textarea'));\r\n this.formEls.forEach((formEl) => {\r\n formEl.addEventListener('focus', (event: Event) => {\r\n this.el.classList.add('active');\r\n }, false);\r\n\r\n formEl.addEventListener('blur', (event: Event) => {\r\n this.el.classList.remove('active');\r\n }, false);\r\n });\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick(event: Event) {\r\n const target = event.target as HTMLElement;\r\n if (target !== this.el && !target.classList.contains('progress') &&\r\n !target.classList.contains('progress-bar')) {\r\n return;\r\n }\r\n\r\n if (this.formEls.length > 0) {\r\n const formEl = (this.formEls[0] as HTMLElement);\r\n if (formEl.tagName.toLowerCase() === 'input') {\r\n const inputEl = (formEl as HTMLInputElement);\r\n if (inputEl.type != null && inputEl.type.toLowerCase() === 'checkbox') {\r\n inputEl.click();\r\n return;\r\n }\r\n }\r\n formEl.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n forwardRef,\r\n HostListener,\r\n Input,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n NgControl,\r\n} from '@angular/forms';\r\n\r\n// ref: https://juristr.com/blog/2018/02/ng-true-value-directive/\r\n@Directive({\r\n selector: 'input[type=checkbox][appTrueFalseValue]',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => TrueFalseValueDirective),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TrueFalseValueDirective implements ControlValueAccessor {\r\n @Input() trueValue = true;\r\n @Input() falseValue = false;\r\n\r\n constructor(private elementRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @HostListener('change', ['$event'])\r\n onHostChange(ev: any) {\r\n this.propagateChange(ev.target.checked ? this.trueValue : this.falseValue);\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj === this.trueValue) {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', true);\r\n } else {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false);\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void { /* nothing */ }\r\n\r\n setDisabledState?(isDisabled: boolean): void { /* nothing */ }\r\n\r\n private propagateChange = (_: any) => { /* nothing */ };\r\n}\r\n","import { DeviceType } from '../enums/deviceType';\n\nimport { ApiService as ApiServiceAbstraction } from '../abstractions/api.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\n\nimport { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\nimport { EmailRequest } from '../models/request/emailRequest';\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { GroupRequest } from '../models/request/groupRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KdfRequest } from '../models/request/kdfRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\nimport { PasswordRequest } from '../models/request/passwordRequest';\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\nimport { PaymentRequest } from '../models/request/paymentRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { RegisterRequest } from '../models/request/registerRequest';\nimport { SeatRequest } from '../models/request/seatRequest';\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\nimport { StorageRequest } from '../models/request/storageRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\n\nimport { BillingResponse } from '../models/response/billingResponse';\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport {\n CollectionGroupDetailsResponse,\n CollectionResponse,\n} from '../models/response/collectionResponse';\nimport { DomainsResponse } from '../models/response/domainsResponse';\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { EventResponse } from '../models/response/eventResponse';\nimport { FolderResponse } from '../models/response/folderResponse';\nimport {\n GroupDetailsResponse,\n GroupResponse,\n} from '../models/response/groupResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\nimport { ListResponse } from '../models/response/listResponse';\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\nimport { OrganizationResponse } from '../models/response/organizationResponse';\nimport {\n OrganizationUserDetailsResponse,\n OrganizationUserUserDetailsResponse,\n} from '../models/response/organizationUserResponse';\nimport { PreloginResponse } from '../models/response/preloginResponse';\nimport { ProfileResponse } from '../models/response/profileResponse';\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\nimport { SyncResponse } from '../models/response/syncResponse';\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from '../models/response/twoFactorU2fResponse';\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\n\nexport class ApiService implements ApiServiceAbstraction {\n urlsSet: boolean = false;\n apiBaseUrl: string;\n identityBaseUrl: string;\n\n private deviceType: string;\n private isWebClient = false;\n private isDesktopClient = false;\n private usingBaseUrl = false;\n\n constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService,\n private logoutCallback: (expired: boolean) => Promise) {\n const device = platformUtilsService.getDevice();\n this.deviceType = device.toString();\n this.isWebClient = device === DeviceType.IEBrowser || device === DeviceType.ChromeBrowser ||\n device === DeviceType.EdgeBrowser || device === DeviceType.FirefoxBrowser ||\n device === DeviceType.OperaBrowser || device === DeviceType.SafariBrowser ||\n device === DeviceType.UnknownBrowser || device === DeviceType.VivaldiBrowser;\n this.isDesktopClient = device === DeviceType.WindowsDesktop || device === DeviceType.MacOsDesktop ||\n device === DeviceType.LinuxDesktop;\n }\n\n setUrls(urls: EnvironmentUrls): void {\n this.urlsSet = true;\n\n if (urls.base != null) {\n this.usingBaseUrl = true;\n this.apiBaseUrl = urls.base + '/api';\n this.identityBaseUrl = urls.base + '/identity';\n return;\n }\n\n if (urls.api != null && urls.identity != null) {\n this.apiBaseUrl = urls.api;\n this.identityBaseUrl = urls.identity;\n return;\n }\n\n /* tslint:disable */\n // Local Dev\n //this.apiBaseUrl = 'http://localhost:4000';\n //this.identityBaseUrl = 'http://localhost:33656';\n\n // Production\n this.apiBaseUrl = 'https://api.bitwarden.com';\n this.identityBaseUrl = 'https://identity.bitwarden.com';\n /* tslint:enable */\n }\n\n // Auth APIs\n\n async postIdentityToken(request: TokenRequest): Promise {\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\n body: this.qsStringify(request.toIdentityToken(this.platformUtilsService.identityClientId)),\n credentials: this.getCredentials(),\n cache: 'no-cache',\n headers: new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n 'Accept': 'application/json',\n 'Device-Type': this.deviceType,\n }),\n method: 'POST',\n }));\n\n let responseJson: any = null;\n const typeHeader = response.headers.get('content-type');\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\n responseJson = await response.json();\n }\n\n if (responseJson != null) {\n if (response.status === 200) {\n return new IdentityTokenResponse(responseJson);\n } else if (response.status === 400 && responseJson.TwoFactorProviders2 &&\n Object.keys(responseJson.TwoFactorProviders2).length) {\n await this.tokenService.clearTwoFactorToken(request.email);\n return new IdentityTwoFactorResponse(responseJson);\n }\n }\n\n return Promise.reject(new ErrorResponse(responseJson, response.status, true));\n }\n\n async refreshIdentityToken(): Promise {\n try {\n await this.doRefreshToken();\n } catch (e) {\n return Promise.reject(null);\n }\n }\n\n // Account APIs\n\n async getProfile(): Promise {\n const r = await this.send('GET', '/accounts/profile', null, true, true);\n return new ProfileResponse(r);\n }\n\n async getUserBilling(): Promise {\n const r = await this.send('GET', '/accounts/billing', null, true, true);\n return new BillingResponse(r);\n }\n\n async putProfile(request: UpdateProfileRequest): Promise {\n const r = await this.send('PUT', '/accounts/profile', request, true, true);\n return new ProfileResponse(r);\n }\n\n async postPrelogin(request: PreloginRequest): Promise {\n const r = await this.send('POST', '/accounts/prelogin', request, false, true);\n return new PreloginResponse(r);\n }\n\n postEmailToken(request: EmailTokenRequest): Promise {\n return this.send('POST', '/accounts/email-token', request, true, false);\n }\n\n postEmail(request: EmailRequest): Promise {\n return this.send('POST', '/accounts/email', request, true, false);\n }\n\n postPassword(request: PasswordRequest): Promise {\n return this.send('POST', '/accounts/password', request, true, false);\n }\n\n postSecurityStamp(request: PasswordVerificationRequest): Promise {\n return this.send('POST', '/accounts/security-stamp', request, true, false);\n }\n\n deleteAccount(request: PasswordVerificationRequest): Promise {\n return this.send('DELETE', '/accounts', request, true, false);\n }\n\n async getAccountRevisionDate(): Promise {\n const r = await this.send('GET', '/accounts/revision-date', null, true, true);\n return r as number;\n }\n\n postPasswordHint(request: PasswordHintRequest): Promise {\n return this.send('POST', '/accounts/password-hint', request, false, false);\n }\n\n postRegister(request: RegisterRequest): Promise {\n return this.send('POST', '/accounts/register', request, false, false);\n }\n\n postPremium(data: FormData): Promise {\n return this.send('POST', '/accounts/premium', data, true, false);\n }\n\n postReinstatePremium(): Promise {\n return this.send('POST', '/accounts/reinstate-premium', null, true, false);\n }\n\n postCancelPremium(): Promise {\n return this.send('POST', '/accounts/cancel-premium', null, true, false);\n }\n\n postAccountStorage(request: StorageRequest): Promise {\n return this.send('POST', '/accounts/storage', request, true, false);\n }\n\n postAccountPayment(request: PaymentRequest): Promise {\n return this.send('POST', '/accounts/payment', request, true, false);\n }\n\n postAccountLicense(data: FormData): Promise {\n return this.send('POST', '/accounts/license', data, true, false);\n }\n\n postAccountKeys(request: KeysRequest): Promise {\n return this.send('POST', '/accounts/keys', request, true, false);\n }\n\n postAccountKey(request: UpdateKeyRequest): Promise {\n return this.send('POST', '/accounts/key', request, true, false);\n }\n\n postAccountVerifyEmail(): Promise {\n return this.send('POST', '/accounts/verify-email', null, true, false);\n }\n\n postAccountVerifyEmailToken(request: VerifyEmailRequest): Promise {\n return this.send('POST', '/accounts/verify-email-token', request, false, false);\n }\n\n postAccountRecoverDelete(request: DeleteRecoverRequest): Promise {\n return this.send('POST', '/accounts/delete-recover', request, false, false);\n }\n\n postAccountRecoverDeleteToken(request: VerifyDeleteRecoverRequest): Promise {\n return this.send('POST', '/accounts/delete-recover-token', request, false, false);\n }\n\n postAccountKdf(request: KdfRequest): Promise {\n return this.send('POST', '/accounts/kdf', request, true, false);\n }\n\n // Folder APIs\n\n async getFolder(id: string): Promise {\n const r = await this.send('GET', '/folders/' + id, null, true, true);\n return new FolderResponse(r);\n }\n\n async postFolder(request: FolderRequest): Promise {\n const r = await this.send('POST', '/folders', request, true, true);\n return new FolderResponse(r);\n }\n\n async putFolder(id: string, request: FolderRequest): Promise {\n const r = await this.send('PUT', '/folders/' + id, request, true, true);\n return new FolderResponse(r);\n }\n\n deleteFolder(id: string): Promise {\n return this.send('DELETE', '/folders/' + id, null, true, false);\n }\n\n // Cipher APIs\n\n async getCipher(id: string): Promise {\n const r = await this.send('GET', '/ciphers/' + id, null, true, true);\n return new CipherResponse(r);\n }\n\n async getCipherAdmin(id: string): Promise {\n const r = await this.send('GET', '/ciphers/' + id + '/admin', null, true, true);\n return new CipherResponse(r);\n }\n\n async getCiphersOrganization(organizationId: string): Promise> {\n const r = await this.send('GET', '/ciphers/organization-details?organizationId=' + organizationId,\n null, true, true);\n return new ListResponse(r, CipherResponse);\n }\n\n async postCipher(request: CipherRequest): Promise {\n const r = await this.send('POST', '/ciphers', request, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherCreate(request: CipherCreateRequest): Promise {\n const r = await this.send('POST', '/ciphers/create', request, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherAdmin(request: CipherCreateRequest): Promise {\n const r = await this.send('POST', '/ciphers/admin', request, true, true);\n return new CipherResponse(r);\n }\n\n async putCipher(id: string, request: CipherRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id, request, true, true);\n return new CipherResponse(r);\n }\n\n async putCipherAdmin(id: string, request: CipherRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id + '/admin', request, true, true);\n return new CipherResponse(r);\n }\n\n deleteCipher(id: string): Promise {\n return this.send('DELETE', '/ciphers/' + id, null, true, false);\n }\n\n deleteCipherAdmin(id: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/admin', null, true, false);\n }\n\n deleteManyCiphers(request: CipherBulkDeleteRequest): Promise {\n return this.send('DELETE', '/ciphers', request, true, false);\n }\n\n putMoveCiphers(request: CipherBulkMoveRequest): Promise {\n return this.send('PUT', '/ciphers/move', request, true, false);\n }\n\n async putShareCipher(id: string, request: CipherShareRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id + '/share', request, true, true);\n return new CipherResponse(r);\n }\n\n putShareCiphers(request: CipherBulkShareRequest): Promise {\n return this.send('PUT', '/ciphers/share', request, true, false);\n }\n\n putCipherCollections(id: string, request: CipherCollectionsRequest): Promise {\n return this.send('PUT', '/ciphers/' + id + '/collections', request, true, false);\n }\n\n putCipherCollectionsAdmin(id: string, request: CipherCollectionsRequest): Promise {\n return this.send('PUT', '/ciphers/' + id + '/collections-admin', request, true, false);\n }\n\n postPurgeCiphers(request: PasswordVerificationRequest, organizationId: string = null): Promise {\n let path = '/ciphers/purge';\n if (organizationId != null) {\n path += '?organizationId=' + organizationId;\n }\n return this.send('POST', path, request, true, false);\n }\n\n postImportCiphers(request: ImportCiphersRequest): Promise {\n return this.send('POST', '/ciphers/import', request, true, false);\n }\n\n postImportOrganizationCiphers(organizationId: string, request: ImportOrganizationCiphersRequest): Promise {\n return this.send('POST', '/ciphers/import-organization?organizationId=' + organizationId, request, true, false);\n }\n\n // Attachments APIs\n\n async postCipherAttachment(id: string, data: FormData): Promise {\n const r = await this.send('POST', '/ciphers/' + id + '/attachment', data, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherAttachmentAdmin(id: string, data: FormData): Promise {\n const r = await this.send('POST', '/ciphers/' + id + '/attachment-admin', data, true, true);\n return new CipherResponse(r);\n }\n\n deleteCipherAttachment(id: string, attachmentId: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId, null, true, false);\n }\n\n deleteCipherAttachmentAdmin(id: string, attachmentId: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId + '/admin', null, true, false);\n }\n\n postShareCipherAttachment(id: string, attachmentId: string, data: FormData,\n organizationId: string): Promise {\n return this.send('POST', '/ciphers/' + id + '/attachment/' +\n attachmentId + '/share?organizationId=' + organizationId, data, true, false);\n }\n\n // Collections APIs\n\n async getCollectionDetails(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/details',\n null, true, true);\n return new CollectionGroupDetailsResponse(r);\n }\n\n async getUserCollections(): Promise> {\n const r = await this.send('GET', '/collections', null, true, true);\n return new ListResponse(r, CollectionResponse);\n }\n\n async getCollections(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections', null, true, true);\n return new ListResponse(r, CollectionResponse);\n }\n\n async getCollectionUsers(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/users',\n null, true, true);\n return r.map((dr: any) => new SelectionReadOnlyResponse(dr));\n }\n\n async postCollection(organizationId: string, request: CollectionRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/collections', request, true, true);\n return new CollectionResponse(r);\n }\n\n async putCollection(organizationId: string, id: string, request: CollectionRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id,\n request, true, true);\n return new CollectionResponse(r);\n }\n\n async putCollectionUsers(organizationId: string, id: string, request: SelectionReadOnlyRequest[]): Promise {\n await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id + '/users',\n request, true, false);\n }\n\n deleteCollection(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/collections/' + id, null, true, false);\n }\n\n deleteCollectionUser(organizationId: string, id: string, organizationUserId: string): Promise {\n return this.send('DELETE',\n '/organizations/' + organizationId + '/collections/' + id + '/user/' + organizationUserId,\n null, true, false);\n }\n\n // Groups APIs\n\n async getGroupDetails(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/details',\n null, true, true);\n return new GroupDetailsResponse(r);\n }\n\n async getGroups(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups', null, true, true);\n return new ListResponse(r, GroupResponse);\n }\n\n async getGroupUsers(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/users',\n null, true, true);\n return r;\n }\n\n async postGroup(organizationId: string, request: GroupRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/groups', request, true, true);\n return new GroupResponse(r);\n }\n\n async putGroup(organizationId: string, id: string, request: GroupRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id, request, true, true);\n return new GroupResponse(r);\n }\n\n async putGroupUsers(organizationId: string, id: string, request: string[]): Promise {\n await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id + '/users', request, true, false);\n }\n\n deleteGroup(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/groups/' + id, null, true, false);\n }\n\n deleteGroupUser(organizationId: string, id: string, organizationUserId: string): Promise {\n return this.send('DELETE',\n '/organizations/' + organizationId + '/groups/' + id + '/user/' + organizationUserId, null, true, false);\n }\n\n // Organization User APIs\n\n async getOrganizationUser(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id, null, true, true);\n return new OrganizationUserDetailsResponse(r);\n }\n\n async getOrganizationUserGroups(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id + '/groups',\n null, true, true);\n return r;\n }\n\n async getOrganizationUsers(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users', null, true, true);\n return new ListResponse(r, OrganizationUserUserDetailsResponse);\n }\n\n postOrganizationUserInvite(organizationId: string, request: OrganizationUserInviteRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/invite', request, true, false);\n }\n\n postOrganizationUserReinvite(organizationId: string, id: string): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/reinvite', null, true, false);\n }\n\n postOrganizationUserAccept(organizationId: string, id: string,\n request: OrganizationUserAcceptRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/accept', request, true, false);\n }\n\n postOrganizationUserConfirm(organizationId: string, id: string,\n request: OrganizationUserConfirmRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/confirm',\n request, true, false);\n }\n\n putOrganizationUser(organizationId: string, id: string, request: OrganizationUserUpdateRequest): Promise {\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id, request, true, false);\n }\n\n putOrganizationUserGroups(organizationId: string, id: string,\n request: OrganizationUserUpdateGroupsRequest): Promise {\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id + '/groups', request, true, false);\n }\n\n deleteOrganizationUser(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/users/' + id, null, true, false);\n }\n\n // Sync APIs\n\n async getSync(): Promise {\n const path = this.isDesktopClient || this.isWebClient ? '/sync?excludeDomains=true' : '/sync';\n const r = await this.send('GET', path, null, true, true);\n return new SyncResponse(r);\n }\n\n async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/import', request, true, false);\n }\n\n // Settings APIs\n\n async getSettingsDomains(): Promise {\n const r = await this.send('GET', '/settings/domains', null, true, true);\n return new DomainsResponse(r);\n }\n\n async putSettingsDomains(request: UpdateDomainsRequest): Promise {\n const r = await this.send('PUT', '/settings/domains', request, true, true);\n return new DomainsResponse(r);\n }\n\n // Two-factor APIs\n\n async getTwoFactorProviders(): Promise> {\n const r = await this.send('GET', '/two-factor', null, true, true);\n return new ListResponse(r, TwoFactorProviderResponse);\n }\n\n async getTwoFactorOrganizationProviders(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/two-factor', null, true, true);\n return new ListResponse(r, TwoFactorProviderResponse);\n }\n\n async getTwoFactorAuthenticator(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-authenticator', request, true, true);\n return new TwoFactorAuthenticatorResponse(r);\n }\n\n async getTwoFactorEmail(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-email', request, true, true);\n return new TwoFactorEmailResponse(r);\n }\n\n async getTwoFactorDuo(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async getTwoFactorOrganizationDuo(organizationId: string,\n request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/two-factor/get-duo',\n request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async getTwoFactorYubiKey(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-yubikey', request, true, true);\n return new TwoFactorYubiKeyResponse(r);\n }\n\n async getTwoFactorU2f(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async getTwoFactorU2fChallenge(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-u2f-challenge', request, true, true);\n return new ChallengeResponse(r);\n }\n\n async getTwoFactorRecover(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-recover', request, true, true);\n return new TwoFactorRecoverResponse(r);\n }\n\n async putTwoFactorAuthenticator(\n request: UpdateTwoFactorAuthenticatorRequest): Promise {\n const r = await this.send('PUT', '/two-factor/authenticator', request, true, true);\n return new TwoFactorAuthenticatorResponse(r);\n }\n\n async putTwoFactorEmail(request: UpdateTwoFactorEmailRequest): Promise {\n const r = await this.send('PUT', '/two-factor/email', request, true, true);\n return new TwoFactorEmailResponse(r);\n }\n\n async putTwoFactorDuo(request: UpdateTwoFactorDuoRequest): Promise {\n const r = await this.send('PUT', '/two-factor/duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async putTwoFactorOrganizationDuo(organizationId: string,\n request: UpdateTwoFactorDuoRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async putTwoFactorYubiKey(request: UpdateTwoFactorYubioOtpRequest): Promise {\n const r = await this.send('PUT', '/two-factor/yubikey', request, true, true);\n return new TwoFactorYubiKeyResponse(r);\n }\n\n async putTwoFactorU2f(request: UpdateTwoFactorU2fRequest): Promise {\n const r = await this.send('PUT', '/two-factor/u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async deleteTwoFactorU2f(request: UpdateTwoFactorU2fDeleteRequest): Promise {\n const r = await this.send('DELETE', '/two-factor/u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async putTwoFactorDisable(request: TwoFactorProviderRequest): Promise {\n const r = await this.send('PUT', '/two-factor/disable', request, true, true);\n return new TwoFactorProviderResponse(r);\n }\n\n async putTwoFactorOrganizationDisable(organizationId: string,\n request: TwoFactorProviderRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/disable',\n request, true, true);\n return new TwoFactorProviderResponse(r);\n }\n\n postTwoFactorRecover(request: TwoFactorRecoveryRequest): Promise {\n return this.send('POST', '/two-factor/recover', request, false, false);\n }\n\n postTwoFactorEmailSetup(request: TwoFactorEmailRequest): Promise {\n return this.send('POST', '/two-factor/send-email', request, true, false);\n }\n\n postTwoFactorEmail(request: TwoFactorEmailRequest): Promise {\n return this.send('POST', '/two-factor/send-email-login', request, false, false);\n }\n\n // Organization APIs\n\n async getOrganization(id: string): Promise {\n const r = await this.send('GET', '/organizations/' + id, null, true, true);\n return new OrganizationResponse(r);\n }\n\n async getOrganizationBilling(id: string): Promise {\n const r = await this.send('GET', '/organizations/' + id + '/billing', null, true, true);\n return new OrganizationBillingResponse(r);\n }\n\n async getOrganizationLicense(id: string, installationId: string): Promise {\n return this.send('GET', '/organizations/' + id + '/license?installationId=' + installationId,\n null, true, true);\n }\n\n async postOrganization(request: OrganizationCreateRequest): Promise {\n const r = await this.send('POST', '/organizations', request, true, true);\n return new OrganizationResponse(r);\n }\n\n async putOrganization(id: string, request: OrganizationUpdateRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + id, request, true, true);\n return new OrganizationResponse(r);\n }\n\n postLeaveOrganization(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/leave', null, true, false);\n }\n\n async postOrganizationLicense(data: FormData): Promise {\n const r = await this.send('POST', '/organizations/license', data, true, true);\n return new OrganizationResponse(r);\n }\n\n async postOrganizationLicenseUpdate(id: string, data: FormData): Promise {\n return this.send('POST', '/organizations/' + id + '/license', data, true, false);\n }\n\n postOrganizationSeat(id: string, request: SeatRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/seat', request, true, false);\n }\n\n postOrganizationStorage(id: string, request: StorageRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/storage', request, true, false);\n }\n\n postOrganizationPayment(id: string, request: PaymentRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/payment', request, true, false);\n }\n\n postOrganizationVerifyBank(id: string, request: VerifyBankRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/verify-bank', request, true, false);\n }\n\n postOrganizationCancel(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/cancel', null, true, false);\n }\n\n postOrganizationReinstate(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/reinstate', null, true, false);\n }\n\n deleteOrganization(id: string, request: PasswordVerificationRequest): Promise {\n return this.send('DELETE', '/organizations/' + id, request, true, false);\n }\n\n // Event APIs\n\n async getEvents(start: string, end: string, token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/events', start, end, token), null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsCipher(id: string, start: string, end: string,\n token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/ciphers/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsOrganization(id: string, start: string, end: string,\n token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/organizations/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsOrganizationUser(organizationId: string, id: string,\n start: string, end: string, token: string): Promise> {\n const r = await this.send('GET',\n this.addEventParameters('/organizations/' + organizationId + '/users/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n // User APIs\n\n async getUserPublicKey(id: string): Promise {\n const r = await this.send('GET', '/users/' + id + '/public-key', null, true, true);\n return new UserKeyResponse(r);\n }\n\n // HIBP APIs\n\n async getHibpBreach(username: string): Promise {\n const r = await this.send('GET', '/hibp/breach?username=' + username, null, true, true);\n return r.map((a: any) => new BreachAccountResponse(a));\n }\n\n // Helpers\n\n async getActiveBearerToken(): Promise {\n let accessToken = await this.tokenService.getToken();\n if (this.tokenService.tokenNeedsRefresh()) {\n const tokenResponse = await this.doRefreshToken();\n accessToken = tokenResponse.accessToken;\n }\n return accessToken;\n }\n\n fetch(request: Request): Promise {\n if (request.method === 'GET') {\n request.headers.set('Cache-Control', 'no-cache');\n request.headers.set('Pragma', 'no-cache');\n }\n return fetch(request);\n }\n\n private async send(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, body: any,\n authed: boolean, hasResponse: boolean): Promise {\n const headers = new Headers({\n 'Device-Type': this.deviceType,\n });\n\n const requestInit: RequestInit = {\n cache: 'no-cache',\n credentials: this.getCredentials(),\n method: method,\n };\n\n if (authed) {\n const authHeader = await this.getActiveBearerToken();\n headers.set('Authorization', 'Bearer ' + authHeader);\n }\n if (body != null) {\n if (typeof body === 'string') {\n requestInit.body = body;\n headers.set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');\n } else if (typeof body === 'object') {\n if (body instanceof FormData) {\n requestInit.body = body;\n } else {\n headers.set('Content-Type', 'application/json; charset=utf-8');\n requestInit.body = JSON.stringify(body);\n }\n }\n }\n if (hasResponse) {\n headers.set('Accept', 'application/json');\n }\n\n requestInit.headers = headers;\n const response = await this.fetch(new Request(this.apiBaseUrl + path, requestInit));\n\n if (hasResponse && response.status === 200) {\n const responseJson = await response.json();\n return responseJson;\n } else if (response.status !== 200) {\n const error = await this.handleError(response, false);\n return Promise.reject(error);\n }\n }\n\n private async handleError(response: Response, tokenError: boolean): Promise {\n if ((tokenError && response.status === 400) || response.status === 401 || response.status === 403) {\n await this.logoutCallback(true);\n return null;\n }\n\n let responseJson: any = null;\n const typeHeader = response.headers.get('content-type');\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\n responseJson = await response.json();\n }\n\n return new ErrorResponse(responseJson, response.status, tokenError);\n }\n\n private async doRefreshToken(): Promise {\n const refreshToken = await this.tokenService.getRefreshToken();\n if (refreshToken == null || refreshToken === '') {\n throw new Error();\n }\n\n const decodedToken = this.tokenService.decodeToken();\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\n body: this.qsStringify({\n grant_type: 'refresh_token',\n client_id: decodedToken.client_id,\n refresh_token: refreshToken,\n }),\n cache: 'no-cache',\n credentials: this.getCredentials(),\n headers: new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n 'Accept': 'application/json',\n 'Device-Type': this.deviceType,\n }),\n method: 'POST',\n }));\n\n if (response.status === 200) {\n const responseJson = await response.json();\n const tokenResponse = new IdentityTokenResponse(responseJson);\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n return tokenResponse;\n } else {\n const error = await this.handleError(response, true);\n return Promise.reject(error);\n }\n }\n\n private qsStringify(params: any): string {\n return Object.keys(params).map((key) => {\n return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);\n }).join('&');\n }\n\n private getCredentials(): RequestCredentials {\n if (!this.isWebClient || this.usingBaseUrl) {\n return 'include';\n }\n return undefined;\n }\n\n private addEventParameters(base: string, start: string, end: string, token: string) {\n if (start != null) {\n base += ('?start=' + start);\n }\n if (end != null) {\n base += (base.indexOf('?') > -1 ? '&' : '?');\n base += ('end=' + end);\n }\n if (token != null) {\n base += (base.indexOf('?') > -1 ? '&' : '?');\n base += ('continuationToken=' + token);\n }\n return base;\n }\n}\n","import { PaymentMethodType } from '../../enums/paymentMethodType';\nimport { TransactionType } from '../../enums/transactionType';\n\nexport class BillingResponse {\n storageName: string;\n storageGb: number;\n maxStorageGb: number;\n paymentSource: BillingSourceResponse;\n subscription: BillingSubscriptionResponse;\n upcomingInvoice: BillingInvoiceInfoResponse;\n charges: BillingChargeResponse[] = [];\n invoices: BillingInvoiceResponse[] = [];\n transactions: BillingTransactionResponse[] = [];\n license: any;\n expiration: string;\n\n constructor(response: any) {\n this.storageName = response.StorageName;\n this.storageGb = response.StorageGb;\n this.maxStorageGb = response.MaxStorageGb;\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\n this.subscription = response.Subscription == null ?\n null : new BillingSubscriptionResponse(response.Subscription);\n this.upcomingInvoice = response.UpcomingInvoice == null ?\n null : new BillingInvoiceInfoResponse(response.UpcomingInvoice);\n if (response.Charges != null) {\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\n }\n if (response.Transactions != null) {\n this.transactions = response.Transactions.map((t: any) => new BillingTransactionResponse(t));\n }\n if (response.Invoices != null) {\n this.invoices = response.Invoices.map((i: any) => new BillingInvoiceResponse(i));\n }\n this.license = response.License;\n this.expiration = response.Expiration;\n }\n}\n\nexport class BillingSourceResponse {\n type: PaymentMethodType;\n cardBrand: string;\n description: string;\n needsVerification: boolean;\n\n constructor(response: any) {\n this.type = response.Type;\n this.cardBrand = response.CardBrand;\n this.description = response.Description;\n this.needsVerification = response.NeedsVerification;\n }\n}\n\nexport class BillingSubscriptionResponse {\n trialStartDate: string;\n trialEndDate: string;\n periodStartDate: string;\n periodEndDate: string;\n cancelledDate: string;\n cancelAtEndDate: boolean;\n status: string;\n cancelled: boolean;\n items: BillingSubscriptionItemResponse[] = [];\n\n constructor(response: any) {\n this.trialEndDate = response.TrialStartDate;\n this.trialEndDate = response.TrialEndDate;\n this.periodStartDate = response.PeriodStartDate;\n this.periodEndDate = response.PeriodEndDate;\n this.cancelledDate = response.CancelledDate;\n this.cancelAtEndDate = response.CancelAtEndDate;\n this.status = response.Status;\n this.cancelled = response.Cancelled;\n if (response.Items != null) {\n this.items = response.Items.map((i: any) => new BillingSubscriptionItemResponse(i));\n }\n }\n}\n\nexport class BillingSubscriptionItemResponse {\n name: string;\n amount: number;\n quantity: number;\n interval: string;\n\n constructor(response: any) {\n this.name = response.Name;\n this.amount = response.Amount;\n this.quantity = response.Quantity;\n this.interval = response.Interval;\n }\n}\n\nexport class BillingInvoiceInfoResponse {\n date: string;\n amount: number;\n\n constructor(response: any) {\n this.date = response.Date;\n this.amount = response.Amount;\n }\n}\n\nexport class BillingChargeResponse {\n createdDate: string;\n amount: number;\n paymentSource: BillingSourceResponse;\n status: string;\n failureMessage: string;\n refunded: boolean;\n partiallyRefunded: boolean;\n refundedAmount: number;\n invoiceId: string;\n\n constructor(response: any) {\n this.createdDate = response.CreatedDate;\n this.amount = response.Amount;\n this.paymentSource = response.PaymentSource != null ? new BillingSourceResponse(response.PaymentSource) : null;\n this.status = response.Status;\n this.failureMessage = response.FailureMessage;\n this.refunded = response.Refunded;\n this.partiallyRefunded = response.PartiallyRefunded;\n this.refundedAmount = response.RefundedAmount;\n this.invoiceId = response.InvoiceId;\n }\n}\n\nexport class BillingInvoiceResponse extends BillingInvoiceInfoResponse {\n url: string;\n pdfUrl: string;\n number: string;\n paid: boolean;\n\n constructor(response: any) {\n super(response);\n this.url = response.Url;\n this.pdfUrl = response.PdfUrl;\n this.number = response.Number;\n this.paid = response.Paid;\n }\n}\n\nexport class BillingTransactionResponse {\n createdDate: string;\n amount: number;\n refunded: boolean;\n partiallyRefunded: boolean;\n refundedAmount: number;\n type: TransactionType;\n paymentMethodType: PaymentMethodType;\n details: string;\n\n constructor(response: any) {\n this.createdDate = response.CreatedDate;\n this.amount = response.Amount;\n this.refunded = response.Refunded;\n this.partiallyRefunded = response.PartiallyRefunded;\n this.refundedAmount = response.RefundedAmount;\n this.type = response.Type;\n this.paymentMethodType = response.PaymentMethodType;\n this.details = response.Details;\n }\n}\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 { throttle } from '../misc/throttle';\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\n\r\nconst PwnedPasswordsApi = 'https://api.pwnedpasswords.com/range/';\r\n\r\nexport class AuditService implements AuditServiceAbstraction {\r\n constructor(private cryptoFunctionService: CryptoFunctionService, private apiService: ApiService) { }\r\n\r\n @throttle(100, () => 'passwordLeaked')\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(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 try {\r\n return await this.apiService.getHibpBreach(username);\r\n } catch (e) {\r\n const error = e as ErrorResponse;\r\n if (error.statusCode === 404) {\r\n return [];\r\n }\r\n throw new Error();\r\n }\r\n }\r\n}\r\n","import { CipherType } from '../enums/cipherType';\nimport { FieldType } from '../enums/fieldType';\nimport { UriMatchType } from '../enums/uriMatchType';\n\nimport { CipherData } from '../models/data/cipherData';\n\nimport { Attachment } from '../models/domain/attachment';\nimport { Card } from '../models/domain/card';\nimport { Cipher } from '../models/domain/cipher';\nimport { CipherString } from '../models/domain/cipherString';\nimport Domain from '../models/domain/domainBase';\nimport { Field } from '../models/domain/field';\nimport { Identity } from '../models/domain/identity';\nimport { Login } from '../models/domain/login';\nimport { LoginUri } from '../models/domain/loginUri';\nimport { Password } from '../models/domain/password';\nimport { SecureNote } from '../models/domain/secureNote';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\n\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport { ErrorResponse } from '../models/response/errorResponse';\n\nimport { AttachmentView } from '../models/view/attachmentView';\nimport { CipherView } from '../models/view/cipherView';\nimport { FieldView } from '../models/view/fieldView';\nimport { PasswordHistoryView } from '../models/view/passwordHistoryView';\nimport { View } from '../models/view/view';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { CipherService as CipherServiceAbstraction } from '../abstractions/cipher.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { SearchService } from '../abstractions/search.service';\nimport { SettingsService } from '../abstractions/settings.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ConstantsService } from './constants.service';\n\nimport { sequentialize } from '../misc/sequentialize';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n ciphersPrefix: 'ciphers_',\n localData: 'sitesLocalData',\n neverDomains: 'neverDomains',\n};\n\nconst DomainMatchBlacklist = new Map>([\n ['google.com', new Set(['script.google.com'])],\n]);\n\nexport class CipherService implements CipherServiceAbstraction {\n // tslint:disable-next-line\n _decryptedCipherCache: CipherView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private settingsService: SettingsService, private apiService: ApiService,\n private storageService: StorageService, private i18nService: I18nService,\n private searchService: () => SearchService) {\n }\n\n get decryptedCipherCache() {\n return this._decryptedCipherCache;\n }\n set decryptedCipherCache(value: CipherView[]) {\n this._decryptedCipherCache = value;\n if (this.searchService != null) {\n if (value == null) {\n this.searchService().clearIndex();\n } else {\n this.searchService().indexCiphers();\n }\n }\n }\n\n clearCache(): void {\n this.decryptedCipherCache = null;\n }\n\n async encrypt(model: CipherView, key?: SymmetricCryptoKey, originalCipher: Cipher = null): Promise {\n // Adjust password history\n if (model.id != null) {\n if (originalCipher == null) {\n originalCipher = await this.get(model.id);\n }\n if (originalCipher != null) {\n const existingCipher = await originalCipher.decrypt();\n model.passwordHistory = existingCipher.passwordHistory || [];\n if (model.type === CipherType.Login && existingCipher.type === CipherType.Login) {\n if (existingCipher.login.password != null && existingCipher.login.password !== '' &&\n existingCipher.login.password !== model.login.password) {\n const ph = new PasswordHistoryView();\n ph.password = existingCipher.login.password;\n ph.lastUsedDate = model.login.passwordRevisionDate = new Date();\n model.passwordHistory.splice(0, 0, ph);\n } else {\n model.login.passwordRevisionDate = existingCipher.login.passwordRevisionDate;\n }\n }\n if (existingCipher.hasFields) {\n const existingHiddenFields = existingCipher.fields.filter((f) => f.type === FieldType.Hidden &&\n f.name != null && f.name !== '' && f.value != null && f.value !== '');\n const hiddenFields = model.fields == null ? [] :\n model.fields.filter((f) => f.type === FieldType.Hidden && f.name != null && f.name !== '');\n existingHiddenFields.forEach((ef) => {\n const matchedField = hiddenFields.filter((f) => f.name === ef.name);\n if (matchedField.length === 0 || matchedField[0].value !== ef.value) {\n const ph = new PasswordHistoryView();\n ph.password = ef.name + ': ' + ef.value;\n ph.lastUsedDate = new Date();\n model.passwordHistory.splice(0, 0, ph);\n }\n });\n }\n }\n if (model.passwordHistory != null && model.passwordHistory.length === 0) {\n model.passwordHistory = null;\n } else if (model.passwordHistory != null && model.passwordHistory.length > 5) {\n // only save last 5 history\n model.passwordHistory = model.passwordHistory.slice(0, 5);\n }\n }\n\n const cipher = new Cipher();\n cipher.id = model.id;\n cipher.folderId = model.folderId;\n cipher.favorite = model.favorite;\n cipher.organizationId = model.organizationId;\n cipher.type = model.type;\n cipher.collectionIds = model.collectionIds;\n\n if (key == null && cipher.organizationId != null) {\n key = await this.cryptoService.getOrgKey(cipher.organizationId);\n if (key == null) {\n throw new Error('Cannot encrypt cipher for organization. No key.');\n }\n }\n await Promise.all([\n this.encryptObjProperty(model, cipher, {\n name: null,\n notes: null,\n }, key),\n this.encryptCipherData(cipher, model, key),\n this.encryptFields(model.fields, key).then((fields) => {\n cipher.fields = fields;\n }),\n this.encryptPasswordHistories(model.passwordHistory, key).then((ph) => {\n cipher.passwordHistory = ph;\n }),\n this.encryptAttachments(model.attachments, key).then((attachments) => {\n cipher.attachments = attachments;\n }),\n ]);\n\n return cipher;\n }\n\n async encryptAttachments(attachmentsModel: AttachmentView[], key: SymmetricCryptoKey): Promise {\n if (attachmentsModel == null || attachmentsModel.length === 0) {\n return null;\n }\n\n const promises: Array> = [];\n const encAttachments: Attachment[] = [];\n attachmentsModel.forEach(async (model) => {\n const attachment = new Attachment();\n attachment.id = model.id;\n attachment.size = model.size;\n attachment.sizeName = model.sizeName;\n attachment.url = model.url;\n const promise = this.encryptObjProperty(model, attachment, {\n fileName: null,\n }, key).then(async () => {\n if (model.key != null) {\n attachment.key = await this.cryptoService.encrypt(model.key.key, key);\n }\n encAttachments.push(attachment);\n });\n promises.push(promise);\n });\n\n await Promise.all(promises);\n return encAttachments;\n }\n\n async encryptFields(fieldsModel: FieldView[], key: SymmetricCryptoKey): Promise {\n if (!fieldsModel || !fieldsModel.length) {\n return null;\n }\n\n const self = this;\n const encFields: Field[] = [];\n await fieldsModel.reduce((promise, field) => {\n return promise.then(() => {\n return self.encryptField(field, key);\n }).then((encField: Field) => {\n encFields.push(encField);\n });\n }, Promise.resolve());\n\n return encFields;\n }\n\n async encryptField(fieldModel: FieldView, key: SymmetricCryptoKey): Promise {\n const field = new Field();\n field.type = fieldModel.type;\n // normalize boolean type field values\n if (fieldModel.type === FieldType.Boolean && fieldModel.value !== 'true') {\n fieldModel.value = 'false';\n }\n\n await this.encryptObjProperty(fieldModel, field, {\n name: null,\n value: null,\n }, key);\n\n return field;\n }\n\n async encryptPasswordHistories(phModels: PasswordHistoryView[], key: SymmetricCryptoKey): Promise {\n if (!phModels || !phModels.length) {\n return null;\n }\n\n const self = this;\n const encPhs: Password[] = [];\n await phModels.reduce((promise, ph) => {\n return promise.then(() => {\n return self.encryptPasswordHistory(ph, key);\n }).then((encPh: Password) => {\n encPhs.push(encPh);\n });\n }, Promise.resolve());\n\n return encPhs;\n }\n\n async encryptPasswordHistory(phModel: PasswordHistoryView, key: SymmetricCryptoKey): Promise {\n const ph = new Password();\n ph.lastUsedDate = phModel.lastUsedDate;\n\n await this.encryptObjProperty(phModel, ph, {\n password: null,\n }, key);\n\n return ph;\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const localData = await this.storageService.get(Keys.localData);\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null || !ciphers.hasOwnProperty(id)) {\n return null;\n }\n\n return new Cipher(ciphers[id], false, localData ? localData[id] : null);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const localData = await this.storageService.get(Keys.localData);\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n const response: Cipher[] = [];\n for (const id in ciphers) {\n if (ciphers.hasOwnProperty(id)) {\n response.push(new Cipher(ciphers[id], false, localData ? localData[id] : null));\n }\n }\n return response;\n }\n\n @sequentialize(() => 'getAllDecrypted')\n async getAllDecrypted(): Promise {\n if (this.decryptedCipherCache != null) {\n return this.decryptedCipherCache;\n }\n\n const decCiphers: CipherView[] = [];\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const promises: any[] = [];\n const ciphers = await this.getAll();\n ciphers.forEach((cipher) => {\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\n });\n\n await Promise.all(promises);\n decCiphers.sort(this.getLocaleSortingFunction());\n this.decryptedCipherCache = decCiphers;\n return this.decryptedCipherCache;\n }\n\n async getAllDecryptedForGrouping(groupingId: string, folder: boolean = true): Promise {\n const ciphers = await this.getAllDecrypted();\n\n return ciphers.filter((cipher) => {\n if (folder && cipher.folderId === groupingId) {\n return true;\n } else if (!folder && cipher.collectionIds != null && cipher.collectionIds.indexOf(groupingId) > -1) {\n return true;\n }\n\n return false;\n });\n }\n\n async getAllDecryptedForUrl(url: string, includeOtherTypes?: CipherType[]): Promise {\n if (url == null && !includeOtherTypes) {\n return Promise.resolve([]);\n }\n\n const domain = Utils.getDomain(url);\n const eqDomainsPromise = domain == null ? Promise.resolve([]) :\n this.settingsService.getEquivalentDomains().then((eqDomains: any[][]) => {\n let matches: any[] = [];\n eqDomains.forEach((eqDomain) => {\n if (eqDomain.length && eqDomain.indexOf(domain) >= 0) {\n matches = matches.concat(eqDomain);\n }\n });\n\n if (!matches.length) {\n matches.push(domain);\n }\n\n return matches;\n });\n\n const result = await Promise.all([eqDomainsPromise, this.getAllDecrypted()]);\n const matchingDomains = result[0];\n const ciphers = result[1];\n\n let defaultMatch = await this.storageService.get(ConstantsService.defaultUriMatch);\n if (defaultMatch == null) {\n defaultMatch = UriMatchType.Domain;\n }\n\n return ciphers.filter((cipher) => {\n if (includeOtherTypes && includeOtherTypes.indexOf(cipher.type) > -1) {\n return true;\n }\n\n if (url != null && cipher.type === CipherType.Login && cipher.login.uris != null) {\n for (let i = 0; i < cipher.login.uris.length; i++) {\n const u = cipher.login.uris[i];\n if (u.uri == null) {\n continue;\n }\n\n const match = u.match == null ? defaultMatch : u.match;\n switch (match) {\n case UriMatchType.Domain:\n if (domain != null && u.domain != null && matchingDomains.indexOf(u.domain) > -1) {\n if (DomainMatchBlacklist.has(u.domain)) {\n const domainUrlHost = Utils.getHost(url);\n if (!DomainMatchBlacklist.get(u.domain).has(domainUrlHost)) {\n return true;\n }\n } else {\n return true;\n }\n }\n break;\n case UriMatchType.Host:\n const urlHost = Utils.getHost(url);\n if (urlHost != null && urlHost === Utils.getHost(u.uri)) {\n return true;\n }\n break;\n case UriMatchType.Exact:\n if (url === u.uri) {\n return true;\n }\n break;\n case UriMatchType.StartsWith:\n if (url.startsWith(u.uri)) {\n return true;\n }\n break;\n case UriMatchType.RegularExpression:\n try {\n const regex = new RegExp(u.uri, 'i');\n if (regex.test(url)) {\n return true;\n }\n } catch { }\n break;\n case UriMatchType.Never:\n default:\n break;\n }\n }\n }\n\n return false;\n });\n }\n\n async getAllFromApiForOrganization(organizationId: string): Promise {\n const ciphers = await this.apiService.getCiphersOrganization(organizationId);\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.getLocaleSortingFunction());\n return decCiphers;\n } else {\n return [];\n }\n }\n\n async getLastUsedForUrl(url: string): Promise {\n const ciphers = await this.getAllDecryptedForUrl(url);\n if (ciphers.length === 0) {\n return null;\n }\n\n const sortedCiphers = ciphers.sort(this.sortCiphersByLastUsed);\n return sortedCiphers[0];\n }\n\n async updateLastUsedDate(id: string): Promise {\n let ciphersLocalData = await this.storageService.get(Keys.localData);\n if (!ciphersLocalData) {\n ciphersLocalData = {};\n }\n\n if (ciphersLocalData[id]) {\n ciphersLocalData[id].lastUsedDate = new Date().getTime();\n } else {\n ciphersLocalData[id] = {\n lastUsedDate: new Date().getTime(),\n };\n }\n\n await this.storageService.save(Keys.localData, ciphersLocalData);\n\n if (this.decryptedCipherCache == null) {\n return;\n }\n\n for (let i = 0; i < this.decryptedCipherCache.length; i++) {\n const cached = this.decryptedCipherCache[i];\n if (cached.id === id) {\n cached.localData = ciphersLocalData[id];\n break;\n }\n }\n }\n\n async saveNeverDomain(domain: string): Promise {\n if (domain == null) {\n return;\n }\n\n let domains = await this.storageService.get<{ [id: string]: any; }>(Keys.neverDomains);\n if (!domains) {\n domains = {};\n }\n domains[domain] = null;\n await this.storageService.save(Keys.neverDomains, domains);\n }\n\n async saveWithServer(cipher: Cipher): Promise {\n let response: CipherResponse;\n if (cipher.id == null) {\n if (cipher.collectionIds != null) {\n const request = new CipherCreateRequest(cipher);\n response = await this.apiService.postCipherCreate(request);\n } else {\n const request = new CipherRequest(cipher);\n response = await this.apiService.postCipher(request);\n }\n cipher.id = response.id;\n } else {\n const request = new CipherRequest(cipher);\n response = await this.apiService.putCipher(cipher.id, request);\n }\n\n const userId = await this.userService.getUserId();\n const data = new CipherData(response, userId, cipher.collectionIds);\n await this.upsert(data);\n }\n\n async shareWithServer(cipher: CipherView, organizationId: string, collectionIds: string[]): Promise {\n const attachmentPromises: Array> = [];\n if (cipher.attachments != null) {\n cipher.attachments.forEach((attachment) => {\n if (attachment.key == null) {\n attachmentPromises.push(this.shareAttachmentWithServer(attachment, cipher.id, organizationId));\n }\n });\n }\n await Promise.all(attachmentPromises);\n\n cipher.organizationId = organizationId;\n cipher.collectionIds = collectionIds;\n const encCipher = await this.encrypt(cipher);\n const request = new CipherShareRequest(encCipher);\n const response = await this.apiService.putShareCipher(cipher.id, request);\n const userId = await this.userService.getUserId();\n const data = new CipherData(response, userId, collectionIds);\n await this.upsert(data);\n }\n\n async shareManyWithServer(ciphers: CipherView[], organizationId: string, collectionIds: string[]): Promise {\n const promises: Array> = [];\n const encCiphers: Cipher[] = [];\n for (const cipher of ciphers) {\n cipher.organizationId = organizationId;\n cipher.collectionIds = collectionIds;\n promises.push(this.encrypt(cipher).then((c) => {\n encCiphers.push(c);\n }));\n }\n await Promise.all(promises);\n const request = new CipherBulkShareRequest(encCiphers, collectionIds);\n await this.apiService.putShareCiphers(request);\n const userId = await this.userService.getUserId();\n await this.upsert(encCiphers.map((c) => c.toCipherData(userId)));\n }\n\n saveAttachmentWithServer(cipher: Cipher, unencryptedFile: any, admin = false): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsArrayBuffer(unencryptedFile);\n reader.onload = async (evt: any) => {\n try {\n const cData = await this.saveAttachmentRawWithServer(cipher,\n unencryptedFile.name, evt.target.result, admin);\n resolve(cData);\n } catch (e) {\n reject(e);\n }\n };\n reader.onerror = (evt) => {\n reject('Error reading file.');\n };\n });\n }\n\n async saveAttachmentRawWithServer(cipher: Cipher, filename: string,\n data: ArrayBuffer, admin = false): Promise {\n const key = await this.cryptoService.getOrgKey(cipher.organizationId);\n const encFileName = await this.cryptoService.encrypt(filename, key);\n\n const dataEncKey = await this.cryptoService.makeEncKey(key);\n const encData = await this.cryptoService.encryptToBytes(data, dataEncKey[0]);\n\n const fd = new FormData();\n try {\n fd.append('key', dataEncKey[1].encryptedString);\n const blob = new Blob([encData], { type: 'application/octet-stream' });\n fd.append('data', blob, encFileName.encryptedString);\n } catch (e) {\n if (Utils.isNode && !Utils.isBrowser) {\n fd.append('key', dataEncKey[1].encryptedString);\n fd.append('data', Buffer.from(encData) as any, {\n filepath: encFileName.encryptedString,\n contentType: 'application/octet-stream',\n } as any);\n } else {\n throw e;\n }\n }\n\n let response: CipherResponse;\n try {\n if (admin) {\n response = await this.apiService.postCipherAttachmentAdmin(cipher.id, fd);\n } else {\n response = await this.apiService.postCipherAttachment(cipher.id, fd);\n }\n } catch (e) {\n throw new Error((e as ErrorResponse).getSingleMessage());\n }\n\n const userId = await this.userService.getUserId();\n const cData = new CipherData(response, userId, cipher.collectionIds);\n if (!admin) {\n this.upsert(cData);\n }\n return new Cipher(cData);\n }\n\n async saveCollectionsWithServer(cipher: Cipher): Promise {\n const request = new CipherCollectionsRequest(cipher.collectionIds);\n await this.apiService.putCipherCollections(cipher.id, request);\n const userId = await this.userService.getUserId();\n const data = cipher.toCipherData(userId);\n await this.upsert(data);\n }\n\n async upsert(cipher: CipherData | CipherData[]): Promise {\n const userId = await this.userService.getUserId();\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n ciphers = {};\n }\n\n if (cipher instanceof CipherData) {\n const c = cipher as CipherData;\n ciphers[c.id] = c;\n } else {\n (cipher as CipherData[]).forEach((c) => {\n ciphers[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async replace(ciphers: { [id: string]: CipherData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.ciphersPrefix + userId);\n this.clearCache();\n }\n\n async moveManyWithServer(ids: string[], folderId: string): Promise {\n await this.apiService.putMoveCiphers(new CipherBulkMoveRequest(ids, folderId));\n\n const userId = await this.userService.getUserId();\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n ciphers = {};\n }\n\n ids.forEach((id) => {\n if (ciphers.hasOwnProperty(id)) {\n ciphers[id].folderId = folderId;\n }\n });\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n return;\n }\n\n if (typeof id === 'string') {\n if (ciphers[id] == null) {\n return;\n }\n delete ciphers[id];\n } else {\n (id as string[]).forEach((i) => {\n delete ciphers[i];\n });\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async deleteWithServer(id: string): Promise {\n await this.apiService.deleteCipher(id);\n await this.delete(id);\n }\n\n async deleteManyWithServer(ids: string[]): Promise {\n await this.apiService.deleteManyCiphers(new CipherBulkDeleteRequest(ids));\n await this.delete(ids);\n }\n\n async deleteAttachment(id: string, attachmentId: string): Promise {\n const userId = await this.userService.getUserId();\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n\n if (ciphers == null || !ciphers.hasOwnProperty(id) || ciphers[id].attachments == null) {\n return;\n }\n\n for (let i = 0; i < ciphers[id].attachments.length; i++) {\n if (ciphers[id].attachments[i].id === attachmentId) {\n ciphers[id].attachments.splice(i, 1);\n }\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async deleteAttachmentWithServer(id: string, attachmentId: string): Promise {\n try {\n await this.apiService.deleteCipherAttachment(id, attachmentId);\n } catch (e) {\n return Promise.reject((e as ErrorResponse).getSingleMessage());\n }\n await this.deleteAttachment(id, attachmentId);\n }\n\n sortCiphersByLastUsed(a: CipherView, b: CipherView): number {\n const aLastUsed = a.localData && a.localData.lastUsedDate ? a.localData.lastUsedDate as number : null;\n const bLastUsed = b.localData && b.localData.lastUsedDate ? b.localData.lastUsedDate as number : null;\n\n if (aLastUsed != null && bLastUsed != null && aLastUsed < bLastUsed) {\n return 1;\n }\n if (aLastUsed != null && bLastUsed == null) {\n return -1;\n }\n\n if (bLastUsed != null && aLastUsed != null && aLastUsed > bLastUsed) {\n return -1;\n }\n if (bLastUsed != null && aLastUsed == null) {\n return 1;\n }\n\n return 0;\n }\n\n sortCiphersByLastUsedThenName(a: CipherView, b: CipherView): number {\n const result = this.sortCiphersByLastUsed(a, b);\n if (result !== 0) {\n return result;\n }\n\n return this.getLocaleSortingFunction()(a, b);\n }\n\n getLocaleSortingFunction(): (a: CipherView, b: CipherView) => number {\n return (a, b) => {\n let aName = a.name;\n let bName = b.name;\n\n if (aName == null && bName != null) {\n return -1;\n }\n if (aName != null && bName == null) {\n return 1;\n }\n if (aName == null && bName == null) {\n return 0;\n }\n\n const result = this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\n aName.localeCompare(bName);\n\n if (result !== 0 || a.type !== CipherType.Login || b.type !== CipherType.Login) {\n return result;\n }\n\n if (a.login.username != null) {\n aName += a.login.username;\n }\n\n if (b.login.username != null) {\n bName += b.login.username;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\n aName.localeCompare(bName);\n };\n }\n\n // Helpers\n\n private async shareAttachmentWithServer(attachmentView: AttachmentView, cipherId: string,\n organizationId: string): Promise {\n const attachmentResponse = await fetch(new Request(attachmentView.url, { cache: 'no-cache' }));\n if (attachmentResponse.status !== 200) {\n throw Error('Failed to download attachment: ' + attachmentResponse.status.toString());\n }\n\n const buf = await attachmentResponse.arrayBuffer();\n const decBuf = await this.cryptoService.decryptFromBytes(buf, null);\n const key = await this.cryptoService.getOrgKey(organizationId);\n const encFileName = await this.cryptoService.encrypt(attachmentView.fileName, key);\n\n const dataEncKey = await this.cryptoService.makeEncKey(key);\n const encData = await this.cryptoService.encryptToBytes(decBuf, dataEncKey[0]);\n\n const fd = new FormData();\n try {\n fd.append('key', dataEncKey[1].encryptedString);\n const blob = new Blob([encData], { type: 'application/octet-stream' });\n fd.append('data', blob, encFileName.encryptedString);\n } catch (e) {\n if (Utils.isNode && !Utils.isBrowser) {\n fd.append('key', dataEncKey[1].encryptedString);\n fd.append('data', Buffer.from(encData) as any, {\n filepath: encFileName.encryptedString,\n contentType: 'application/octet-stream',\n } as any);\n } else {\n throw e;\n }\n }\n\n try {\n await this.apiService.postShareCipherAttachment(cipherId, attachmentView.id, fd, organizationId);\n } catch (e) {\n throw new Error((e as ErrorResponse).getSingleMessage());\n }\n }\n\n private async encryptObjProperty(model: V, obj: D,\n map: any, key: SymmetricCryptoKey): Promise {\n const promises = [];\n const self = 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, theObj) {\n const p = Promise.resolve().then(() => {\n const modelProp = (model as any)[(map[theProp] || theProp)];\n if (modelProp && modelProp !== '') {\n return self.cryptoService.encrypt(modelProp, key);\n }\n return null;\n }).then((val: CipherString) => {\n (theObj as any)[theProp] = val;\n });\n promises.push(p);\n })(prop, obj);\n }\n\n await Promise.all(promises);\n }\n\n private async encryptCipherData(cipher: Cipher, model: CipherView, key: SymmetricCryptoKey) {\n switch (cipher.type) {\n case CipherType.Login:\n cipher.login = new Login();\n cipher.login.passwordRevisionDate = model.login.passwordRevisionDate;\n await this.encryptObjProperty(model.login, cipher.login, {\n username: null,\n password: null,\n totp: null,\n }, key);\n\n if (model.login.uris != null) {\n cipher.login.uris = [];\n for (let i = 0; i < model.login.uris.length; i++) {\n const loginUri = new LoginUri();\n loginUri.match = model.login.uris[i].match;\n await this.encryptObjProperty(model.login.uris[i], loginUri, {\n uri: null,\n }, key);\n cipher.login.uris.push(loginUri);\n }\n }\n return;\n case CipherType.SecureNote:\n cipher.secureNote = new SecureNote();\n cipher.secureNote.type = model.secureNote.type;\n return;\n case CipherType.Card:\n cipher.card = new Card();\n await this.encryptObjProperty(model.card, cipher.card, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, key);\n return;\n case CipherType.Identity:\n cipher.identity = new Identity();\n await this.encryptObjProperty(model.identity, cipher.identity, {\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 }, key);\n return;\n default:\n throw new Error('Unknown cipher type.');\n }\n }\n}\n","/**\n * Use as a Decorator on async functions, it will prevent multiple 'active' calls as the same time\n *\n * If a promise was returned from a previous call to this function, that hasn't yet resolved it will\n * be returned, instead of calling the original function again\n *\n * Results are not cached, once the promise has returned, the next call will result in a fresh call\n *\n * Read more at https://github.com/bitwarden/jslib/pull/7\n */\nexport function sequentialize(cacheKey: (args: any[]) => string) {\n return (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\n const originalMethod: () => Promise = descriptor.value;\n const caches = new Map>>();\n\n const getCache = (obj: any) => {\n let cache = caches.get(obj);\n if (cache != null) {\n return cache;\n }\n cache = new Map>();\n caches.set(obj, cache);\n return cache;\n };\n\n return {\n value: function(...args: any[]) {\n const cache = getCache(this);\n const argsCacheKey = cacheKey(args);\n let response = cache.get(argsCacheKey);\n if (response != null) {\n return response;\n }\n\n response = originalMethod.apply(this, args).finally(() => {\n cache.delete(argsCacheKey);\n if (cache.size === 0) {\n caches.delete(this);\n }\n });\n\n cache.set(argsCacheKey, response);\n return response;\n },\n };\n };\n}\n","import { CollectionData } from '../models/data/collectionData';\n\nimport { Collection } from '../models/domain/collection';\nimport { TreeNode } from '../models/domain/treeNode';\n\nimport { CollectionView } from '../models/view/collectionView';\n\nimport { CollectionService as CollectionServiceAbstraction } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ServiceUtils } from '../misc/serviceUtils';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n collectionsPrefix: 'collections_',\n};\nconst NestingDelimiter = '/';\n\nexport class CollectionService implements CollectionServiceAbstraction {\n decryptedCollectionCache: CollectionView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private storageService: StorageService, private i18nService: I18nService) {\n }\n\n clearCache(): void {\n this.decryptedCollectionCache = null;\n }\n\n async encrypt(model: CollectionView): Promise {\n if (model.organizationId == null) {\n throw new Error('Collection has no organization id.');\n }\n const key = await this.cryptoService.getOrgKey(model.organizationId);\n if (key == null) {\n throw new Error('No key for this collection\\'s organization.');\n }\n const collection = new Collection();\n collection.id = model.id;\n collection.organizationId = model.organizationId;\n collection.readOnly = model.readOnly;\n collection.name = await this.cryptoService.encrypt(model.name, key);\n return collection;\n }\n\n async decryptMany(collections: Collection[]): Promise {\n if (collections == null) {\n return [];\n }\n const decCollections: CollectionView[] = [];\n const promises: Array> = [];\n collections.forEach((collection) => {\n promises.push(collection.decrypt().then((c) => decCollections.push(c)));\n });\n await Promise.all(promises);\n return decCollections.sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null || !collections.hasOwnProperty(id)) {\n return null;\n }\n\n return new Collection(collections[id]);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n const response: Collection[] = [];\n for (const id in collections) {\n if (collections.hasOwnProperty(id)) {\n response.push(new Collection(collections[id]));\n }\n }\n return response;\n }\n\n async getAllDecrypted(): Promise {\n if (this.decryptedCollectionCache != null) {\n return this.decryptedCollectionCache;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const collections = await this.getAll();\n this.decryptedCollectionCache = await this.decryptMany(collections);\n return this.decryptedCollectionCache;\n }\n\n async getAllNested(collections: CollectionView[] = null): Promise>> {\n if (collections == null) {\n collections = await this.getAllDecrypted();\n }\n const nodes: Array> = [];\n collections.forEach((c) => {\n const collectionCopy = new CollectionView();\n collectionCopy.id = c.id;\n collectionCopy.organizationId = c.organizationId;\n ServiceUtils.nestedTraverse(nodes, 0, c.name.split(NestingDelimiter), collectionCopy,\n null, NestingDelimiter);\n });\n return nodes;\n }\n\n async getNested(id: string): Promise> {\n const collections = await this.getAllNested();\n return ServiceUtils.getTreeNodeObject(collections, id) as TreeNode;\n }\n\n async upsert(collection: CollectionData | CollectionData[]): Promise {\n const userId = await this.userService.getUserId();\n let collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n collections = {};\n }\n\n if (collection instanceof CollectionData) {\n const c = collection as CollectionData;\n collections[c.id] = c;\n } else {\n (collection as CollectionData[]).forEach((c) => {\n collections[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async replace(collections: { [id: string]: CollectionData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.collectionsPrefix + userId);\n this.decryptedCollectionCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n return;\n }\n\n if (typeof id === 'string') {\n const i = id as string;\n delete collections[id];\n } else {\n (id as string[]).forEach((i) => {\n delete collections[i];\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n}\n","import {\r\n ITreeNodeObject,\r\n TreeNode,\r\n} from '../models/domain/treeNode';\r\n\r\nexport class ServiceUtils {\r\n static nestedTraverse(nodeTree: Array>, partIndex: number, parts: string[],\r\n obj: ITreeNodeObject, parent: ITreeNodeObject, delimiter: string) {\r\n if (parts.length <= partIndex) {\r\n return;\r\n }\r\n\r\n const end = partIndex === parts.length - 1;\r\n const partName = parts[partIndex];\r\n\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.name !== parts[partIndex]) {\r\n continue;\r\n }\r\n if (end && nodeTree[i].node.id !== obj.id) {\r\n // Another node with the same name.\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n ServiceUtils.nestedTraverse(nodeTree[i].children, partIndex + 1, parts,\r\n obj, nodeTree[i].node, delimiter);\r\n return;\r\n }\r\n\r\n if (nodeTree.filter((n) => n.node.name === partName).length === 0) {\r\n if (end) {\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n const newPartName = parts[partIndex] + delimiter + parts[partIndex + 1];\r\n ServiceUtils.nestedTraverse(nodeTree, 0, [newPartName, ...parts.slice(partIndex + 2)],\r\n obj, parent, delimiter);\r\n }\r\n }\r\n\r\n static getTreeNodeObject(nodeTree: Array>, id: string): TreeNode {\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.id === id) {\r\n return nodeTree[i];\r\n } else if (nodeTree[i].children != null) {\r\n const node = ServiceUtils.getTreeNodeObject(nodeTree[i].children, id);\r\n if (node !== null) {\r\n return node;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n}\r\n","import { CryptoService } from '../abstractions/crypto.service';\r\n\r\nexport class ContainerService {\r\n constructor(private cryptoService: CryptoService) {\r\n }\r\n\r\n // deprecated, use attachToGlobal instead\r\n attachToWindow(win: any) {\r\n this.attachToGlobal(win);\r\n }\r\n\r\n attachToGlobal(global: any) {\r\n if (!global.bitwardenContainerService) {\r\n global.bitwardenContainerService = this;\r\n }\r\n }\r\n\r\n getCryptoService(): CryptoService {\r\n return this.cryptoService;\r\n }\r\n}\r\n","import * as bigInt from 'big-integer';\r\n\r\nimport { EncryptionType } from '../enums/encryptionType';\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { EncryptedObject } from '../models/domain/encryptedObject';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { CryptoService as CryptoServiceAbstraction } from '../abstractions/crypto.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from './constants.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst Keys = {\r\n key: 'key',\r\n encOrgKeys: 'encOrgKeys',\r\n encPrivateKey: 'encPrivateKey',\r\n encKey: 'encKey',\r\n keyHash: 'keyHash',\r\n};\r\n\r\nexport class CryptoService implements CryptoServiceAbstraction {\r\n private key: SymmetricCryptoKey;\r\n private encKey: SymmetricCryptoKey;\r\n private legacyEtmKey: SymmetricCryptoKey;\r\n private keyHash: string;\r\n private publicKey: ArrayBuffer;\r\n private privateKey: ArrayBuffer;\r\n private orgKeys: Map;\r\n\r\n constructor(private storageService: StorageService, private secureStorageService: StorageService,\r\n private cryptoFunctionService: CryptoFunctionService) { }\r\n\r\n async setKey(key: SymmetricCryptoKey): Promise {\r\n this.key = key;\r\n\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null) {\r\n // if we have a lock option set, we do not store the key\r\n return;\r\n }\r\n\r\n return this.secureStorageService.save(Keys.key, key.keyB64);\r\n }\r\n\r\n setKeyHash(keyHash: string): Promise<{}> {\r\n this.keyHash = keyHash;\r\n return this.storageService.save(Keys.keyHash, keyHash);\r\n }\r\n\r\n async setEncKey(encKey: string): Promise<{}> {\r\n if (encKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encKey, encKey);\r\n this.encKey = null;\r\n }\r\n\r\n async setEncPrivateKey(encPrivateKey: string): Promise<{}> {\r\n if (encPrivateKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encPrivateKey, encPrivateKey);\r\n this.privateKey = null;\r\n }\r\n\r\n setOrgKeys(orgs: ProfileOrganizationResponse[]): Promise<{}> {\r\n const orgKeys: any = {};\r\n orgs.forEach((org) => {\r\n orgKeys[org.id] = org.key;\r\n });\r\n\r\n this.orgKeys = null;\r\n return this.storageService.save(Keys.encOrgKeys, orgKeys);\r\n }\r\n\r\n async getKey(): Promise {\r\n if (this.key != null) {\r\n return this.key;\r\n }\r\n\r\n const key = await this.secureStorageService.get(Keys.key);\r\n if (key != null) {\r\n this.key = new SymmetricCryptoKey(Utils.fromB64ToArray(key).buffer);\r\n }\r\n\r\n return key == null ? null : this.key;\r\n }\r\n\r\n getKeyHash(): Promise {\r\n if (this.keyHash != null) {\r\n return Promise.resolve(this.keyHash);\r\n }\r\n\r\n return this.storageService.get(Keys.keyHash);\r\n }\r\n\r\n @sequentialize(() => 'getEncKey')\r\n async getEncKey(): Promise {\r\n if (this.encKey != null) {\r\n return this.encKey;\r\n }\r\n\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n if (encKey == null) {\r\n return null;\r\n }\r\n\r\n const key = await this.getKey();\r\n if (key == null) {\r\n return null;\r\n }\r\n\r\n let decEncKey: ArrayBuffer;\r\n const encKeyCipher = new CipherString(encKey);\r\n if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_B64) {\r\n decEncKey = await this.decryptToBytes(encKeyCipher, key);\r\n } else if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_HmacSha256_B64) {\r\n const newKey = await this.stretchKey(key);\r\n decEncKey = await this.decryptToBytes(encKeyCipher, newKey);\r\n } else {\r\n throw new Error('Unsupported encKey type.');\r\n }\r\n\r\n if (decEncKey == null) {\r\n return null;\r\n }\r\n this.encKey = new SymmetricCryptoKey(decEncKey);\r\n return this.encKey;\r\n }\r\n\r\n async getPublicKey(): Promise {\r\n if (this.publicKey != null) {\r\n return this.publicKey;\r\n }\r\n\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n return null;\r\n }\r\n\r\n this.publicKey = await this.cryptoFunctionService.rsaExtractPublicKey(privateKey);\r\n return this.publicKey;\r\n }\r\n\r\n async getPrivateKey(): Promise {\r\n if (this.privateKey != null) {\r\n return this.privateKey;\r\n }\r\n\r\n const encPrivateKey = await this.storageService.get(Keys.encPrivateKey);\r\n if (encPrivateKey == null) {\r\n return null;\r\n }\r\n\r\n this.privateKey = await this.decryptToBytes(new CipherString(encPrivateKey), null);\r\n return this.privateKey;\r\n }\r\n\r\n async getFingerprint(userId: string, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey === null) {\r\n throw new Error('No public key available.');\r\n }\r\n const keyFingerprint = await this.cryptoFunctionService.hash(publicKey, 'sha256');\r\n const userFingerprint = await this.hkdfExpand(keyFingerprint, Utils.fromUtf8ToArray(userId), 32);\r\n return this.hashPhrase(userFingerprint.buffer);\r\n }\r\n\r\n @sequentialize(() => 'getOrgKeys')\r\n async getOrgKeys(): Promise> {\r\n if (this.orgKeys != null && this.orgKeys.size > 0) {\r\n return this.orgKeys;\r\n }\r\n\r\n const encOrgKeys = await this.storageService.get(Keys.encOrgKeys);\r\n if (encOrgKeys == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys: Map = new Map();\r\n let setKey = false;\r\n\r\n for (const orgId in encOrgKeys) {\r\n if (!encOrgKeys.hasOwnProperty(orgId)) {\r\n continue;\r\n }\r\n\r\n const decValue = await this.rsaDecrypt(encOrgKeys[orgId]);\r\n orgKeys.set(orgId, new SymmetricCryptoKey(decValue));\r\n setKey = true;\r\n }\r\n\r\n if (setKey) {\r\n this.orgKeys = orgKeys;\r\n }\r\n\r\n return this.orgKeys;\r\n }\r\n\r\n async getOrgKey(orgId: string): Promise {\r\n if (orgId == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys = await this.getOrgKeys();\r\n if (orgKeys == null || !orgKeys.has(orgId)) {\r\n return null;\r\n }\r\n\r\n return orgKeys.get(orgId);\r\n }\r\n\r\n async hasKey(): Promise {\r\n return (await this.getKey()) != null;\r\n }\r\n\r\n async hasEncKey(): Promise {\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n return encKey != null;\r\n }\r\n\r\n clearKey(): Promise {\r\n this.key = this.legacyEtmKey = null;\r\n return this.secureStorageService.remove(Keys.key);\r\n }\r\n\r\n clearKeyHash(): Promise {\r\n this.keyHash = null;\r\n return this.storageService.remove(Keys.keyHash);\r\n }\r\n\r\n clearEncKey(memoryOnly?: boolean): Promise {\r\n this.encKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encKey);\r\n }\r\n\r\n clearKeyPair(memoryOnly?: boolean): Promise {\r\n this.privateKey = null;\r\n this.publicKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encPrivateKey);\r\n }\r\n\r\n clearOrgKeys(memoryOnly?: boolean): Promise {\r\n this.orgKeys = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encOrgKeys);\r\n }\r\n\r\n clearPinProtectedKey(): Promise {\r\n return this.storageService.remove(ConstantsService.pinProtectedKey);\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 this.clearPinProtectedKey(),\r\n ]);\r\n }\r\n\r\n async toggleKey(): Promise {\r\n const key = await this.getKey();\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null || option === 0) {\r\n // if we have a lock option set, clear the key\r\n await this.clearKey();\r\n this.key = key;\r\n return;\r\n }\r\n\r\n await this.setKey(key);\r\n }\r\n\r\n async makeKey(password: string, salt: string, kdf: KdfType, kdfIterations: number):\r\n Promise {\r\n let key: ArrayBuffer = null;\r\n if (kdf == null || kdf === KdfType.PBKDF2_SHA256) {\r\n if (kdfIterations == null) {\r\n kdfIterations = 5000;\r\n } else if (kdfIterations < 5000) {\r\n throw new Error('PBKDF2 iteration minimum is 5000.');\r\n }\r\n key = await this.cryptoFunctionService.pbkdf2(password, salt, 'sha256', kdfIterations);\r\n } else {\r\n throw new Error('Unknown Kdf.');\r\n }\r\n return new SymmetricCryptoKey(key);\r\n }\r\n\r\n async makeShareKey(): Promise<[CipherString, SymmetricCryptoKey]> {\r\n const shareKey = await this.cryptoFunctionService.randomBytes(64);\r\n const publicKey = await this.getPublicKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey);\r\n return [encShareKey, new SymmetricCryptoKey(shareKey)];\r\n }\r\n\r\n async makeKeyPair(key?: SymmetricCryptoKey): Promise<[string, CipherString]> {\r\n const keyPair = await this.cryptoFunctionService.rsaGenerateKeyPair(2048);\r\n const publicB64 = Utils.fromBufferToB64(keyPair[0]);\r\n const privateEnc = await this.encrypt(keyPair[1], key);\r\n return [publicB64, privateEnc];\r\n }\r\n\r\n async makePinKey(pin: string, salt: string, kdf: KdfType, kdfIterations: number): Promise {\r\n const pinKey = await this.makeKey(pin, salt, kdf, kdfIterations);\r\n return await this.stretchKey(pinKey);\r\n }\r\n\r\n async hashPassword(password: string, key: SymmetricCryptoKey): Promise {\r\n if (key == null) {\r\n key = await this.getKey();\r\n }\r\n if (password == null || key == null) {\r\n throw new Error('Invalid parameters.');\r\n }\r\n\r\n const hash = await this.cryptoFunctionService.pbkdf2(key.key, password, 'sha256', 1);\r\n return Utils.fromBufferToB64(hash);\r\n }\r\n\r\n async makeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const theKey = await this.getKeyForEncryption(key);\r\n const encKey = await this.cryptoFunctionService.randomBytes(64);\r\n return this.buildEncKey(theKey, encKey);\r\n }\r\n\r\n async remakeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const encKey = await this.getEncKey();\r\n return this.buildEncKey(key, encKey.key);\r\n }\r\n\r\n async encrypt(plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n if (plainValue == null) {\r\n return Promise.resolve(null);\r\n }\r\n\r\n let plainBuf: ArrayBuffer;\r\n if (typeof (plainValue) === 'string') {\r\n plainBuf = Utils.fromUtf8ToArray(plainValue).buffer;\r\n } else {\r\n plainBuf = plainValue;\r\n }\r\n\r\n const encObj = await this.aesEncrypt(plainBuf, key);\r\n const iv = Utils.fromBufferToB64(encObj.iv);\r\n const data = Utils.fromBufferToB64(encObj.data);\r\n const mac = encObj.mac != null ? Utils.fromBufferToB64(encObj.mac) : null;\r\n return new CipherString(encObj.key.encType, iv, data, mac);\r\n }\r\n\r\n async encryptToBytes(plainValue: ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n const encValue = await this.aesEncrypt(plainValue, key);\r\n let macLen = 0;\r\n if (encValue.mac != null) {\r\n macLen = encValue.mac.byteLength;\r\n }\r\n\r\n const encBytes = new Uint8Array(1 + encValue.iv.byteLength + macLen + encValue.data.byteLength);\r\n encBytes.set([encValue.key.encType]);\r\n encBytes.set(new Uint8Array(encValue.iv), 1);\r\n if (encValue.mac != null) {\r\n encBytes.set(new Uint8Array(encValue.mac), 1 + encValue.iv.byteLength);\r\n }\r\n\r\n encBytes.set(new Uint8Array(encValue.data), 1 + encValue.iv.byteLength + macLen);\r\n return encBytes.buffer;\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey == null) {\r\n throw new Error('Public key unavailable.');\r\n }\r\n\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n return new CipherString(EncryptionType.Rsa2048_OaepSha1_B64, Utils.fromBufferToB64(encBytes));\r\n }\r\n\r\n async decryptToBytes(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n const iv = Utils.fromB64ToArray(cipherString.iv).buffer;\r\n const data = Utils.fromB64ToArray(cipherString.data).buffer;\r\n const mac = cipherString.mac ? Utils.fromB64ToArray(cipherString.mac).buffer : null;\r\n const decipher = await this.aesDecryptToBytes(cipherString.encryptionType, data, iv, mac, key);\r\n if (decipher == null) {\r\n return null;\r\n }\r\n\r\n return decipher;\r\n }\r\n\r\n async decryptToUtf8(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n return await this.aesDecryptToUtf8(cipherString.encryptionType, cipherString.data,\r\n cipherString.iv, cipherString.mac, key);\r\n }\r\n\r\n async decryptFromBytes(encBuf: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n if (encBuf == null) {\r\n throw new Error('no encBuf.');\r\n }\r\n\r\n const encBytes = new Uint8Array(encBuf);\r\n const encType = encBytes[0];\r\n let ctBytes: Uint8Array = null;\r\n let ivBytes: Uint8Array = null;\r\n let macBytes: Uint8Array = null;\r\n\r\n switch (encType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encBytes.length <= 49) { // 1 + 16 + 32 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n macBytes = encBytes.slice(17, 49);\r\n ctBytes = encBytes.slice(49);\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encBytes.length <= 17) { // 1 + 16 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n ctBytes = encBytes.slice(17);\r\n break;\r\n default:\r\n return null;\r\n }\r\n\r\n return await this.aesDecryptToBytes(encType, ctBytes.buffer, ivBytes.buffer,\r\n macBytes != null ? macBytes.buffer : null, key);\r\n }\r\n\r\n // EFForg/OpenWireless\r\n // ref https://github.com/EFForg/OpenWireless/blob/master/app/js/diceware.js\r\n async randomNumber(min: number, max: number): Promise {\r\n let rval = 0;\r\n const range = max - min + 1;\r\n const bitsNeeded = Math.ceil(Math.log2(range));\r\n if (bitsNeeded > 53) {\r\n throw new Error('We cannot generate numbers larger than 53 bits.');\r\n }\r\n\r\n const bytesNeeded = Math.ceil(bitsNeeded / 8);\r\n const mask = Math.pow(2, bitsNeeded) - 1;\r\n // 7776 -> (2^13 = 8192) -1 == 8191 or 0x00001111 11111111\r\n\r\n // Fill a byte array with N random numbers\r\n const byteArray = new Uint8Array(await this.cryptoFunctionService.randomBytes(bytesNeeded));\r\n\r\n let p = (bytesNeeded - 1) * 8;\r\n for (let i = 0; i < bytesNeeded; i++) {\r\n rval += byteArray[i] * Math.pow(2, p);\r\n p -= 8;\r\n }\r\n\r\n // Use & to apply the mask and reduce the number of recursive lookups\r\n // tslint:disable-next-line\r\n rval = rval & mask;\r\n\r\n if (rval >= range) {\r\n // Integer out of acceptable range\r\n return this.randomNumber(min, max);\r\n }\r\n\r\n // Return an integer that falls within the range\r\n return min + rval;\r\n }\r\n\r\n // Helpers\r\n\r\n private async aesEncrypt(data: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const obj = new EncryptedObject();\r\n obj.key = await this.getKeyForEncryption(key);\r\n obj.iv = await this.cryptoFunctionService.randomBytes(16);\r\n obj.data = await this.cryptoFunctionService.aesEncrypt(data, obj.iv, obj.key.encKey);\r\n\r\n if (obj.key.macKey != null) {\r\n const macData = new Uint8Array(obj.iv.byteLength + obj.data.byteLength);\r\n macData.set(new Uint8Array(obj.iv), 0);\r\n macData.set(new Uint8Array(obj.data), obj.iv.byteLength);\r\n obj.mac = await this.cryptoFunctionService.hmac(macData.buffer, obj.key.macKey, 'sha256');\r\n }\r\n\r\n return obj;\r\n }\r\n\r\n private async aesDecryptToUtf8(encType: EncryptionType, data: string, iv: string, mac: string,\r\n key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n // tslint:disable-next-line\r\n console.error('mac required.');\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n // tslint:disable-next-line\r\n console.error('encType unavailable.');\r\n return null;\r\n }\r\n\r\n const fastParams = this.cryptoFunctionService.aesDecryptFastParameters(data, iv, mac, theKey);\r\n if (fastParams.macKey != null && fastParams.mac != null) {\r\n const computedMac = await this.cryptoFunctionService.hmacFast(fastParams.macData,\r\n fastParams.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compareFast(fastParams.mac, computedMac);\r\n if (!macsEqual) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return this.cryptoFunctionService.aesDecryptFast(fastParams);\r\n }\r\n\r\n private async aesDecryptToBytes(encType: EncryptionType, data: ArrayBuffer, iv: ArrayBuffer,\r\n mac: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n return null;\r\n }\r\n\r\n if (theKey.macKey != null && mac != null) {\r\n const macData = new Uint8Array(iv.byteLength + data.byteLength);\r\n macData.set(new Uint8Array(iv), 0);\r\n macData.set(new Uint8Array(data), iv.byteLength);\r\n const computedMac = await this.cryptoFunctionService.hmac(macData.buffer, theKey.macKey, 'sha256');\r\n if (computedMac === null) {\r\n return null;\r\n }\r\n\r\n const macsMatch = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsMatch) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return await this.cryptoFunctionService.aesDecrypt(data, iv, theKey.encKey);\r\n }\r\n\r\n private async rsaDecrypt(encValue: string): Promise {\r\n const headerPieces = encValue.split('.');\r\n let encType: EncryptionType = null;\r\n let encPieces: string[];\r\n\r\n if (headerPieces.length === 1) {\r\n encType = EncryptionType.Rsa2048_OaepSha256_B64;\r\n encPieces = [headerPieces[0]];\r\n } else if (headerPieces.length === 2) {\r\n try {\r\n encType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) { }\r\n }\r\n\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n // HmacSha256 types are deprecated\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n if (encPieces == null || encPieces.length <= 0) {\r\n throw new Error('encPieces unavailable.');\r\n }\r\n\r\n const data = Utils.fromB64ToArray(encPieces[0]).buffer;\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n throw new Error('No private key.');\r\n }\r\n\r\n let alg: 'sha1' | 'sha256' = 'sha1';\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n alg = 'sha256';\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n return this.cryptoFunctionService.rsaDecrypt(data, privateKey, alg);\r\n }\r\n\r\n private async getKeyForEncryption(key?: SymmetricCryptoKey): Promise {\r\n if (key != null) {\r\n return key;\r\n }\r\n\r\n const encKey = await this.getEncKey();\r\n if (encKey != null) {\r\n return encKey;\r\n }\r\n\r\n return await this.getKey();\r\n }\r\n\r\n private resolveLegacyKey(encType: EncryptionType, key: SymmetricCryptoKey): SymmetricCryptoKey {\r\n if (encType === EncryptionType.AesCbc128_HmacSha256_B64 &&\r\n key.encType === EncryptionType.AesCbc256_B64) {\r\n // Old encrypt-then-mac scheme, make a new key\r\n if (this.legacyEtmKey == null) {\r\n this.legacyEtmKey = new SymmetricCryptoKey(key.key, EncryptionType.AesCbc128_HmacSha256_B64);\r\n }\r\n return this.legacyEtmKey;\r\n }\r\n\r\n return key;\r\n }\r\n\r\n private async stretchKey(key: SymmetricCryptoKey): Promise {\r\n const newKey = new Uint8Array(64);\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('enc'), 32));\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('mac'), 32), 32);\r\n return new SymmetricCryptoKey(newKey.buffer);\r\n }\r\n\r\n // ref: https://tools.ietf.org/html/rfc5869\r\n private async hkdfExpand(prk: ArrayBuffer, info: Uint8Array, size: number) {\r\n const hashLen = 32; // sha256\r\n const okm = new Uint8Array(size);\r\n let previousT = new Uint8Array(0);\r\n const n = Math.ceil(size / hashLen);\r\n for (let i = 0; i < n; i++) {\r\n const t = new Uint8Array(previousT.length + info.length + 1);\r\n t.set(previousT);\r\n t.set(info, previousT.length);\r\n t.set([i + 1], t.length - 1);\r\n previousT = new Uint8Array(await this.cryptoFunctionService.hmac(t.buffer, prk, 'sha256'));\r\n okm.set(previousT, i * hashLen);\r\n }\r\n return okm;\r\n }\r\n\r\n private async hashPhrase(hash: ArrayBuffer, minimumEntropy: number = 64) {\r\n const entropyPerWord = Math.log(EEFLongWordList.length) / Math.log(2);\r\n let numWords = Math.ceil(minimumEntropy / entropyPerWord);\r\n\r\n const hashArr = Array.from(new Uint8Array(hash));\r\n const entropyAvailable = hashArr.length * 4;\r\n if (numWords * entropyPerWord > entropyAvailable) {\r\n throw new Error('Output entropy of hash function is too small');\r\n }\r\n\r\n const phrase: string[] = [];\r\n let hashNumber = bigInt.fromArray(hashArr, 256);\r\n while (numWords--) {\r\n const remainder = hashNumber.mod(EEFLongWordList.length);\r\n hashNumber = hashNumber.divide(EEFLongWordList.length);\r\n phrase.push(EEFLongWordList[remainder as any]);\r\n }\r\n return phrase;\r\n }\r\n\r\n private async buildEncKey(key: SymmetricCryptoKey, encKey: ArrayBuffer = null)\r\n : Promise<[SymmetricCryptoKey, CipherString]> {\r\n let encKeyEnc: CipherString = null;\r\n if (key.key.byteLength === 32) {\r\n const newKey = await this.stretchKey(key);\r\n encKeyEnc = await this.encrypt(encKey, newKey);\r\n } else if (key.key.byteLength === 64) {\r\n encKeyEnc = await this.encrypt(encKey, key);\r\n } else {\r\n throw new Error('Invalid key size.');\r\n }\r\n return [new SymmetricCryptoKey(encKey), encKeyEnc];\r\n }\r\n}\r\n","// EFF's Long Wordlist from https://www.eff.org/dice\r\nexport const EEFLongWordList = [\r\n 'abacus',\r\n 'abdomen',\r\n 'abdominal',\r\n 'abide',\r\n 'abiding',\r\n 'ability',\r\n 'ablaze',\r\n 'able',\r\n 'abnormal',\r\n 'abrasion',\r\n 'abrasive',\r\n 'abreast',\r\n 'abridge',\r\n 'abroad',\r\n 'abruptly',\r\n 'absence',\r\n 'absentee',\r\n 'absently',\r\n 'absinthe',\r\n 'absolute',\r\n 'absolve',\r\n 'abstain',\r\n 'abstract',\r\n 'absurd',\r\n 'accent',\r\n 'acclaim',\r\n 'acclimate',\r\n 'accompany',\r\n 'account',\r\n 'accuracy',\r\n 'accurate',\r\n 'accustom',\r\n 'acetone',\r\n 'achiness',\r\n 'aching',\r\n 'acid',\r\n 'acorn',\r\n 'acquaint',\r\n 'acquire',\r\n 'acre',\r\n 'acrobat',\r\n 'acronym',\r\n 'acting',\r\n 'action',\r\n 'activate',\r\n 'activator',\r\n 'active',\r\n 'activism',\r\n 'activist',\r\n 'activity',\r\n 'actress',\r\n 'acts',\r\n 'acutely',\r\n 'acuteness',\r\n 'aeration',\r\n 'aerobics',\r\n 'aerosol',\r\n 'aerospace',\r\n 'afar',\r\n 'affair',\r\n 'affected',\r\n 'affecting',\r\n 'affection',\r\n 'affidavit',\r\n 'affiliate',\r\n 'affirm',\r\n 'affix',\r\n 'afflicted',\r\n 'affluent',\r\n 'afford',\r\n 'affront',\r\n 'aflame',\r\n 'afloat',\r\n 'aflutter',\r\n 'afoot',\r\n 'afraid',\r\n 'afterglow',\r\n 'afterlife',\r\n 'aftermath',\r\n 'aftermost',\r\n 'afternoon',\r\n 'aged',\r\n 'ageless',\r\n 'agency',\r\n 'agenda',\r\n 'agent',\r\n 'aggregate',\r\n 'aghast',\r\n 'agile',\r\n 'agility',\r\n 'aging',\r\n 'agnostic',\r\n 'agonize',\r\n 'agonizing',\r\n 'agony',\r\n 'agreeable',\r\n 'agreeably',\r\n 'agreed',\r\n 'agreeing',\r\n 'agreement',\r\n 'aground',\r\n 'ahead',\r\n 'ahoy',\r\n 'aide',\r\n 'aids',\r\n 'aim',\r\n 'ajar',\r\n 'alabaster',\r\n 'alarm',\r\n 'albatross',\r\n 'album',\r\n 'alfalfa',\r\n 'algebra',\r\n 'algorithm',\r\n 'alias',\r\n 'alibi',\r\n 'alienable',\r\n 'alienate',\r\n 'aliens',\r\n 'alike',\r\n 'alive',\r\n 'alkaline',\r\n 'alkalize',\r\n 'almanac',\r\n 'almighty',\r\n 'almost',\r\n 'aloe',\r\n 'aloft',\r\n 'aloha',\r\n 'alone',\r\n 'alongside',\r\n 'aloof',\r\n 'alphabet',\r\n 'alright',\r\n 'although',\r\n 'altitude',\r\n 'alto',\r\n 'aluminum',\r\n 'alumni',\r\n 'always',\r\n 'amaretto',\r\n 'amaze',\r\n 'amazingly',\r\n 'amber',\r\n 'ambiance',\r\n 'ambiguity',\r\n 'ambiguous',\r\n 'ambition',\r\n 'ambitious',\r\n 'ambulance',\r\n 'ambush',\r\n 'amendable',\r\n 'amendment',\r\n 'amends',\r\n 'amenity',\r\n 'amiable',\r\n 'amicably',\r\n 'amid',\r\n 'amigo',\r\n 'amino',\r\n 'amiss',\r\n 'ammonia',\r\n 'ammonium',\r\n 'amnesty',\r\n 'amniotic',\r\n 'among',\r\n 'amount',\r\n 'amperage',\r\n 'ample',\r\n 'amplifier',\r\n 'amplify',\r\n 'amply',\r\n 'amuck',\r\n 'amulet',\r\n 'amusable',\r\n 'amused',\r\n 'amusement',\r\n 'amuser',\r\n 'amusing',\r\n 'anaconda',\r\n 'anaerobic',\r\n 'anagram',\r\n 'anatomist',\r\n 'anatomy',\r\n 'anchor',\r\n 'anchovy',\r\n 'ancient',\r\n 'android',\r\n 'anemia',\r\n 'anemic',\r\n 'aneurism',\r\n 'anew',\r\n 'angelfish',\r\n 'angelic',\r\n 'anger',\r\n 'angled',\r\n 'angler',\r\n 'angles',\r\n 'angling',\r\n 'angrily',\r\n 'angriness',\r\n 'anguished',\r\n 'angular',\r\n 'animal',\r\n 'animate',\r\n 'animating',\r\n 'animation',\r\n 'animator',\r\n 'anime',\r\n 'animosity',\r\n 'ankle',\r\n 'annex',\r\n 'annotate',\r\n 'announcer',\r\n 'annoying',\r\n 'annually',\r\n 'annuity',\r\n 'anointer',\r\n 'another',\r\n 'answering',\r\n 'antacid',\r\n 'antarctic',\r\n 'anteater',\r\n 'antelope',\r\n 'antennae',\r\n 'anthem',\r\n 'anthill',\r\n 'anthology',\r\n 'antibody',\r\n 'antics',\r\n 'antidote',\r\n 'antihero',\r\n 'antiquely',\r\n 'antiques',\r\n 'antiquity',\r\n 'antirust',\r\n 'antitoxic',\r\n 'antitrust',\r\n 'antiviral',\r\n 'antivirus',\r\n 'antler',\r\n 'antonym',\r\n 'antsy',\r\n 'anvil',\r\n 'anybody',\r\n 'anyhow',\r\n 'anymore',\r\n 'anyone',\r\n 'anyplace',\r\n 'anything',\r\n 'anytime',\r\n 'anyway',\r\n 'anywhere',\r\n 'aorta',\r\n 'apache',\r\n 'apostle',\r\n 'appealing',\r\n 'appear',\r\n 'appease',\r\n 'appeasing',\r\n 'appendage',\r\n 'appendix',\r\n 'appetite',\r\n 'appetizer',\r\n 'applaud',\r\n 'applause',\r\n 'apple',\r\n 'appliance',\r\n 'applicant',\r\n 'applied',\r\n 'apply',\r\n 'appointee',\r\n 'appraisal',\r\n 'appraiser',\r\n 'apprehend',\r\n 'approach',\r\n 'approval',\r\n 'approve',\r\n 'apricot',\r\n 'april',\r\n 'apron',\r\n 'aptitude',\r\n 'aptly',\r\n 'aqua',\r\n 'aqueduct',\r\n 'arbitrary',\r\n 'arbitrate',\r\n 'ardently',\r\n 'area',\r\n 'arena',\r\n 'arguable',\r\n 'arguably',\r\n 'argue',\r\n 'arise',\r\n 'armadillo',\r\n 'armband',\r\n 'armchair',\r\n 'armed',\r\n 'armful',\r\n 'armhole',\r\n 'arming',\r\n 'armless',\r\n 'armoire',\r\n 'armored',\r\n 'armory',\r\n 'armrest',\r\n 'army',\r\n 'aroma',\r\n 'arose',\r\n 'around',\r\n 'arousal',\r\n 'arrange',\r\n 'array',\r\n 'arrest',\r\n 'arrival',\r\n 'arrive',\r\n 'arrogance',\r\n 'arrogant',\r\n 'arson',\r\n 'art',\r\n 'ascend',\r\n 'ascension',\r\n 'ascent',\r\n 'ascertain',\r\n 'ashamed',\r\n 'ashen',\r\n 'ashes',\r\n 'ashy',\r\n 'aside',\r\n 'askew',\r\n 'asleep',\r\n 'asparagus',\r\n 'aspect',\r\n 'aspirate',\r\n 'aspire',\r\n 'aspirin',\r\n 'astonish',\r\n 'astound',\r\n 'astride',\r\n 'astrology',\r\n 'astronaut',\r\n 'astronomy',\r\n 'astute',\r\n 'atlantic',\r\n 'atlas',\r\n 'atom',\r\n 'atonable',\r\n 'atop',\r\n 'atrium',\r\n 'atrocious',\r\n 'atrophy',\r\n 'attach',\r\n 'attain',\r\n 'attempt',\r\n 'attendant',\r\n 'attendee',\r\n 'attention',\r\n 'attentive',\r\n 'attest',\r\n 'attic',\r\n 'attire',\r\n 'attitude',\r\n 'attractor',\r\n 'attribute',\r\n 'atypical',\r\n 'auction',\r\n 'audacious',\r\n 'audacity',\r\n 'audible',\r\n 'audibly',\r\n 'audience',\r\n 'audio',\r\n 'audition',\r\n 'augmented',\r\n 'august',\r\n 'authentic',\r\n 'author',\r\n 'autism',\r\n 'autistic',\r\n 'autograph',\r\n 'automaker',\r\n 'automated',\r\n 'automatic',\r\n 'autopilot',\r\n 'available',\r\n 'avalanche',\r\n 'avatar',\r\n 'avenge',\r\n 'avenging',\r\n 'avenue',\r\n 'average',\r\n 'aversion',\r\n 'avert',\r\n 'aviation',\r\n 'aviator',\r\n 'avid',\r\n 'avoid',\r\n 'await',\r\n 'awaken',\r\n 'award',\r\n 'aware',\r\n 'awhile',\r\n 'awkward',\r\n 'awning',\r\n 'awoke',\r\n 'awry',\r\n 'axis',\r\n 'babble',\r\n 'babbling',\r\n 'babied',\r\n 'baboon',\r\n 'backache',\r\n 'backboard',\r\n 'backboned',\r\n 'backdrop',\r\n 'backed',\r\n 'backer',\r\n 'backfield',\r\n 'backfire',\r\n 'backhand',\r\n 'backing',\r\n 'backlands',\r\n 'backlash',\r\n 'backless',\r\n 'backlight',\r\n 'backlit',\r\n 'backlog',\r\n 'backpack',\r\n 'backpedal',\r\n 'backrest',\r\n 'backroom',\r\n 'backshift',\r\n 'backside',\r\n 'backslid',\r\n 'backspace',\r\n 'backspin',\r\n 'backstab',\r\n 'backstage',\r\n 'backtalk',\r\n 'backtrack',\r\n 'backup',\r\n 'backward',\r\n 'backwash',\r\n 'backwater',\r\n 'backyard',\r\n 'bacon',\r\n 'bacteria',\r\n 'bacterium',\r\n 'badass',\r\n 'badge',\r\n 'badland',\r\n 'badly',\r\n 'badness',\r\n 'baffle',\r\n 'baffling',\r\n 'bagel',\r\n 'bagful',\r\n 'baggage',\r\n 'bagged',\r\n 'baggie',\r\n 'bagginess',\r\n 'bagging',\r\n 'baggy',\r\n 'bagpipe',\r\n 'baguette',\r\n 'baked',\r\n 'bakery',\r\n 'bakeshop',\r\n 'baking',\r\n 'balance',\r\n 'balancing',\r\n 'balcony',\r\n 'balmy',\r\n 'balsamic',\r\n 'bamboo',\r\n 'banana',\r\n 'banish',\r\n 'banister',\r\n 'banjo',\r\n 'bankable',\r\n 'bankbook',\r\n 'banked',\r\n 'banker',\r\n 'banking',\r\n 'banknote',\r\n 'bankroll',\r\n 'banner',\r\n 'bannister',\r\n 'banshee',\r\n 'banter',\r\n 'barbecue',\r\n 'barbed',\r\n 'barbell',\r\n 'barber',\r\n 'barcode',\r\n 'barge',\r\n 'bargraph',\r\n 'barista',\r\n 'baritone',\r\n 'barley',\r\n 'barmaid',\r\n 'barman',\r\n 'barn',\r\n 'barometer',\r\n 'barrack',\r\n 'barracuda',\r\n 'barrel',\r\n 'barrette',\r\n 'barricade',\r\n 'barrier',\r\n 'barstool',\r\n 'bartender',\r\n 'barterer',\r\n 'bash',\r\n 'basically',\r\n 'basics',\r\n 'basil',\r\n 'basin',\r\n 'basis',\r\n 'basket',\r\n 'batboy',\r\n 'batch',\r\n 'bath',\r\n 'baton',\r\n 'bats',\r\n 'battalion',\r\n 'battered',\r\n 'battering',\r\n 'battery',\r\n 'batting',\r\n 'battle',\r\n 'bauble',\r\n 'bazooka',\r\n 'blabber',\r\n 'bladder',\r\n 'blade',\r\n 'blah',\r\n 'blame',\r\n 'blaming',\r\n 'blanching',\r\n 'blandness',\r\n 'blank',\r\n 'blaspheme',\r\n 'blasphemy',\r\n 'blast',\r\n 'blatancy',\r\n 'blatantly',\r\n 'blazer',\r\n 'blazing',\r\n 'bleach',\r\n 'bleak',\r\n 'bleep',\r\n 'blemish',\r\n 'blend',\r\n 'bless',\r\n 'blighted',\r\n 'blimp',\r\n 'bling',\r\n 'blinked',\r\n 'blinker',\r\n 'blinking',\r\n 'blinks',\r\n 'blip',\r\n 'blissful',\r\n 'blitz',\r\n 'blizzard',\r\n 'bloated',\r\n 'bloating',\r\n 'blob',\r\n 'blog',\r\n 'bloomers',\r\n 'blooming',\r\n 'blooper',\r\n 'blot',\r\n 'blouse',\r\n 'blubber',\r\n 'bluff',\r\n 'bluish',\r\n 'blunderer',\r\n 'blunt',\r\n 'blurb',\r\n 'blurred',\r\n 'blurry',\r\n 'blurt',\r\n 'blush',\r\n 'blustery',\r\n 'boaster',\r\n 'boastful',\r\n 'boasting',\r\n 'boat',\r\n 'bobbed',\r\n 'bobbing',\r\n 'bobble',\r\n 'bobcat',\r\n 'bobsled',\r\n 'bobtail',\r\n 'bodacious',\r\n 'body',\r\n 'bogged',\r\n 'boggle',\r\n 'bogus',\r\n 'boil',\r\n 'bok',\r\n 'bolster',\r\n 'bolt',\r\n 'bonanza',\r\n 'bonded',\r\n 'bonding',\r\n 'bondless',\r\n 'boned',\r\n 'bonehead',\r\n 'boneless',\r\n 'bonelike',\r\n 'boney',\r\n 'bonfire',\r\n 'bonnet',\r\n 'bonsai',\r\n 'bonus',\r\n 'bony',\r\n 'boogeyman',\r\n 'boogieman',\r\n 'book',\r\n 'boondocks',\r\n 'booted',\r\n 'booth',\r\n 'bootie',\r\n 'booting',\r\n 'bootlace',\r\n 'bootleg',\r\n 'boots',\r\n 'boozy',\r\n 'borax',\r\n 'boring',\r\n 'borough',\r\n 'borrower',\r\n 'borrowing',\r\n 'boss',\r\n 'botanical',\r\n 'botanist',\r\n 'botany',\r\n 'botch',\r\n 'both',\r\n 'bottle',\r\n 'bottling',\r\n 'bottom',\r\n 'bounce',\r\n 'bouncing',\r\n 'bouncy',\r\n 'bounding',\r\n 'boundless',\r\n 'bountiful',\r\n 'bovine',\r\n 'boxcar',\r\n 'boxer',\r\n 'boxing',\r\n 'boxlike',\r\n 'boxy',\r\n 'breach',\r\n 'breath',\r\n 'breeches',\r\n 'breeching',\r\n 'breeder',\r\n 'breeding',\r\n 'breeze',\r\n 'breezy',\r\n 'brethren',\r\n 'brewery',\r\n 'brewing',\r\n 'briar',\r\n 'bribe',\r\n 'brick',\r\n 'bride',\r\n 'bridged',\r\n 'brigade',\r\n 'bright',\r\n 'brilliant',\r\n 'brim',\r\n 'bring',\r\n 'brink',\r\n 'brisket',\r\n 'briskly',\r\n 'briskness',\r\n 'bristle',\r\n 'brittle',\r\n 'broadband',\r\n 'broadcast',\r\n 'broaden',\r\n 'broadly',\r\n 'broadness',\r\n 'broadside',\r\n 'broadways',\r\n 'broiler',\r\n 'broiling',\r\n 'broken',\r\n 'broker',\r\n 'bronchial',\r\n 'bronco',\r\n 'bronze',\r\n 'bronzing',\r\n 'brook',\r\n 'broom',\r\n 'brought',\r\n 'browbeat',\r\n 'brownnose',\r\n 'browse',\r\n 'browsing',\r\n 'bruising',\r\n 'brunch',\r\n 'brunette',\r\n 'brunt',\r\n 'brush',\r\n 'brussels',\r\n 'brute',\r\n 'brutishly',\r\n 'bubble',\r\n 'bubbling',\r\n 'bubbly',\r\n 'buccaneer',\r\n 'bucked',\r\n 'bucket',\r\n 'buckle',\r\n 'buckshot',\r\n 'buckskin',\r\n 'bucktooth',\r\n 'buckwheat',\r\n 'buddhism',\r\n 'buddhist',\r\n 'budding',\r\n 'buddy',\r\n 'budget',\r\n 'buffalo',\r\n 'buffed',\r\n 'buffer',\r\n 'buffing',\r\n 'buffoon',\r\n 'buggy',\r\n 'bulb',\r\n 'bulge',\r\n 'bulginess',\r\n 'bulgur',\r\n 'bulk',\r\n 'bulldog',\r\n 'bulldozer',\r\n 'bullfight',\r\n 'bullfrog',\r\n 'bullhorn',\r\n 'bullion',\r\n 'bullish',\r\n 'bullpen',\r\n 'bullring',\r\n 'bullseye',\r\n 'bullwhip',\r\n 'bully',\r\n 'bunch',\r\n 'bundle',\r\n 'bungee',\r\n 'bunion',\r\n 'bunkbed',\r\n 'bunkhouse',\r\n 'bunkmate',\r\n 'bunny',\r\n 'bunt',\r\n 'busboy',\r\n 'bush',\r\n 'busily',\r\n 'busload',\r\n 'bust',\r\n 'busybody',\r\n 'buzz',\r\n 'cabana',\r\n 'cabbage',\r\n 'cabbie',\r\n 'cabdriver',\r\n 'cable',\r\n 'caboose',\r\n 'cache',\r\n 'cackle',\r\n 'cacti',\r\n 'cactus',\r\n 'caddie',\r\n 'caddy',\r\n 'cadet',\r\n 'cadillac',\r\n 'cadmium',\r\n 'cage',\r\n 'cahoots',\r\n 'cake',\r\n 'calamari',\r\n 'calamity',\r\n 'calcium',\r\n 'calculate',\r\n 'calculus',\r\n 'caliber',\r\n 'calibrate',\r\n 'calm',\r\n 'caloric',\r\n 'calorie',\r\n 'calzone',\r\n 'camcorder',\r\n 'cameo',\r\n 'camera',\r\n 'camisole',\r\n 'camper',\r\n 'campfire',\r\n 'camping',\r\n 'campsite',\r\n 'campus',\r\n 'canal',\r\n 'canary',\r\n 'cancel',\r\n 'candied',\r\n 'candle',\r\n 'candy',\r\n 'cane',\r\n 'canine',\r\n 'canister',\r\n 'cannabis',\r\n 'canned',\r\n 'canning',\r\n 'cannon',\r\n 'cannot',\r\n 'canola',\r\n 'canon',\r\n 'canopener',\r\n 'canopy',\r\n 'canteen',\r\n 'canyon',\r\n 'capable',\r\n 'capably',\r\n 'capacity',\r\n 'cape',\r\n 'capillary',\r\n 'capital',\r\n 'capitol',\r\n 'capped',\r\n 'capricorn',\r\n 'capsize',\r\n 'capsule',\r\n 'caption',\r\n 'captivate',\r\n 'captive',\r\n 'captivity',\r\n 'capture',\r\n 'caramel',\r\n 'carat',\r\n 'caravan',\r\n 'carbon',\r\n 'cardboard',\r\n 'carded',\r\n 'cardiac',\r\n 'cardigan',\r\n 'cardinal',\r\n 'cardstock',\r\n 'carefully',\r\n 'caregiver',\r\n 'careless',\r\n 'caress',\r\n 'caretaker',\r\n 'cargo',\r\n 'caring',\r\n 'carless',\r\n 'carload',\r\n 'carmaker',\r\n 'carnage',\r\n 'carnation',\r\n 'carnival',\r\n 'carnivore',\r\n 'carol',\r\n 'carpenter',\r\n 'carpentry',\r\n 'carpool',\r\n 'carport',\r\n 'carried',\r\n 'carrot',\r\n 'carrousel',\r\n 'carry',\r\n 'cartel',\r\n 'cartload',\r\n 'carton',\r\n 'cartoon',\r\n 'cartridge',\r\n 'cartwheel',\r\n 'carve',\r\n 'carving',\r\n 'carwash',\r\n 'cascade',\r\n 'case',\r\n 'cash',\r\n 'casing',\r\n 'casino',\r\n 'casket',\r\n 'cassette',\r\n 'casually',\r\n 'casualty',\r\n 'catacomb',\r\n 'catalog',\r\n 'catalyst',\r\n 'catalyze',\r\n 'catapult',\r\n 'cataract',\r\n 'catatonic',\r\n 'catcall',\r\n 'catchable',\r\n 'catcher',\r\n 'catching',\r\n 'catchy',\r\n 'caterer',\r\n 'catering',\r\n 'catfight',\r\n 'catfish',\r\n 'cathedral',\r\n 'cathouse',\r\n 'catlike',\r\n 'catnap',\r\n 'catnip',\r\n 'catsup',\r\n 'cattail',\r\n 'cattishly',\r\n 'cattle',\r\n 'catty',\r\n 'catwalk',\r\n 'caucasian',\r\n 'caucus',\r\n 'causal',\r\n 'causation',\r\n 'cause',\r\n 'causing',\r\n 'cauterize',\r\n 'caution',\r\n 'cautious',\r\n 'cavalier',\r\n 'cavalry',\r\n 'caviar',\r\n 'cavity',\r\n 'cedar',\r\n 'celery',\r\n 'celestial',\r\n 'celibacy',\r\n 'celibate',\r\n 'celtic',\r\n 'cement',\r\n 'census',\r\n 'ceramics',\r\n 'ceremony',\r\n 'certainly',\r\n 'certainty',\r\n 'certified',\r\n 'certify',\r\n 'cesarean',\r\n 'cesspool',\r\n 'chafe',\r\n 'chaffing',\r\n 'chain',\r\n 'chair',\r\n 'chalice',\r\n 'challenge',\r\n 'chamber',\r\n 'chamomile',\r\n 'champion',\r\n 'chance',\r\n 'change',\r\n 'channel',\r\n 'chant',\r\n 'chaos',\r\n 'chaperone',\r\n 'chaplain',\r\n 'chapped',\r\n 'chaps',\r\n 'chapter',\r\n 'character',\r\n 'charbroil',\r\n 'charcoal',\r\n 'charger',\r\n 'charging',\r\n 'chariot',\r\n 'charity',\r\n 'charm',\r\n 'charred',\r\n 'charter',\r\n 'charting',\r\n 'chase',\r\n 'chasing',\r\n 'chaste',\r\n 'chastise',\r\n 'chastity',\r\n 'chatroom',\r\n 'chatter',\r\n 'chatting',\r\n 'chatty',\r\n 'cheating',\r\n 'cheddar',\r\n 'cheek',\r\n 'cheer',\r\n 'cheese',\r\n 'cheesy',\r\n 'chef',\r\n 'chemicals',\r\n 'chemist',\r\n 'chemo',\r\n 'cherisher',\r\n 'cherub',\r\n 'chess',\r\n 'chest',\r\n 'chevron',\r\n 'chevy',\r\n 'chewable',\r\n 'chewer',\r\n 'chewing',\r\n 'chewy',\r\n 'chief',\r\n 'chihuahua',\r\n 'childcare',\r\n 'childhood',\r\n 'childish',\r\n 'childless',\r\n 'childlike',\r\n 'chili',\r\n 'chill',\r\n 'chimp',\r\n 'chip',\r\n 'chirping',\r\n 'chirpy',\r\n 'chitchat',\r\n 'chivalry',\r\n 'chive',\r\n 'chloride',\r\n 'chlorine',\r\n 'choice',\r\n 'chokehold',\r\n 'choking',\r\n 'chomp',\r\n 'chooser',\r\n 'choosing',\r\n 'choosy',\r\n 'chop',\r\n 'chosen',\r\n 'chowder',\r\n 'chowtime',\r\n 'chrome',\r\n 'chubby',\r\n 'chuck',\r\n 'chug',\r\n 'chummy',\r\n 'chump',\r\n 'chunk',\r\n 'churn',\r\n 'chute',\r\n 'cider',\r\n 'cilantro',\r\n 'cinch',\r\n 'cinema',\r\n 'cinnamon',\r\n 'circle',\r\n 'circling',\r\n 'circular',\r\n 'circulate',\r\n 'circus',\r\n 'citable',\r\n 'citadel',\r\n 'citation',\r\n 'citizen',\r\n 'citric',\r\n 'citrus',\r\n 'city',\r\n 'civic',\r\n 'civil',\r\n 'clad',\r\n 'claim',\r\n 'clambake',\r\n 'clammy',\r\n 'clamor',\r\n 'clamp',\r\n 'clamshell',\r\n 'clang',\r\n 'clanking',\r\n 'clapped',\r\n 'clapper',\r\n 'clapping',\r\n 'clarify',\r\n 'clarinet',\r\n 'clarity',\r\n 'clash',\r\n 'clasp',\r\n 'class',\r\n 'clatter',\r\n 'clause',\r\n 'clavicle',\r\n 'claw',\r\n 'clay',\r\n 'clean',\r\n 'clear',\r\n 'cleat',\r\n 'cleaver',\r\n 'cleft',\r\n 'clench',\r\n 'clergyman',\r\n 'clerical',\r\n 'clerk',\r\n 'clever',\r\n 'clicker',\r\n 'client',\r\n 'climate',\r\n 'climatic',\r\n 'cling',\r\n 'clinic',\r\n 'clinking',\r\n 'clip',\r\n 'clique',\r\n 'cloak',\r\n 'clobber',\r\n 'clock',\r\n 'clone',\r\n 'cloning',\r\n 'closable',\r\n 'closure',\r\n 'clothes',\r\n 'clothing',\r\n 'cloud',\r\n 'clover',\r\n 'clubbed',\r\n 'clubbing',\r\n 'clubhouse',\r\n 'clump',\r\n 'clumsily',\r\n 'clumsy',\r\n 'clunky',\r\n 'clustered',\r\n 'clutch',\r\n 'clutter',\r\n 'coach',\r\n 'coagulant',\r\n 'coastal',\r\n 'coaster',\r\n 'coasting',\r\n 'coastland',\r\n 'coastline',\r\n 'coat',\r\n 'coauthor',\r\n 'cobalt',\r\n 'cobbler',\r\n 'cobweb',\r\n 'cocoa',\r\n 'coconut',\r\n 'cod',\r\n 'coeditor',\r\n 'coerce',\r\n 'coexist',\r\n 'coffee',\r\n 'cofounder',\r\n 'cognition',\r\n 'cognitive',\r\n 'cogwheel',\r\n 'coherence',\r\n 'coherent',\r\n 'cohesive',\r\n 'coil',\r\n 'coke',\r\n 'cola',\r\n 'cold',\r\n 'coleslaw',\r\n 'coliseum',\r\n 'collage',\r\n 'collapse',\r\n 'collar',\r\n 'collected',\r\n 'collector',\r\n 'collide',\r\n 'collie',\r\n 'collision',\r\n 'colonial',\r\n 'colonist',\r\n 'colonize',\r\n 'colony',\r\n 'colossal',\r\n 'colt',\r\n 'coma',\r\n 'come',\r\n 'comfort',\r\n 'comfy',\r\n 'comic',\r\n 'coming',\r\n 'comma',\r\n 'commence',\r\n 'commend',\r\n 'comment',\r\n 'commerce',\r\n 'commode',\r\n 'commodity',\r\n 'commodore',\r\n 'common',\r\n 'commotion',\r\n 'commute',\r\n 'commuting',\r\n 'compacted',\r\n 'compacter',\r\n 'compactly',\r\n 'compactor',\r\n 'companion',\r\n 'company',\r\n 'compare',\r\n 'compel',\r\n 'compile',\r\n 'comply',\r\n 'component',\r\n 'composed',\r\n 'composer',\r\n 'composite',\r\n 'compost',\r\n 'composure',\r\n 'compound',\r\n 'compress',\r\n 'comprised',\r\n 'computer',\r\n 'computing',\r\n 'comrade',\r\n 'concave',\r\n 'conceal',\r\n 'conceded',\r\n 'concept',\r\n 'concerned',\r\n 'concert',\r\n 'conch',\r\n 'concierge',\r\n 'concise',\r\n 'conclude',\r\n 'concrete',\r\n 'concur',\r\n 'condense',\r\n 'condiment',\r\n 'condition',\r\n 'condone',\r\n 'conducive',\r\n 'conductor',\r\n 'conduit',\r\n 'cone',\r\n 'confess',\r\n 'confetti',\r\n 'confidant',\r\n 'confident',\r\n 'confider',\r\n 'confiding',\r\n 'configure',\r\n 'confined',\r\n 'confining',\r\n 'confirm',\r\n 'conflict',\r\n 'conform',\r\n 'confound',\r\n 'confront',\r\n 'confused',\r\n 'confusing',\r\n 'confusion',\r\n 'congenial',\r\n 'congested',\r\n 'congrats',\r\n 'congress',\r\n 'conical',\r\n 'conjoined',\r\n 'conjure',\r\n 'conjuror',\r\n 'connected',\r\n 'connector',\r\n 'consensus',\r\n 'consent',\r\n 'console',\r\n 'consoling',\r\n 'consonant',\r\n 'constable',\r\n 'constant',\r\n 'constrain',\r\n 'constrict',\r\n 'construct',\r\n 'consult',\r\n 'consumer',\r\n 'consuming',\r\n 'contact',\r\n 'container',\r\n 'contempt',\r\n 'contend',\r\n 'contented',\r\n 'contently',\r\n 'contents',\r\n 'contest',\r\n 'context',\r\n 'contort',\r\n 'contour',\r\n 'contrite',\r\n 'control',\r\n 'contusion',\r\n 'convene',\r\n 'convent',\r\n 'copartner',\r\n 'cope',\r\n 'copied',\r\n 'copier',\r\n 'copilot',\r\n 'coping',\r\n 'copious',\r\n 'copper',\r\n 'copy',\r\n 'coral',\r\n 'cork',\r\n 'cornball',\r\n 'cornbread',\r\n 'corncob',\r\n 'cornea',\r\n 'corned',\r\n 'corner',\r\n 'cornfield',\r\n 'cornflake',\r\n 'cornhusk',\r\n 'cornmeal',\r\n 'cornstalk',\r\n 'corny',\r\n 'coronary',\r\n 'coroner',\r\n 'corporal',\r\n 'corporate',\r\n 'corral',\r\n 'correct',\r\n 'corridor',\r\n 'corrode',\r\n 'corroding',\r\n 'corrosive',\r\n 'corsage',\r\n 'corset',\r\n 'cortex',\r\n 'cosigner',\r\n 'cosmetics',\r\n 'cosmic',\r\n 'cosmos',\r\n 'cosponsor',\r\n 'cost',\r\n 'cottage',\r\n 'cotton',\r\n 'couch',\r\n 'cough',\r\n 'could',\r\n 'countable',\r\n 'countdown',\r\n 'counting',\r\n 'countless',\r\n 'country',\r\n 'county',\r\n 'courier',\r\n 'covenant',\r\n 'cover',\r\n 'coveted',\r\n 'coveting',\r\n 'coyness',\r\n 'cozily',\r\n 'coziness',\r\n 'cozy',\r\n 'crabbing',\r\n 'crabgrass',\r\n 'crablike',\r\n 'crabmeat',\r\n 'cradle',\r\n 'cradling',\r\n 'crafter',\r\n 'craftily',\r\n 'craftsman',\r\n 'craftwork',\r\n 'crafty',\r\n 'cramp',\r\n 'cranberry',\r\n 'crane',\r\n 'cranial',\r\n 'cranium',\r\n 'crank',\r\n 'crate',\r\n 'crave',\r\n 'craving',\r\n 'crawfish',\r\n 'crawlers',\r\n 'crawling',\r\n 'crayfish',\r\n 'crayon',\r\n 'crazed',\r\n 'crazily',\r\n 'craziness',\r\n 'crazy',\r\n 'creamed',\r\n 'creamer',\r\n 'creamlike',\r\n 'crease',\r\n 'creasing',\r\n 'creatable',\r\n 'create',\r\n 'creation',\r\n 'creative',\r\n 'creature',\r\n 'credible',\r\n 'credibly',\r\n 'credit',\r\n 'creed',\r\n 'creme',\r\n 'creole',\r\n 'crepe',\r\n 'crept',\r\n 'crescent',\r\n 'crested',\r\n 'cresting',\r\n 'crestless',\r\n 'crevice',\r\n 'crewless',\r\n 'crewman',\r\n 'crewmate',\r\n 'crib',\r\n 'cricket',\r\n 'cried',\r\n 'crier',\r\n 'crimp',\r\n 'crimson',\r\n 'cringe',\r\n 'cringing',\r\n 'crinkle',\r\n 'crinkly',\r\n 'crisped',\r\n 'crisping',\r\n 'crisply',\r\n 'crispness',\r\n 'crispy',\r\n 'criteria',\r\n 'critter',\r\n 'croak',\r\n 'crock',\r\n 'crook',\r\n 'croon',\r\n 'crop',\r\n 'cross',\r\n 'crouch',\r\n 'crouton',\r\n 'crowbar',\r\n 'crowd',\r\n 'crown',\r\n 'crucial',\r\n 'crudely',\r\n 'crudeness',\r\n 'cruelly',\r\n 'cruelness',\r\n 'cruelty',\r\n 'crumb',\r\n 'crummiest',\r\n 'crummy',\r\n 'crumpet',\r\n 'crumpled',\r\n 'cruncher',\r\n 'crunching',\r\n 'crunchy',\r\n 'crusader',\r\n 'crushable',\r\n 'crushed',\r\n 'crusher',\r\n 'crushing',\r\n 'crust',\r\n 'crux',\r\n 'crying',\r\n 'cryptic',\r\n 'crystal',\r\n 'cubbyhole',\r\n 'cube',\r\n 'cubical',\r\n 'cubicle',\r\n 'cucumber',\r\n 'cuddle',\r\n 'cuddly',\r\n 'cufflink',\r\n 'culinary',\r\n 'culminate',\r\n 'culpable',\r\n 'culprit',\r\n 'cultivate',\r\n 'cultural',\r\n 'culture',\r\n 'cupbearer',\r\n 'cupcake',\r\n 'cupid',\r\n 'cupped',\r\n 'cupping',\r\n 'curable',\r\n 'curator',\r\n 'curdle',\r\n 'cure',\r\n 'curfew',\r\n 'curing',\r\n 'curled',\r\n 'curler',\r\n 'curliness',\r\n 'curling',\r\n 'curly',\r\n 'curry',\r\n 'curse',\r\n 'cursive',\r\n 'cursor',\r\n 'curtain',\r\n 'curtly',\r\n 'curtsy',\r\n 'curvature',\r\n 'curve',\r\n 'curvy',\r\n 'cushy',\r\n 'cusp',\r\n 'cussed',\r\n 'custard',\r\n 'custodian',\r\n 'custody',\r\n 'customary',\r\n 'customer',\r\n 'customize',\r\n 'customs',\r\n 'cut',\r\n 'cycle',\r\n 'cyclic',\r\n 'cycling',\r\n 'cyclist',\r\n 'cylinder',\r\n 'cymbal',\r\n 'cytoplasm',\r\n 'cytoplast',\r\n 'dab',\r\n 'dad',\r\n 'daffodil',\r\n 'dagger',\r\n 'daily',\r\n 'daintily',\r\n 'dainty',\r\n 'dairy',\r\n 'daisy',\r\n 'dallying',\r\n 'dance',\r\n 'dancing',\r\n 'dandelion',\r\n 'dander',\r\n 'dandruff',\r\n 'dandy',\r\n 'danger',\r\n 'dangle',\r\n 'dangling',\r\n 'daredevil',\r\n 'dares',\r\n 'daringly',\r\n 'darkened',\r\n 'darkening',\r\n 'darkish',\r\n 'darkness',\r\n 'darkroom',\r\n 'darling',\r\n 'darn',\r\n 'dart',\r\n 'darwinism',\r\n 'dash',\r\n 'dastardly',\r\n 'data',\r\n 'datebook',\r\n 'dating',\r\n 'daughter',\r\n 'daunting',\r\n 'dawdler',\r\n 'dawn',\r\n 'daybed',\r\n 'daybreak',\r\n 'daycare',\r\n 'daydream',\r\n 'daylight',\r\n 'daylong',\r\n 'dayroom',\r\n 'daytime',\r\n 'dazzler',\r\n 'dazzling',\r\n 'deacon',\r\n 'deafening',\r\n 'deafness',\r\n 'dealer',\r\n 'dealing',\r\n 'dealmaker',\r\n 'dealt',\r\n 'dean',\r\n 'debatable',\r\n 'debate',\r\n 'debating',\r\n 'debit',\r\n 'debrief',\r\n 'debtless',\r\n 'debtor',\r\n 'debug',\r\n 'debunk',\r\n 'decade',\r\n 'decaf',\r\n 'decal',\r\n 'decathlon',\r\n 'decay',\r\n 'deceased',\r\n 'deceit',\r\n 'deceiver',\r\n 'deceiving',\r\n 'december',\r\n 'decency',\r\n 'decent',\r\n 'deception',\r\n 'deceptive',\r\n 'decibel',\r\n 'decidable',\r\n 'decimal',\r\n 'decimeter',\r\n 'decipher',\r\n 'deck',\r\n 'declared',\r\n 'decline',\r\n 'decode',\r\n 'decompose',\r\n 'decorated',\r\n 'decorator',\r\n 'decoy',\r\n 'decrease',\r\n 'decree',\r\n 'dedicate',\r\n 'dedicator',\r\n 'deduce',\r\n 'deduct',\r\n 'deed',\r\n 'deem',\r\n 'deepen',\r\n 'deeply',\r\n 'deepness',\r\n 'deface',\r\n 'defacing',\r\n 'defame',\r\n 'default',\r\n 'defeat',\r\n 'defection',\r\n 'defective',\r\n 'defendant',\r\n 'defender',\r\n 'defense',\r\n 'defensive',\r\n 'deferral',\r\n 'deferred',\r\n 'defiance',\r\n 'defiant',\r\n 'defile',\r\n 'defiling',\r\n 'define',\r\n 'definite',\r\n 'deflate',\r\n 'deflation',\r\n 'deflator',\r\n 'deflected',\r\n 'deflector',\r\n 'defog',\r\n 'deforest',\r\n 'defraud',\r\n 'defrost',\r\n 'deftly',\r\n 'defuse',\r\n 'defy',\r\n 'degraded',\r\n 'degrading',\r\n 'degrease',\r\n 'degree',\r\n 'dehydrate',\r\n 'deity',\r\n 'dejected',\r\n 'delay',\r\n 'delegate',\r\n 'delegator',\r\n 'delete',\r\n 'deletion',\r\n 'delicacy',\r\n 'delicate',\r\n 'delicious',\r\n 'delighted',\r\n 'delirious',\r\n 'delirium',\r\n 'deliverer',\r\n 'delivery',\r\n 'delouse',\r\n 'delta',\r\n 'deluge',\r\n 'delusion',\r\n 'deluxe',\r\n 'demanding',\r\n 'demeaning',\r\n 'demeanor',\r\n 'demise',\r\n 'democracy',\r\n 'democrat',\r\n 'demote',\r\n 'demotion',\r\n 'demystify',\r\n 'denatured',\r\n 'deniable',\r\n 'denial',\r\n 'denim',\r\n 'denote',\r\n 'dense',\r\n 'density',\r\n 'dental',\r\n 'dentist',\r\n 'denture',\r\n 'deny',\r\n 'deodorant',\r\n 'deodorize',\r\n 'departed',\r\n 'departure',\r\n 'depict',\r\n 'deplete',\r\n 'depletion',\r\n 'deplored',\r\n 'deploy',\r\n 'deport',\r\n 'depose',\r\n 'depraved',\r\n 'depravity',\r\n 'deprecate',\r\n 'depress',\r\n 'deprive',\r\n 'depth',\r\n 'deputize',\r\n 'deputy',\r\n 'derail',\r\n 'deranged',\r\n 'derby',\r\n 'derived',\r\n 'desecrate',\r\n 'deserve',\r\n 'deserving',\r\n 'designate',\r\n 'designed',\r\n 'designer',\r\n 'designing',\r\n 'deskbound',\r\n 'desktop',\r\n 'deskwork',\r\n 'desolate',\r\n 'despair',\r\n 'despise',\r\n 'despite',\r\n 'destiny',\r\n 'destitute',\r\n 'destruct',\r\n 'detached',\r\n 'detail',\r\n 'detection',\r\n 'detective',\r\n 'detector',\r\n 'detention',\r\n 'detergent',\r\n 'detest',\r\n 'detonate',\r\n 'detonator',\r\n 'detoxify',\r\n 'detract',\r\n 'deuce',\r\n 'devalue',\r\n 'deviancy',\r\n 'deviant',\r\n 'deviate',\r\n 'deviation',\r\n 'deviator',\r\n 'device',\r\n 'devious',\r\n 'devotedly',\r\n 'devotee',\r\n 'devotion',\r\n 'devourer',\r\n 'devouring',\r\n 'devoutly',\r\n 'dexterity',\r\n 'dexterous',\r\n 'diabetes',\r\n 'diabetic',\r\n 'diabolic',\r\n 'diagnoses',\r\n 'diagnosis',\r\n 'diagram',\r\n 'dial',\r\n 'diameter',\r\n 'diaper',\r\n 'diaphragm',\r\n 'diary',\r\n 'dice',\r\n 'dicing',\r\n 'dictate',\r\n 'dictation',\r\n 'dictator',\r\n 'difficult',\r\n 'diffused',\r\n 'diffuser',\r\n 'diffusion',\r\n 'diffusive',\r\n 'dig',\r\n 'dilation',\r\n 'diligence',\r\n 'diligent',\r\n 'dill',\r\n 'dilute',\r\n 'dime',\r\n 'diminish',\r\n 'dimly',\r\n 'dimmed',\r\n 'dimmer',\r\n 'dimness',\r\n 'dimple',\r\n 'diner',\r\n 'dingbat',\r\n 'dinghy',\r\n 'dinginess',\r\n 'dingo',\r\n 'dingy',\r\n 'dining',\r\n 'dinner',\r\n 'diocese',\r\n 'dioxide',\r\n 'diploma',\r\n 'dipped',\r\n 'dipper',\r\n 'dipping',\r\n 'directed',\r\n 'direction',\r\n 'directive',\r\n 'directly',\r\n 'directory',\r\n 'direness',\r\n 'dirtiness',\r\n 'disabled',\r\n 'disagree',\r\n 'disallow',\r\n 'disarm',\r\n 'disarray',\r\n 'disaster',\r\n 'disband',\r\n 'disbelief',\r\n 'disburse',\r\n 'discard',\r\n 'discern',\r\n 'discharge',\r\n 'disclose',\r\n 'discolor',\r\n 'discount',\r\n 'discourse',\r\n 'discover',\r\n 'discuss',\r\n 'disdain',\r\n 'disengage',\r\n 'disfigure',\r\n 'disgrace',\r\n 'dish',\r\n 'disinfect',\r\n 'disjoin',\r\n 'disk',\r\n 'dislike',\r\n 'disliking',\r\n 'dislocate',\r\n 'dislodge',\r\n 'disloyal',\r\n 'dismantle',\r\n 'dismay',\r\n 'dismiss',\r\n 'dismount',\r\n 'disobey',\r\n 'disorder',\r\n 'disown',\r\n 'disparate',\r\n 'disparity',\r\n 'dispatch',\r\n 'dispense',\r\n 'dispersal',\r\n 'dispersed',\r\n 'disperser',\r\n 'displace',\r\n 'display',\r\n 'displease',\r\n 'disposal',\r\n 'dispose',\r\n 'disprove',\r\n 'dispute',\r\n 'disregard',\r\n 'disrupt',\r\n 'dissuade',\r\n 'distance',\r\n 'distant',\r\n 'distaste',\r\n 'distill',\r\n 'distinct',\r\n 'distort',\r\n 'distract',\r\n 'distress',\r\n 'district',\r\n 'distrust',\r\n 'ditch',\r\n 'ditto',\r\n 'ditzy',\r\n 'dividable',\r\n 'divided',\r\n 'dividend',\r\n 'dividers',\r\n 'dividing',\r\n 'divinely',\r\n 'diving',\r\n 'divinity',\r\n 'divisible',\r\n 'divisibly',\r\n 'division',\r\n 'divisive',\r\n 'divorcee',\r\n 'dizziness',\r\n 'dizzy',\r\n 'doable',\r\n 'docile',\r\n 'dock',\r\n 'doctrine',\r\n 'document',\r\n 'dodge',\r\n 'dodgy',\r\n 'doily',\r\n 'doing',\r\n 'dole',\r\n 'dollar',\r\n 'dollhouse',\r\n 'dollop',\r\n 'dolly',\r\n 'dolphin',\r\n 'domain',\r\n 'domelike',\r\n 'domestic',\r\n 'dominion',\r\n 'dominoes',\r\n 'donated',\r\n 'donation',\r\n 'donator',\r\n 'donor',\r\n 'donut',\r\n 'doodle',\r\n 'doorbell',\r\n 'doorframe',\r\n 'doorknob',\r\n 'doorman',\r\n 'doormat',\r\n 'doornail',\r\n 'doorpost',\r\n 'doorstep',\r\n 'doorstop',\r\n 'doorway',\r\n 'doozy',\r\n 'dork',\r\n 'dormitory',\r\n 'dorsal',\r\n 'dosage',\r\n 'dose',\r\n 'dotted',\r\n 'doubling',\r\n 'douche',\r\n 'dove',\r\n 'down',\r\n 'dowry',\r\n 'doze',\r\n 'drab',\r\n 'dragging',\r\n 'dragonfly',\r\n 'dragonish',\r\n 'dragster',\r\n 'drainable',\r\n 'drainage',\r\n 'drained',\r\n 'drainer',\r\n 'drainpipe',\r\n 'dramatic',\r\n 'dramatize',\r\n 'drank',\r\n 'drapery',\r\n 'drastic',\r\n 'draw',\r\n 'dreaded',\r\n 'dreadful',\r\n 'dreadlock',\r\n 'dreamboat',\r\n 'dreamily',\r\n 'dreamland',\r\n 'dreamless',\r\n 'dreamlike',\r\n 'dreamt',\r\n 'dreamy',\r\n 'drearily',\r\n 'dreary',\r\n 'drench',\r\n 'dress',\r\n 'drew',\r\n 'dribble',\r\n 'dried',\r\n 'drier',\r\n 'drift',\r\n 'driller',\r\n 'drilling',\r\n 'drinkable',\r\n 'drinking',\r\n 'dripping',\r\n 'drippy',\r\n 'drivable',\r\n 'driven',\r\n 'driver',\r\n 'driveway',\r\n 'driving',\r\n 'drizzle',\r\n 'drizzly',\r\n 'drone',\r\n 'drool',\r\n 'droop',\r\n 'drop-down',\r\n 'dropbox',\r\n 'dropkick',\r\n 'droplet',\r\n 'dropout',\r\n 'dropper',\r\n 'drove',\r\n 'drown',\r\n 'drowsily',\r\n 'drudge',\r\n 'drum',\r\n 'dry',\r\n 'dubbed',\r\n 'dubiously',\r\n 'duchess',\r\n 'duckbill',\r\n 'ducking',\r\n 'duckling',\r\n 'ducktail',\r\n 'ducky',\r\n 'duct',\r\n 'dude',\r\n 'duffel',\r\n 'dugout',\r\n 'duh',\r\n 'duke',\r\n 'duller',\r\n 'dullness',\r\n 'duly',\r\n 'dumping',\r\n 'dumpling',\r\n 'dumpster',\r\n 'duo',\r\n 'dupe',\r\n 'duplex',\r\n 'duplicate',\r\n 'duplicity',\r\n 'durable',\r\n 'durably',\r\n 'duration',\r\n 'duress',\r\n 'during',\r\n 'dusk',\r\n 'dust',\r\n 'dutiful',\r\n 'duty',\r\n 'duvet',\r\n 'dwarf',\r\n 'dweeb',\r\n 'dwelled',\r\n 'dweller',\r\n 'dwelling',\r\n 'dwindle',\r\n 'dwindling',\r\n 'dynamic',\r\n 'dynamite',\r\n 'dynasty',\r\n 'dyslexia',\r\n 'dyslexic',\r\n 'each',\r\n 'eagle',\r\n 'earache',\r\n 'eardrum',\r\n 'earflap',\r\n 'earful',\r\n 'earlobe',\r\n 'early',\r\n 'earmark',\r\n 'earmuff',\r\n 'earphone',\r\n 'earpiece',\r\n 'earplugs',\r\n 'earring',\r\n 'earshot',\r\n 'earthen',\r\n 'earthlike',\r\n 'earthling',\r\n 'earthly',\r\n 'earthworm',\r\n 'earthy',\r\n 'earwig',\r\n 'easeful',\r\n 'easel',\r\n 'easiest',\r\n 'easily',\r\n 'easiness',\r\n 'easing',\r\n 'eastbound',\r\n 'eastcoast',\r\n 'easter',\r\n 'eastward',\r\n 'eatable',\r\n 'eaten',\r\n 'eatery',\r\n 'eating',\r\n 'eats',\r\n 'ebay',\r\n 'ebony',\r\n 'ebook',\r\n 'ecard',\r\n 'eccentric',\r\n 'echo',\r\n 'eclair',\r\n 'eclipse',\r\n 'ecologist',\r\n 'ecology',\r\n 'economic',\r\n 'economist',\r\n 'economy',\r\n 'ecosphere',\r\n 'ecosystem',\r\n 'edge',\r\n 'edginess',\r\n 'edging',\r\n 'edgy',\r\n 'edition',\r\n 'editor',\r\n 'educated',\r\n 'education',\r\n 'educator',\r\n 'eel',\r\n 'effective',\r\n 'effects',\r\n 'efficient',\r\n 'effort',\r\n 'eggbeater',\r\n 'egging',\r\n 'eggnog',\r\n 'eggplant',\r\n 'eggshell',\r\n 'egomaniac',\r\n 'egotism',\r\n 'egotistic',\r\n 'either',\r\n 'eject',\r\n 'elaborate',\r\n 'elastic',\r\n 'elated',\r\n 'elbow',\r\n 'eldercare',\r\n 'elderly',\r\n 'eldest',\r\n 'electable',\r\n 'election',\r\n 'elective',\r\n 'elephant',\r\n 'elevate',\r\n 'elevating',\r\n 'elevation',\r\n 'elevator',\r\n 'eleven',\r\n 'elf',\r\n 'eligible',\r\n 'eligibly',\r\n 'eliminate',\r\n 'elite',\r\n 'elitism',\r\n 'elixir',\r\n 'elk',\r\n 'ellipse',\r\n 'elliptic',\r\n 'elm',\r\n 'elongated',\r\n 'elope',\r\n 'eloquence',\r\n 'eloquent',\r\n 'elsewhere',\r\n 'elude',\r\n 'elusive',\r\n 'elves',\r\n 'email',\r\n 'embargo',\r\n 'embark',\r\n 'embassy',\r\n 'embattled',\r\n 'embellish',\r\n 'ember',\r\n 'embezzle',\r\n 'emblaze',\r\n 'emblem',\r\n 'embody',\r\n 'embolism',\r\n 'emboss',\r\n 'embroider',\r\n 'emcee',\r\n 'emerald',\r\n 'emergency',\r\n 'emission',\r\n 'emit',\r\n 'emote',\r\n 'emoticon',\r\n 'emotion',\r\n 'empathic',\r\n 'empathy',\r\n 'emperor',\r\n 'emphases',\r\n 'emphasis',\r\n 'emphasize',\r\n 'emphatic',\r\n 'empirical',\r\n 'employed',\r\n 'employee',\r\n 'employer',\r\n 'emporium',\r\n 'empower',\r\n 'emptier',\r\n 'emptiness',\r\n 'empty',\r\n 'emu',\r\n 'enable',\r\n 'enactment',\r\n 'enamel',\r\n 'enchanted',\r\n 'enchilada',\r\n 'encircle',\r\n 'enclose',\r\n 'enclosure',\r\n 'encode',\r\n 'encore',\r\n 'encounter',\r\n 'encourage',\r\n 'encroach',\r\n 'encrust',\r\n 'encrypt',\r\n 'endanger',\r\n 'endeared',\r\n 'endearing',\r\n 'ended',\r\n 'ending',\r\n 'endless',\r\n 'endnote',\r\n 'endocrine',\r\n 'endorphin',\r\n 'endorse',\r\n 'endowment',\r\n 'endpoint',\r\n 'endurable',\r\n 'endurance',\r\n 'enduring',\r\n 'energetic',\r\n 'energize',\r\n 'energy',\r\n 'enforced',\r\n 'enforcer',\r\n 'engaged',\r\n 'engaging',\r\n 'engine',\r\n 'engorge',\r\n 'engraved',\r\n 'engraver',\r\n 'engraving',\r\n 'engross',\r\n 'engulf',\r\n 'enhance',\r\n 'enigmatic',\r\n 'enjoyable',\r\n 'enjoyably',\r\n 'enjoyer',\r\n 'enjoying',\r\n 'enjoyment',\r\n 'enlarged',\r\n 'enlarging',\r\n 'enlighten',\r\n 'enlisted',\r\n 'enquirer',\r\n 'enrage',\r\n 'enrich',\r\n 'enroll',\r\n 'enslave',\r\n 'ensnare',\r\n 'ensure',\r\n 'entail',\r\n 'entangled',\r\n 'entering',\r\n 'entertain',\r\n 'enticing',\r\n 'entire',\r\n 'entitle',\r\n 'entity',\r\n 'entomb',\r\n 'entourage',\r\n 'entrap',\r\n 'entree',\r\n 'entrench',\r\n 'entrust',\r\n 'entryway',\r\n 'entwine',\r\n 'enunciate',\r\n 'envelope',\r\n 'enviable',\r\n 'enviably',\r\n 'envious',\r\n 'envision',\r\n 'envoy',\r\n 'envy',\r\n 'enzyme',\r\n 'epic',\r\n 'epidemic',\r\n 'epidermal',\r\n 'epidermis',\r\n 'epidural',\r\n 'epilepsy',\r\n 'epileptic',\r\n 'epilogue',\r\n 'epiphany',\r\n 'episode',\r\n 'equal',\r\n 'equate',\r\n 'equation',\r\n 'equator',\r\n 'equinox',\r\n 'equipment',\r\n 'equity',\r\n 'equivocal',\r\n 'eradicate',\r\n 'erasable',\r\n 'erased',\r\n 'eraser',\r\n 'erasure',\r\n 'ergonomic',\r\n 'errand',\r\n 'errant',\r\n 'erratic',\r\n 'error',\r\n 'erupt',\r\n 'escalate',\r\n 'escalator',\r\n 'escapable',\r\n 'escapade',\r\n 'escapist',\r\n 'escargot',\r\n 'eskimo',\r\n 'esophagus',\r\n 'espionage',\r\n 'espresso',\r\n 'esquire',\r\n 'essay',\r\n 'essence',\r\n 'essential',\r\n 'establish',\r\n 'estate',\r\n 'esteemed',\r\n 'estimate',\r\n 'estimator',\r\n 'estranged',\r\n 'estrogen',\r\n 'etching',\r\n 'eternal',\r\n 'eternity',\r\n 'ethanol',\r\n 'ether',\r\n 'ethically',\r\n 'ethics',\r\n 'euphemism',\r\n 'evacuate',\r\n 'evacuee',\r\n 'evade',\r\n 'evaluate',\r\n 'evaluator',\r\n 'evaporate',\r\n 'evasion',\r\n 'evasive',\r\n 'even',\r\n 'everglade',\r\n 'evergreen',\r\n 'everybody',\r\n 'everyday',\r\n 'everyone',\r\n 'evict',\r\n 'evidence',\r\n 'evident',\r\n 'evil',\r\n 'evoke',\r\n 'evolution',\r\n 'evolve',\r\n 'exact',\r\n 'exalted',\r\n 'example',\r\n 'excavate',\r\n 'excavator',\r\n 'exceeding',\r\n 'exception',\r\n 'excess',\r\n 'exchange',\r\n 'excitable',\r\n 'exciting',\r\n 'exclaim',\r\n 'exclude',\r\n 'excluding',\r\n 'exclusion',\r\n 'exclusive',\r\n 'excretion',\r\n 'excretory',\r\n 'excursion',\r\n 'excusable',\r\n 'excusably',\r\n 'excuse',\r\n 'exemplary',\r\n 'exemplify',\r\n 'exemption',\r\n 'exerciser',\r\n 'exert',\r\n 'exes',\r\n 'exfoliate',\r\n 'exhale',\r\n 'exhaust',\r\n 'exhume',\r\n 'exile',\r\n 'existing',\r\n 'exit',\r\n 'exodus',\r\n 'exonerate',\r\n 'exorcism',\r\n 'exorcist',\r\n 'expand',\r\n 'expanse',\r\n 'expansion',\r\n 'expansive',\r\n 'expectant',\r\n 'expedited',\r\n 'expediter',\r\n 'expel',\r\n 'expend',\r\n 'expenses',\r\n 'expensive',\r\n 'expert',\r\n 'expire',\r\n 'expiring',\r\n 'explain',\r\n 'expletive',\r\n 'explicit',\r\n 'explode',\r\n 'exploit',\r\n 'explore',\r\n 'exploring',\r\n 'exponent',\r\n 'exporter',\r\n 'exposable',\r\n 'expose',\r\n 'exposure',\r\n 'express',\r\n 'expulsion',\r\n 'exquisite',\r\n 'extended',\r\n 'extending',\r\n 'extent',\r\n 'extenuate',\r\n 'exterior',\r\n 'external',\r\n 'extinct',\r\n 'extortion',\r\n 'extradite',\r\n 'extras',\r\n 'extrovert',\r\n 'extrude',\r\n 'extruding',\r\n 'exuberant',\r\n 'fable',\r\n 'fabric',\r\n 'fabulous',\r\n 'facebook',\r\n 'facecloth',\r\n 'facedown',\r\n 'faceless',\r\n 'facelift',\r\n 'faceplate',\r\n 'faceted',\r\n 'facial',\r\n 'facility',\r\n 'facing',\r\n 'facsimile',\r\n 'faction',\r\n 'factoid',\r\n 'factor',\r\n 'factsheet',\r\n 'factual',\r\n 'faculty',\r\n 'fade',\r\n 'fading',\r\n 'failing',\r\n 'falcon',\r\n 'fall',\r\n 'false',\r\n 'falsify',\r\n 'fame',\r\n 'familiar',\r\n 'family',\r\n 'famine',\r\n 'famished',\r\n 'fanatic',\r\n 'fancied',\r\n 'fanciness',\r\n 'fancy',\r\n 'fanfare',\r\n 'fang',\r\n 'fanning',\r\n 'fantasize',\r\n 'fantastic',\r\n 'fantasy',\r\n 'fascism',\r\n 'fastball',\r\n 'faster',\r\n 'fasting',\r\n 'fastness',\r\n 'faucet',\r\n 'favorable',\r\n 'favorably',\r\n 'favored',\r\n 'favoring',\r\n 'favorite',\r\n 'fax',\r\n 'feast',\r\n 'federal',\r\n 'fedora',\r\n 'feeble',\r\n 'feed',\r\n 'feel',\r\n 'feisty',\r\n 'feline',\r\n 'felt-tip',\r\n 'feminine',\r\n 'feminism',\r\n 'feminist',\r\n 'feminize',\r\n 'femur',\r\n 'fence',\r\n 'fencing',\r\n 'fender',\r\n 'ferment',\r\n 'fernlike',\r\n 'ferocious',\r\n 'ferocity',\r\n 'ferret',\r\n 'ferris',\r\n 'ferry',\r\n 'fervor',\r\n 'fester',\r\n 'festival',\r\n 'festive',\r\n 'festivity',\r\n 'fetal',\r\n 'fetch',\r\n 'fever',\r\n 'fiber',\r\n 'fiction',\r\n 'fiddle',\r\n 'fiddling',\r\n 'fidelity',\r\n 'fidgeting',\r\n 'fidgety',\r\n 'fifteen',\r\n 'fifth',\r\n 'fiftieth',\r\n 'fifty',\r\n 'figment',\r\n 'figure',\r\n 'figurine',\r\n 'filing',\r\n 'filled',\r\n 'filler',\r\n 'filling',\r\n 'film',\r\n 'filter',\r\n 'filth',\r\n 'filtrate',\r\n 'finale',\r\n 'finalist',\r\n 'finalize',\r\n 'finally',\r\n 'finance',\r\n 'financial',\r\n 'finch',\r\n 'fineness',\r\n 'finer',\r\n 'finicky',\r\n 'finished',\r\n 'finisher',\r\n 'finishing',\r\n 'finite',\r\n 'finless',\r\n 'finlike',\r\n 'fiscally',\r\n 'fit',\r\n 'five',\r\n 'flaccid',\r\n 'flagman',\r\n 'flagpole',\r\n 'flagship',\r\n 'flagstick',\r\n 'flagstone',\r\n 'flail',\r\n 'flakily',\r\n 'flaky',\r\n 'flame',\r\n 'flammable',\r\n 'flanked',\r\n 'flanking',\r\n 'flannels',\r\n 'flap',\r\n 'flaring',\r\n 'flashback',\r\n 'flashbulb',\r\n 'flashcard',\r\n 'flashily',\r\n 'flashing',\r\n 'flashy',\r\n 'flask',\r\n 'flatbed',\r\n 'flatfoot',\r\n 'flatly',\r\n 'flatness',\r\n 'flatten',\r\n 'flattered',\r\n 'flatterer',\r\n 'flattery',\r\n 'flattop',\r\n 'flatware',\r\n 'flatworm',\r\n 'flavored',\r\n 'flavorful',\r\n 'flavoring',\r\n 'flaxseed',\r\n 'fled',\r\n 'fleshed',\r\n 'fleshy',\r\n 'flick',\r\n 'flier',\r\n 'flight',\r\n 'flinch',\r\n 'fling',\r\n 'flint',\r\n 'flip',\r\n 'flirt',\r\n 'float',\r\n 'flock',\r\n 'flogging',\r\n 'flop',\r\n 'floral',\r\n 'florist',\r\n 'floss',\r\n 'flounder',\r\n 'flyable',\r\n 'flyaway',\r\n 'flyer',\r\n 'flying',\r\n 'flyover',\r\n 'flypaper',\r\n 'foam',\r\n 'foe',\r\n 'fog',\r\n 'foil',\r\n 'folic',\r\n 'folk',\r\n 'follicle',\r\n 'follow',\r\n 'fondling',\r\n 'fondly',\r\n 'fondness',\r\n 'fondue',\r\n 'font',\r\n 'food',\r\n 'fool',\r\n 'footage',\r\n 'football',\r\n 'footbath',\r\n 'footboard',\r\n 'footer',\r\n 'footgear',\r\n 'foothill',\r\n 'foothold',\r\n 'footing',\r\n 'footless',\r\n 'footman',\r\n 'footnote',\r\n 'footpad',\r\n 'footpath',\r\n 'footprint',\r\n 'footrest',\r\n 'footsie',\r\n 'footsore',\r\n 'footwear',\r\n 'footwork',\r\n 'fossil',\r\n 'foster',\r\n 'founder',\r\n 'founding',\r\n 'fountain',\r\n 'fox',\r\n 'foyer',\r\n 'fraction',\r\n 'fracture',\r\n 'fragile',\r\n 'fragility',\r\n 'fragment',\r\n 'fragrance',\r\n 'fragrant',\r\n 'frail',\r\n 'frame',\r\n 'framing',\r\n 'frantic',\r\n 'fraternal',\r\n 'frayed',\r\n 'fraying',\r\n 'frays',\r\n 'freckled',\r\n 'freckles',\r\n 'freebase',\r\n 'freebee',\r\n 'freebie',\r\n 'freedom',\r\n 'freefall',\r\n 'freehand',\r\n 'freeing',\r\n 'freeload',\r\n 'freely',\r\n 'freemason',\r\n 'freeness',\r\n 'freestyle',\r\n 'freeware',\r\n 'freeway',\r\n 'freewill',\r\n 'freezable',\r\n 'freezing',\r\n 'freight',\r\n 'french',\r\n 'frenzied',\r\n 'frenzy',\r\n 'frequency',\r\n 'frequent',\r\n 'fresh',\r\n 'fretful',\r\n 'fretted',\r\n 'friction',\r\n 'friday',\r\n 'fridge',\r\n 'fried',\r\n 'friend',\r\n 'frighten',\r\n 'frightful',\r\n 'frigidity',\r\n 'frigidly',\r\n 'frill',\r\n 'fringe',\r\n 'frisbee',\r\n 'frisk',\r\n 'fritter',\r\n 'frivolous',\r\n 'frolic',\r\n 'from',\r\n 'front',\r\n 'frostbite',\r\n 'frosted',\r\n 'frostily',\r\n 'frosting',\r\n 'frostlike',\r\n 'frosty',\r\n 'froth',\r\n 'frown',\r\n 'frozen',\r\n 'fructose',\r\n 'frugality',\r\n 'frugally',\r\n 'fruit',\r\n 'frustrate',\r\n 'frying',\r\n 'gab',\r\n 'gaffe',\r\n 'gag',\r\n 'gainfully',\r\n 'gaining',\r\n 'gains',\r\n 'gala',\r\n 'gallantly',\r\n 'galleria',\r\n 'gallery',\r\n 'galley',\r\n 'gallon',\r\n 'gallows',\r\n 'gallstone',\r\n 'galore',\r\n 'galvanize',\r\n 'gambling',\r\n 'game',\r\n 'gaming',\r\n 'gamma',\r\n 'gander',\r\n 'gangly',\r\n 'gangrene',\r\n 'gangway',\r\n 'gap',\r\n 'garage',\r\n 'garbage',\r\n 'garden',\r\n 'gargle',\r\n 'garland',\r\n 'garlic',\r\n 'garment',\r\n 'garnet',\r\n 'garnish',\r\n 'garter',\r\n 'gas',\r\n 'gatherer',\r\n 'gathering',\r\n 'gating',\r\n 'gauging',\r\n 'gauntlet',\r\n 'gauze',\r\n 'gave',\r\n 'gawk',\r\n 'gazing',\r\n 'gear',\r\n 'gecko',\r\n 'geek',\r\n 'geiger',\r\n 'gem',\r\n 'gender',\r\n 'generic',\r\n 'generous',\r\n 'genetics',\r\n 'genre',\r\n 'gentile',\r\n 'gentleman',\r\n 'gently',\r\n 'gents',\r\n 'geography',\r\n 'geologic',\r\n 'geologist',\r\n 'geology',\r\n 'geometric',\r\n 'geometry',\r\n 'geranium',\r\n 'gerbil',\r\n 'geriatric',\r\n 'germicide',\r\n 'germinate',\r\n 'germless',\r\n 'germproof',\r\n 'gestate',\r\n 'gestation',\r\n 'gesture',\r\n 'getaway',\r\n 'getting',\r\n 'getup',\r\n 'giant',\r\n 'gibberish',\r\n 'giblet',\r\n 'giddily',\r\n 'giddiness',\r\n 'giddy',\r\n 'gift',\r\n 'gigabyte',\r\n 'gigahertz',\r\n 'gigantic',\r\n 'giggle',\r\n 'giggling',\r\n 'giggly',\r\n 'gigolo',\r\n 'gilled',\r\n 'gills',\r\n 'gimmick',\r\n 'girdle',\r\n 'giveaway',\r\n 'given',\r\n 'giver',\r\n 'giving',\r\n 'gizmo',\r\n 'gizzard',\r\n 'glacial',\r\n 'glacier',\r\n 'glade',\r\n 'gladiator',\r\n 'gladly',\r\n 'glamorous',\r\n 'glamour',\r\n 'glance',\r\n 'glancing',\r\n 'glandular',\r\n 'glare',\r\n 'glaring',\r\n 'glass',\r\n 'glaucoma',\r\n 'glazing',\r\n 'gleaming',\r\n 'gleeful',\r\n 'glider',\r\n 'gliding',\r\n 'glimmer',\r\n 'glimpse',\r\n 'glisten',\r\n 'glitch',\r\n 'glitter',\r\n 'glitzy',\r\n 'gloater',\r\n 'gloating',\r\n 'gloomily',\r\n 'gloomy',\r\n 'glorified',\r\n 'glorifier',\r\n 'glorify',\r\n 'glorious',\r\n 'glory',\r\n 'gloss',\r\n 'glove',\r\n 'glowing',\r\n 'glowworm',\r\n 'glucose',\r\n 'glue',\r\n 'gluten',\r\n 'glutinous',\r\n 'glutton',\r\n 'gnarly',\r\n 'gnat',\r\n 'goal',\r\n 'goatskin',\r\n 'goes',\r\n 'goggles',\r\n 'going',\r\n 'goldfish',\r\n 'goldmine',\r\n 'goldsmith',\r\n 'golf',\r\n 'goliath',\r\n 'gonad',\r\n 'gondola',\r\n 'gone',\r\n 'gong',\r\n 'good',\r\n 'gooey',\r\n 'goofball',\r\n 'goofiness',\r\n 'goofy',\r\n 'google',\r\n 'goon',\r\n 'gopher',\r\n 'gore',\r\n 'gorged',\r\n 'gorgeous',\r\n 'gory',\r\n 'gosling',\r\n 'gossip',\r\n 'gothic',\r\n 'gotten',\r\n 'gout',\r\n 'gown',\r\n 'grab',\r\n 'graceful',\r\n 'graceless',\r\n 'gracious',\r\n 'gradation',\r\n 'graded',\r\n 'grader',\r\n 'gradient',\r\n 'grading',\r\n 'gradually',\r\n 'graduate',\r\n 'graffiti',\r\n 'grafted',\r\n 'grafting',\r\n 'grain',\r\n 'granddad',\r\n 'grandkid',\r\n 'grandly',\r\n 'grandma',\r\n 'grandpa',\r\n 'grandson',\r\n 'granite',\r\n 'granny',\r\n 'granola',\r\n 'grant',\r\n 'granular',\r\n 'grape',\r\n 'graph',\r\n 'grapple',\r\n 'grappling',\r\n 'grasp',\r\n 'grass',\r\n 'gratified',\r\n 'gratify',\r\n 'grating',\r\n 'gratitude',\r\n 'gratuity',\r\n 'gravel',\r\n 'graveness',\r\n 'graves',\r\n 'graveyard',\r\n 'gravitate',\r\n 'gravity',\r\n 'gravy',\r\n 'gray',\r\n 'grazing',\r\n 'greasily',\r\n 'greedily',\r\n 'greedless',\r\n 'greedy',\r\n 'green',\r\n 'greeter',\r\n 'greeting',\r\n 'grew',\r\n 'greyhound',\r\n 'grid',\r\n 'grief',\r\n 'grievance',\r\n 'grieving',\r\n 'grievous',\r\n 'grill',\r\n 'grimace',\r\n 'grimacing',\r\n 'grime',\r\n 'griminess',\r\n 'grimy',\r\n 'grinch',\r\n 'grinning',\r\n 'grip',\r\n 'gristle',\r\n 'grit',\r\n 'groggily',\r\n 'groggy',\r\n 'groin',\r\n 'groom',\r\n 'groove',\r\n 'grooving',\r\n 'groovy',\r\n 'grope',\r\n 'ground',\r\n 'grouped',\r\n 'grout',\r\n 'grove',\r\n 'grower',\r\n 'growing',\r\n 'growl',\r\n 'grub',\r\n 'grudge',\r\n 'grudging',\r\n 'grueling',\r\n 'gruffly',\r\n 'grumble',\r\n 'grumbling',\r\n 'grumbly',\r\n 'grumpily',\r\n 'grunge',\r\n 'grunt',\r\n 'guacamole',\r\n 'guidable',\r\n 'guidance',\r\n 'guide',\r\n 'guiding',\r\n 'guileless',\r\n 'guise',\r\n 'gulf',\r\n 'gullible',\r\n 'gully',\r\n 'gulp',\r\n 'gumball',\r\n 'gumdrop',\r\n 'gumminess',\r\n 'gumming',\r\n 'gummy',\r\n 'gurgle',\r\n 'gurgling',\r\n 'guru',\r\n 'gush',\r\n 'gusto',\r\n 'gusty',\r\n 'gutless',\r\n 'guts',\r\n 'gutter',\r\n 'guy',\r\n 'guzzler',\r\n 'gyration',\r\n 'habitable',\r\n 'habitant',\r\n 'habitat',\r\n 'habitual',\r\n 'hacked',\r\n 'hacker',\r\n 'hacking',\r\n 'hacksaw',\r\n 'had',\r\n 'haggler',\r\n 'haiku',\r\n 'half',\r\n 'halogen',\r\n 'halt',\r\n 'halved',\r\n 'halves',\r\n 'hamburger',\r\n 'hamlet',\r\n 'hammock',\r\n 'hamper',\r\n 'hamster',\r\n 'hamstring',\r\n 'handbag',\r\n 'handball',\r\n 'handbook',\r\n 'handbrake',\r\n 'handcart',\r\n 'handclap',\r\n 'handclasp',\r\n 'handcraft',\r\n 'handcuff',\r\n 'handed',\r\n 'handful',\r\n 'handgrip',\r\n 'handgun',\r\n 'handheld',\r\n 'handiness',\r\n 'handiwork',\r\n 'handlebar',\r\n 'handled',\r\n 'handler',\r\n 'handling',\r\n 'handmade',\r\n 'handoff',\r\n 'handpick',\r\n 'handprint',\r\n 'handrail',\r\n 'handsaw',\r\n 'handset',\r\n 'handsfree',\r\n 'handshake',\r\n 'handstand',\r\n 'handwash',\r\n 'handwork',\r\n 'handwoven',\r\n 'handwrite',\r\n 'handyman',\r\n 'hangnail',\r\n 'hangout',\r\n 'hangover',\r\n 'hangup',\r\n 'hankering',\r\n 'hankie',\r\n 'hanky',\r\n 'haphazard',\r\n 'happening',\r\n 'happier',\r\n 'happiest',\r\n 'happily',\r\n 'happiness',\r\n 'happy',\r\n 'harbor',\r\n 'hardcopy',\r\n 'hardcore',\r\n 'hardcover',\r\n 'harddisk',\r\n 'hardened',\r\n 'hardener',\r\n 'hardening',\r\n 'hardhat',\r\n 'hardhead',\r\n 'hardiness',\r\n 'hardly',\r\n 'hardness',\r\n 'hardship',\r\n 'hardware',\r\n 'hardwired',\r\n 'hardwood',\r\n 'hardy',\r\n 'harmful',\r\n 'harmless',\r\n 'harmonica',\r\n 'harmonics',\r\n 'harmonize',\r\n 'harmony',\r\n 'harness',\r\n 'harpist',\r\n 'harsh',\r\n 'harvest',\r\n 'hash',\r\n 'hassle',\r\n 'haste',\r\n 'hastily',\r\n 'hastiness',\r\n 'hasty',\r\n 'hatbox',\r\n 'hatchback',\r\n 'hatchery',\r\n 'hatchet',\r\n 'hatching',\r\n 'hatchling',\r\n 'hate',\r\n 'hatless',\r\n 'hatred',\r\n 'haunt',\r\n 'haven',\r\n 'hazard',\r\n 'hazelnut',\r\n 'hazily',\r\n 'haziness',\r\n 'hazing',\r\n 'hazy',\r\n 'headache',\r\n 'headband',\r\n 'headboard',\r\n 'headcount',\r\n 'headdress',\r\n 'headed',\r\n 'header',\r\n 'headfirst',\r\n 'headgear',\r\n 'heading',\r\n 'headlamp',\r\n 'headless',\r\n 'headlock',\r\n 'headphone',\r\n 'headpiece',\r\n 'headrest',\r\n 'headroom',\r\n 'headscarf',\r\n 'headset',\r\n 'headsman',\r\n 'headstand',\r\n 'headstone',\r\n 'headway',\r\n 'headwear',\r\n 'heap',\r\n 'heat',\r\n 'heave',\r\n 'heavily',\r\n 'heaviness',\r\n 'heaving',\r\n 'hedge',\r\n 'hedging',\r\n 'heftiness',\r\n 'hefty',\r\n 'helium',\r\n 'helmet',\r\n 'helper',\r\n 'helpful',\r\n 'helping',\r\n 'helpless',\r\n 'helpline',\r\n 'hemlock',\r\n 'hemstitch',\r\n 'hence',\r\n 'henchman',\r\n 'henna',\r\n 'herald',\r\n 'herbal',\r\n 'herbicide',\r\n 'herbs',\r\n 'heritage',\r\n 'hermit',\r\n 'heroics',\r\n 'heroism',\r\n 'herring',\r\n 'herself',\r\n 'hertz',\r\n 'hesitancy',\r\n 'hesitant',\r\n 'hesitate',\r\n 'hexagon',\r\n 'hexagram',\r\n 'hubcap',\r\n 'huddle',\r\n 'huddling',\r\n 'huff',\r\n 'hug',\r\n 'hula',\r\n 'hulk',\r\n 'hull',\r\n 'human',\r\n 'humble',\r\n 'humbling',\r\n 'humbly',\r\n 'humid',\r\n 'humiliate',\r\n 'humility',\r\n 'humming',\r\n 'hummus',\r\n 'humongous',\r\n 'humorist',\r\n 'humorless',\r\n 'humorous',\r\n 'humpback',\r\n 'humped',\r\n 'humvee',\r\n 'hunchback',\r\n 'hundredth',\r\n 'hunger',\r\n 'hungrily',\r\n 'hungry',\r\n 'hunk',\r\n 'hunter',\r\n 'hunting',\r\n 'huntress',\r\n 'huntsman',\r\n 'hurdle',\r\n 'hurled',\r\n 'hurler',\r\n 'hurling',\r\n 'hurray',\r\n 'hurricane',\r\n 'hurried',\r\n 'hurry',\r\n 'hurt',\r\n 'husband',\r\n 'hush',\r\n 'husked',\r\n 'huskiness',\r\n 'hut',\r\n 'hybrid',\r\n 'hydrant',\r\n 'hydrated',\r\n 'hydration',\r\n 'hydrogen',\r\n 'hydroxide',\r\n 'hyperlink',\r\n 'hypertext',\r\n 'hyphen',\r\n 'hypnoses',\r\n 'hypnosis',\r\n 'hypnotic',\r\n 'hypnotism',\r\n 'hypnotist',\r\n 'hypnotize',\r\n 'hypocrisy',\r\n 'hypocrite',\r\n 'ibuprofen',\r\n 'ice',\r\n 'iciness',\r\n 'icing',\r\n 'icky',\r\n 'icon',\r\n 'icy',\r\n 'idealism',\r\n 'idealist',\r\n 'idealize',\r\n 'ideally',\r\n 'idealness',\r\n 'identical',\r\n 'identify',\r\n 'identity',\r\n 'ideology',\r\n 'idiocy',\r\n 'idiom',\r\n 'idly',\r\n 'igloo',\r\n 'ignition',\r\n 'ignore',\r\n 'iguana',\r\n 'illicitly',\r\n 'illusion',\r\n 'illusive',\r\n 'image',\r\n 'imaginary',\r\n 'imagines',\r\n 'imaging',\r\n 'imbecile',\r\n 'imitate',\r\n 'imitation',\r\n 'immature',\r\n 'immerse',\r\n 'immersion',\r\n 'imminent',\r\n 'immobile',\r\n 'immodest',\r\n 'immorally',\r\n 'immortal',\r\n 'immovable',\r\n 'immovably',\r\n 'immunity',\r\n 'immunize',\r\n 'impaired',\r\n 'impale',\r\n 'impart',\r\n 'impatient',\r\n 'impeach',\r\n 'impeding',\r\n 'impending',\r\n 'imperfect',\r\n 'imperial',\r\n 'impish',\r\n 'implant',\r\n 'implement',\r\n 'implicate',\r\n 'implicit',\r\n 'implode',\r\n 'implosion',\r\n 'implosive',\r\n 'imply',\r\n 'impolite',\r\n 'important',\r\n 'importer',\r\n 'impose',\r\n 'imposing',\r\n 'impotence',\r\n 'impotency',\r\n 'impotent',\r\n 'impound',\r\n 'imprecise',\r\n 'imprint',\r\n 'imprison',\r\n 'impromptu',\r\n 'improper',\r\n 'improve',\r\n 'improving',\r\n 'improvise',\r\n 'imprudent',\r\n 'impulse',\r\n 'impulsive',\r\n 'impure',\r\n 'impurity',\r\n 'iodine',\r\n 'iodize',\r\n 'ion',\r\n 'ipad',\r\n 'iphone',\r\n 'ipod',\r\n 'irate',\r\n 'irk',\r\n 'iron',\r\n 'irregular',\r\n 'irrigate',\r\n 'irritable',\r\n 'irritably',\r\n 'irritant',\r\n 'irritate',\r\n 'islamic',\r\n 'islamist',\r\n 'isolated',\r\n 'isolating',\r\n 'isolation',\r\n 'isotope',\r\n 'issue',\r\n 'issuing',\r\n 'italicize',\r\n 'italics',\r\n 'item',\r\n 'itinerary',\r\n 'itunes',\r\n 'ivory',\r\n 'ivy',\r\n 'jab',\r\n 'jackal',\r\n 'jacket',\r\n 'jackknife',\r\n 'jackpot',\r\n 'jailbird',\r\n 'jailbreak',\r\n 'jailer',\r\n 'jailhouse',\r\n 'jalapeno',\r\n 'jam',\r\n 'janitor',\r\n 'january',\r\n 'jargon',\r\n 'jarring',\r\n 'jasmine',\r\n 'jaundice',\r\n 'jaunt',\r\n 'java',\r\n 'jawed',\r\n 'jawless',\r\n 'jawline',\r\n 'jaws',\r\n 'jaybird',\r\n 'jaywalker',\r\n 'jazz',\r\n 'jeep',\r\n 'jeeringly',\r\n 'jellied',\r\n 'jelly',\r\n 'jersey',\r\n 'jester',\r\n 'jet',\r\n 'jiffy',\r\n 'jigsaw',\r\n 'jimmy',\r\n 'jingle',\r\n 'jingling',\r\n 'jinx',\r\n 'jitters',\r\n 'jittery',\r\n 'job',\r\n 'jockey',\r\n 'jockstrap',\r\n 'jogger',\r\n 'jogging',\r\n 'john',\r\n 'joining',\r\n 'jokester',\r\n 'jokingly',\r\n 'jolliness',\r\n 'jolly',\r\n 'jolt',\r\n 'jot',\r\n 'jovial',\r\n 'joyfully',\r\n 'joylessly',\r\n 'joyous',\r\n 'joyride',\r\n 'joystick',\r\n 'jubilance',\r\n 'jubilant',\r\n 'judge',\r\n 'judgingly',\r\n 'judicial',\r\n 'judiciary',\r\n 'judo',\r\n 'juggle',\r\n 'juggling',\r\n 'jugular',\r\n 'juice',\r\n 'juiciness',\r\n 'juicy',\r\n 'jujitsu',\r\n 'jukebox',\r\n 'july',\r\n 'jumble',\r\n 'jumbo',\r\n 'jump',\r\n 'junction',\r\n 'juncture',\r\n 'june',\r\n 'junior',\r\n 'juniper',\r\n 'junkie',\r\n 'junkman',\r\n 'junkyard',\r\n 'jurist',\r\n 'juror',\r\n 'jury',\r\n 'justice',\r\n 'justifier',\r\n 'justify',\r\n 'justly',\r\n 'justness',\r\n 'juvenile',\r\n 'kabob',\r\n 'kangaroo',\r\n 'karaoke',\r\n 'karate',\r\n 'karma',\r\n 'kebab',\r\n 'keenly',\r\n 'keenness',\r\n 'keep',\r\n 'keg',\r\n 'kelp',\r\n 'kennel',\r\n 'kept',\r\n 'kerchief',\r\n 'kerosene',\r\n 'kettle',\r\n 'kick',\r\n 'kiln',\r\n 'kilobyte',\r\n 'kilogram',\r\n 'kilometer',\r\n 'kilowatt',\r\n 'kilt',\r\n 'kimono',\r\n 'kindle',\r\n 'kindling',\r\n 'kindly',\r\n 'kindness',\r\n 'kindred',\r\n 'kinetic',\r\n 'kinfolk',\r\n 'king',\r\n 'kinship',\r\n 'kinsman',\r\n 'kinswoman',\r\n 'kissable',\r\n 'kisser',\r\n 'kissing',\r\n 'kitchen',\r\n 'kite',\r\n 'kitten',\r\n 'kitty',\r\n 'kiwi',\r\n 'kleenex',\r\n 'knapsack',\r\n 'knee',\r\n 'knelt',\r\n 'knickers',\r\n 'knoll',\r\n 'koala',\r\n 'kooky',\r\n 'kosher',\r\n 'krypton',\r\n 'kudos',\r\n 'kung',\r\n 'labored',\r\n 'laborer',\r\n 'laboring',\r\n 'laborious',\r\n 'labrador',\r\n 'ladder',\r\n 'ladies',\r\n 'ladle',\r\n 'ladybug',\r\n 'ladylike',\r\n 'lagged',\r\n 'lagging',\r\n 'lagoon',\r\n 'lair',\r\n 'lake',\r\n 'lance',\r\n 'landed',\r\n 'landfall',\r\n 'landfill',\r\n 'landing',\r\n 'landlady',\r\n 'landless',\r\n 'landline',\r\n 'landlord',\r\n 'landmark',\r\n 'landmass',\r\n 'landmine',\r\n 'landowner',\r\n 'landscape',\r\n 'landside',\r\n 'landslide',\r\n 'language',\r\n 'lankiness',\r\n 'lanky',\r\n 'lantern',\r\n 'lapdog',\r\n 'lapel',\r\n 'lapped',\r\n 'lapping',\r\n 'laptop',\r\n 'lard',\r\n 'large',\r\n 'lark',\r\n 'lash',\r\n 'lasso',\r\n 'last',\r\n 'latch',\r\n 'late',\r\n 'lather',\r\n 'latitude',\r\n 'latrine',\r\n 'latter',\r\n 'latticed',\r\n 'launch',\r\n 'launder',\r\n 'laundry',\r\n 'laurel',\r\n 'lavender',\r\n 'lavish',\r\n 'laxative',\r\n 'lazily',\r\n 'laziness',\r\n 'lazy',\r\n 'lecturer',\r\n 'left',\r\n 'legacy',\r\n 'legal',\r\n 'legend',\r\n 'legged',\r\n 'leggings',\r\n 'legible',\r\n 'legibly',\r\n 'legislate',\r\n 'lego',\r\n 'legroom',\r\n 'legume',\r\n 'legwarmer',\r\n 'legwork',\r\n 'lemon',\r\n 'lend',\r\n 'length',\r\n 'lens',\r\n 'lent',\r\n 'leotard',\r\n 'lesser',\r\n 'letdown',\r\n 'lethargic',\r\n 'lethargy',\r\n 'letter',\r\n 'lettuce',\r\n 'level',\r\n 'leverage',\r\n 'levers',\r\n 'levitate',\r\n 'levitator',\r\n 'liability',\r\n 'liable',\r\n 'liberty',\r\n 'librarian',\r\n 'library',\r\n 'licking',\r\n 'licorice',\r\n 'lid',\r\n 'life',\r\n 'lifter',\r\n 'lifting',\r\n 'liftoff',\r\n 'ligament',\r\n 'likely',\r\n 'likeness',\r\n 'likewise',\r\n 'liking',\r\n 'lilac',\r\n 'lilly',\r\n 'lily',\r\n 'limb',\r\n 'limeade',\r\n 'limelight',\r\n 'limes',\r\n 'limit',\r\n 'limping',\r\n 'limpness',\r\n 'line',\r\n 'lingo',\r\n 'linguini',\r\n 'linguist',\r\n 'lining',\r\n 'linked',\r\n 'linoleum',\r\n 'linseed',\r\n 'lint',\r\n 'lion',\r\n 'lip',\r\n 'liquefy',\r\n 'liqueur',\r\n 'liquid',\r\n 'lisp',\r\n 'list',\r\n 'litigate',\r\n 'litigator',\r\n 'litmus',\r\n 'litter',\r\n 'little',\r\n 'livable',\r\n 'lived',\r\n 'lively',\r\n 'liver',\r\n 'livestock',\r\n 'lividly',\r\n 'living',\r\n 'lizard',\r\n 'lubricant',\r\n 'lubricate',\r\n 'lucid',\r\n 'luckily',\r\n 'luckiness',\r\n 'luckless',\r\n 'lucrative',\r\n 'ludicrous',\r\n 'lugged',\r\n 'lukewarm',\r\n 'lullaby',\r\n 'lumber',\r\n 'luminance',\r\n 'luminous',\r\n 'lumpiness',\r\n 'lumping',\r\n 'lumpish',\r\n 'lunacy',\r\n 'lunar',\r\n 'lunchbox',\r\n 'luncheon',\r\n 'lunchroom',\r\n 'lunchtime',\r\n 'lung',\r\n 'lurch',\r\n 'lure',\r\n 'luridness',\r\n 'lurk',\r\n 'lushly',\r\n 'lushness',\r\n 'luster',\r\n 'lustfully',\r\n 'lustily',\r\n 'lustiness',\r\n 'lustrous',\r\n 'lusty',\r\n 'luxurious',\r\n 'luxury',\r\n 'lying',\r\n 'lyrically',\r\n 'lyricism',\r\n 'lyricist',\r\n 'lyrics',\r\n 'macarena',\r\n 'macaroni',\r\n 'macaw',\r\n 'mace',\r\n 'machine',\r\n 'machinist',\r\n 'magazine',\r\n 'magenta',\r\n 'maggot',\r\n 'magical',\r\n 'magician',\r\n 'magma',\r\n 'magnesium',\r\n 'magnetic',\r\n 'magnetism',\r\n 'magnetize',\r\n 'magnifier',\r\n 'magnify',\r\n 'magnitude',\r\n 'magnolia',\r\n 'mahogany',\r\n 'maimed',\r\n 'majestic',\r\n 'majesty',\r\n 'majorette',\r\n 'majority',\r\n 'makeover',\r\n 'maker',\r\n 'makeshift',\r\n 'making',\r\n 'malformed',\r\n 'malt',\r\n 'mama',\r\n 'mammal',\r\n 'mammary',\r\n 'mammogram',\r\n 'manager',\r\n 'managing',\r\n 'manatee',\r\n 'mandarin',\r\n 'mandate',\r\n 'mandatory',\r\n 'mandolin',\r\n 'manger',\r\n 'mangle',\r\n 'mango',\r\n 'mangy',\r\n 'manhandle',\r\n 'manhole',\r\n 'manhood',\r\n 'manhunt',\r\n 'manicotti',\r\n 'manicure',\r\n 'manifesto',\r\n 'manila',\r\n 'mankind',\r\n 'manlike',\r\n 'manliness',\r\n 'manly',\r\n 'manmade',\r\n 'manned',\r\n 'mannish',\r\n 'manor',\r\n 'manpower',\r\n 'mantis',\r\n 'mantra',\r\n 'manual',\r\n 'many',\r\n 'map',\r\n 'marathon',\r\n 'marauding',\r\n 'marbled',\r\n 'marbles',\r\n 'marbling',\r\n 'march',\r\n 'mardi',\r\n 'margarine',\r\n 'margarita',\r\n 'margin',\r\n 'marigold',\r\n 'marina',\r\n 'marine',\r\n 'marital',\r\n 'maritime',\r\n 'marlin',\r\n 'marmalade',\r\n 'maroon',\r\n 'married',\r\n 'marrow',\r\n 'marry',\r\n 'marshland',\r\n 'marshy',\r\n 'marsupial',\r\n 'marvelous',\r\n 'marxism',\r\n 'mascot',\r\n 'masculine',\r\n 'mashed',\r\n 'mashing',\r\n 'massager',\r\n 'masses',\r\n 'massive',\r\n 'mastiff',\r\n 'matador',\r\n 'matchbook',\r\n 'matchbox',\r\n 'matcher',\r\n 'matching',\r\n 'matchless',\r\n 'material',\r\n 'maternal',\r\n 'maternity',\r\n 'math',\r\n 'mating',\r\n 'matriarch',\r\n 'matrimony',\r\n 'matrix',\r\n 'matron',\r\n 'matted',\r\n 'matter',\r\n 'maturely',\r\n 'maturing',\r\n 'maturity',\r\n 'mauve',\r\n 'maverick',\r\n 'maximize',\r\n 'maximum',\r\n 'maybe',\r\n 'mayday',\r\n 'mayflower',\r\n 'moaner',\r\n 'moaning',\r\n 'mobile',\r\n 'mobility',\r\n 'mobilize',\r\n 'mobster',\r\n 'mocha',\r\n 'mocker',\r\n 'mockup',\r\n 'modified',\r\n 'modify',\r\n 'modular',\r\n 'modulator',\r\n 'module',\r\n 'moisten',\r\n 'moistness',\r\n 'moisture',\r\n 'molar',\r\n 'molasses',\r\n 'mold',\r\n 'molecular',\r\n 'molecule',\r\n 'molehill',\r\n 'mollusk',\r\n 'mom',\r\n 'monastery',\r\n 'monday',\r\n 'monetary',\r\n 'monetize',\r\n 'moneybags',\r\n 'moneyless',\r\n 'moneywise',\r\n 'mongoose',\r\n 'mongrel',\r\n 'monitor',\r\n 'monkhood',\r\n 'monogamy',\r\n 'monogram',\r\n 'monologue',\r\n 'monopoly',\r\n 'monorail',\r\n 'monotone',\r\n 'monotype',\r\n 'monoxide',\r\n 'monsieur',\r\n 'monsoon',\r\n 'monstrous',\r\n 'monthly',\r\n 'monument',\r\n 'moocher',\r\n 'moodiness',\r\n 'moody',\r\n 'mooing',\r\n 'moonbeam',\r\n 'mooned',\r\n 'moonlight',\r\n 'moonlike',\r\n 'moonlit',\r\n 'moonrise',\r\n 'moonscape',\r\n 'moonshine',\r\n 'moonstone',\r\n 'moonwalk',\r\n 'mop',\r\n 'morale',\r\n 'morality',\r\n 'morally',\r\n 'morbidity',\r\n 'morbidly',\r\n 'morphine',\r\n 'morphing',\r\n 'morse',\r\n 'mortality',\r\n 'mortally',\r\n 'mortician',\r\n 'mortified',\r\n 'mortify',\r\n 'mortuary',\r\n 'mosaic',\r\n 'mossy',\r\n 'most',\r\n 'mothball',\r\n 'mothproof',\r\n 'motion',\r\n 'motivate',\r\n 'motivator',\r\n 'motive',\r\n 'motocross',\r\n 'motor',\r\n 'motto',\r\n 'mountable',\r\n 'mountain',\r\n 'mounted',\r\n 'mounting',\r\n 'mourner',\r\n 'mournful',\r\n 'mouse',\r\n 'mousiness',\r\n 'moustache',\r\n 'mousy',\r\n 'mouth',\r\n 'movable',\r\n 'move',\r\n 'movie',\r\n 'moving',\r\n 'mower',\r\n 'mowing',\r\n 'much',\r\n 'muck',\r\n 'mud',\r\n 'mug',\r\n 'mulberry',\r\n 'mulch',\r\n 'mule',\r\n 'mulled',\r\n 'mullets',\r\n 'multiple',\r\n 'multiply',\r\n 'multitask',\r\n 'multitude',\r\n 'mumble',\r\n 'mumbling',\r\n 'mumbo',\r\n 'mummified',\r\n 'mummify',\r\n 'mummy',\r\n 'mumps',\r\n 'munchkin',\r\n 'mundane',\r\n 'municipal',\r\n 'muppet',\r\n 'mural',\r\n 'murkiness',\r\n 'murky',\r\n 'murmuring',\r\n 'muscular',\r\n 'museum',\r\n 'mushily',\r\n 'mushiness',\r\n 'mushroom',\r\n 'mushy',\r\n 'music',\r\n 'musket',\r\n 'muskiness',\r\n 'musky',\r\n 'mustang',\r\n 'mustard',\r\n 'muster',\r\n 'mustiness',\r\n 'musty',\r\n 'mutable',\r\n 'mutate',\r\n 'mutation',\r\n 'mute',\r\n 'mutilated',\r\n 'mutilator',\r\n 'mutiny',\r\n 'mutt',\r\n 'mutual',\r\n 'muzzle',\r\n 'myself',\r\n 'myspace',\r\n 'mystified',\r\n 'mystify',\r\n 'myth',\r\n 'nacho',\r\n 'nag',\r\n 'nail',\r\n 'name',\r\n 'naming',\r\n 'nanny',\r\n 'nanometer',\r\n 'nape',\r\n 'napkin',\r\n 'napped',\r\n 'napping',\r\n 'nappy',\r\n 'narrow',\r\n 'nastily',\r\n 'nastiness',\r\n 'national',\r\n 'native',\r\n 'nativity',\r\n 'natural',\r\n 'nature',\r\n 'naturist',\r\n 'nautical',\r\n 'navigate',\r\n 'navigator',\r\n 'navy',\r\n 'nearby',\r\n 'nearest',\r\n 'nearly',\r\n 'nearness',\r\n 'neatly',\r\n 'neatness',\r\n 'nebula',\r\n 'nebulizer',\r\n 'nectar',\r\n 'negate',\r\n 'negation',\r\n 'negative',\r\n 'neglector',\r\n 'negligee',\r\n 'negligent',\r\n 'negotiate',\r\n 'nemeses',\r\n 'nemesis',\r\n 'neon',\r\n 'nephew',\r\n 'nerd',\r\n 'nervous',\r\n 'nervy',\r\n 'nest',\r\n 'net',\r\n 'neurology',\r\n 'neuron',\r\n 'neurosis',\r\n 'neurotic',\r\n 'neuter',\r\n 'neutron',\r\n 'never',\r\n 'next',\r\n 'nibble',\r\n 'nickname',\r\n 'nicotine',\r\n 'niece',\r\n 'nifty',\r\n 'nimble',\r\n 'nimbly',\r\n 'nineteen',\r\n 'ninetieth',\r\n 'ninja',\r\n 'nintendo',\r\n 'ninth',\r\n 'nuclear',\r\n 'nuclei',\r\n 'nucleus',\r\n 'nugget',\r\n 'nullify',\r\n 'number',\r\n 'numbing',\r\n 'numbly',\r\n 'numbness',\r\n 'numeral',\r\n 'numerate',\r\n 'numerator',\r\n 'numeric',\r\n 'numerous',\r\n 'nuptials',\r\n 'nursery',\r\n 'nursing',\r\n 'nurture',\r\n 'nutcase',\r\n 'nutlike',\r\n 'nutmeg',\r\n 'nutrient',\r\n 'nutshell',\r\n 'nuttiness',\r\n 'nutty',\r\n 'nuzzle',\r\n 'nylon',\r\n 'oaf',\r\n 'oak',\r\n 'oasis',\r\n 'oat',\r\n 'obedience',\r\n 'obedient',\r\n 'obituary',\r\n 'object',\r\n 'obligate',\r\n 'obliged',\r\n 'oblivion',\r\n 'oblivious',\r\n 'oblong',\r\n 'obnoxious',\r\n 'oboe',\r\n 'obscure',\r\n 'obscurity',\r\n 'observant',\r\n 'observer',\r\n 'observing',\r\n 'obsessed',\r\n 'obsession',\r\n 'obsessive',\r\n 'obsolete',\r\n 'obstacle',\r\n 'obstinate',\r\n 'obstruct',\r\n 'obtain',\r\n 'obtrusive',\r\n 'obtuse',\r\n 'obvious',\r\n 'occultist',\r\n 'occupancy',\r\n 'occupant',\r\n 'occupier',\r\n 'occupy',\r\n 'ocean',\r\n 'ocelot',\r\n 'octagon',\r\n 'octane',\r\n 'october',\r\n 'octopus',\r\n 'ogle',\r\n 'oil',\r\n 'oink',\r\n 'ointment',\r\n 'okay',\r\n 'old',\r\n 'olive',\r\n 'olympics',\r\n 'omega',\r\n 'omen',\r\n 'ominous',\r\n 'omission',\r\n 'omit',\r\n 'omnivore',\r\n 'onboard',\r\n 'oncoming',\r\n 'ongoing',\r\n 'onion',\r\n 'online',\r\n 'onlooker',\r\n 'only',\r\n 'onscreen',\r\n 'onset',\r\n 'onshore',\r\n 'onslaught',\r\n 'onstage',\r\n 'onto',\r\n 'onward',\r\n 'onyx',\r\n 'oops',\r\n 'ooze',\r\n 'oozy',\r\n 'opacity',\r\n 'opal',\r\n 'open',\r\n 'operable',\r\n 'operate',\r\n 'operating',\r\n 'operation',\r\n 'operative',\r\n 'operator',\r\n 'opium',\r\n 'opossum',\r\n 'opponent',\r\n 'oppose',\r\n 'opposing',\r\n 'opposite',\r\n 'oppressed',\r\n 'oppressor',\r\n 'opt',\r\n 'opulently',\r\n 'osmosis',\r\n 'other',\r\n 'otter',\r\n 'ouch',\r\n 'ought',\r\n 'ounce',\r\n 'outage',\r\n 'outback',\r\n 'outbid',\r\n 'outboard',\r\n 'outbound',\r\n 'outbreak',\r\n 'outburst',\r\n 'outcast',\r\n 'outclass',\r\n 'outcome',\r\n 'outdated',\r\n 'outdoors',\r\n 'outer',\r\n 'outfield',\r\n 'outfit',\r\n 'outflank',\r\n 'outgoing',\r\n 'outgrow',\r\n 'outhouse',\r\n 'outing',\r\n 'outlast',\r\n 'outlet',\r\n 'outline',\r\n 'outlook',\r\n 'outlying',\r\n 'outmatch',\r\n 'outmost',\r\n 'outnumber',\r\n 'outplayed',\r\n 'outpost',\r\n 'outpour',\r\n 'output',\r\n 'outrage',\r\n 'outrank',\r\n 'outreach',\r\n 'outright',\r\n 'outscore',\r\n 'outsell',\r\n 'outshine',\r\n 'outshoot',\r\n 'outsider',\r\n 'outskirts',\r\n 'outsmart',\r\n 'outsource',\r\n 'outspoken',\r\n 'outtakes',\r\n 'outthink',\r\n 'outward',\r\n 'outweigh',\r\n 'outwit',\r\n 'oval',\r\n 'ovary',\r\n 'oven',\r\n 'overact',\r\n 'overall',\r\n 'overarch',\r\n 'overbid',\r\n 'overbill',\r\n 'overbite',\r\n 'overblown',\r\n 'overboard',\r\n 'overbook',\r\n 'overbuilt',\r\n 'overcast',\r\n 'overcoat',\r\n 'overcome',\r\n 'overcook',\r\n 'overcrowd',\r\n 'overdraft',\r\n 'overdrawn',\r\n 'overdress',\r\n 'overdrive',\r\n 'overdue',\r\n 'overeager',\r\n 'overeater',\r\n 'overexert',\r\n 'overfed',\r\n 'overfeed',\r\n 'overfill',\r\n 'overflow',\r\n 'overfull',\r\n 'overgrown',\r\n 'overhand',\r\n 'overhang',\r\n 'overhaul',\r\n 'overhead',\r\n 'overhear',\r\n 'overheat',\r\n 'overhung',\r\n 'overjoyed',\r\n 'overkill',\r\n 'overlabor',\r\n 'overlaid',\r\n 'overlap',\r\n 'overlay',\r\n 'overload',\r\n 'overlook',\r\n 'overlord',\r\n 'overlying',\r\n 'overnight',\r\n 'overpass',\r\n 'overpay',\r\n 'overplant',\r\n 'overplay',\r\n 'overpower',\r\n 'overprice',\r\n 'overrate',\r\n 'overreach',\r\n 'overreact',\r\n 'override',\r\n 'overripe',\r\n 'overrule',\r\n 'overrun',\r\n 'overshoot',\r\n 'overshot',\r\n 'oversight',\r\n 'oversized',\r\n 'oversleep',\r\n 'oversold',\r\n 'overspend',\r\n 'overstate',\r\n 'overstay',\r\n 'overstep',\r\n 'overstock',\r\n 'overstuff',\r\n 'oversweet',\r\n 'overtake',\r\n 'overthrow',\r\n 'overtime',\r\n 'overtly',\r\n 'overtone',\r\n 'overture',\r\n 'overturn',\r\n 'overuse',\r\n 'overvalue',\r\n 'overview',\r\n 'overwrite',\r\n 'owl',\r\n 'oxford',\r\n 'oxidant',\r\n 'oxidation',\r\n 'oxidize',\r\n 'oxidizing',\r\n 'oxygen',\r\n 'oxymoron',\r\n 'oyster',\r\n 'ozone',\r\n 'paced',\r\n 'pacemaker',\r\n 'pacific',\r\n 'pacifier',\r\n 'pacifism',\r\n 'pacifist',\r\n 'pacify',\r\n 'padded',\r\n 'padding',\r\n 'paddle',\r\n 'paddling',\r\n 'padlock',\r\n 'pagan',\r\n 'pager',\r\n 'paging',\r\n 'pajamas',\r\n 'palace',\r\n 'palatable',\r\n 'palm',\r\n 'palpable',\r\n 'palpitate',\r\n 'paltry',\r\n 'pampered',\r\n 'pamperer',\r\n 'pampers',\r\n 'pamphlet',\r\n 'panama',\r\n 'pancake',\r\n 'pancreas',\r\n 'panda',\r\n 'pandemic',\r\n 'pang',\r\n 'panhandle',\r\n 'panic',\r\n 'panning',\r\n 'panorama',\r\n 'panoramic',\r\n 'panther',\r\n 'pantomime',\r\n 'pantry',\r\n 'pants',\r\n 'pantyhose',\r\n 'paparazzi',\r\n 'papaya',\r\n 'paper',\r\n 'paprika',\r\n 'papyrus',\r\n 'parabola',\r\n 'parachute',\r\n 'parade',\r\n 'paradox',\r\n 'paragraph',\r\n 'parakeet',\r\n 'paralegal',\r\n 'paralyses',\r\n 'paralysis',\r\n 'paralyze',\r\n 'paramedic',\r\n 'parameter',\r\n 'paramount',\r\n 'parasail',\r\n 'parasite',\r\n 'parasitic',\r\n 'parcel',\r\n 'parched',\r\n 'parchment',\r\n 'pardon',\r\n 'parish',\r\n 'parka',\r\n 'parking',\r\n 'parkway',\r\n 'parlor',\r\n 'parmesan',\r\n 'parole',\r\n 'parrot',\r\n 'parsley',\r\n 'parsnip',\r\n 'partake',\r\n 'parted',\r\n 'parting',\r\n 'partition',\r\n 'partly',\r\n 'partner',\r\n 'partridge',\r\n 'party',\r\n 'passable',\r\n 'passably',\r\n 'passage',\r\n 'passcode',\r\n 'passenger',\r\n 'passerby',\r\n 'passing',\r\n 'passion',\r\n 'passive',\r\n 'passivism',\r\n 'passover',\r\n 'passport',\r\n 'password',\r\n 'pasta',\r\n 'pasted',\r\n 'pastel',\r\n 'pastime',\r\n 'pastor',\r\n 'pastrami',\r\n 'pasture',\r\n 'pasty',\r\n 'patchwork',\r\n 'patchy',\r\n 'paternal',\r\n 'paternity',\r\n 'path',\r\n 'patience',\r\n 'patient',\r\n 'patio',\r\n 'patriarch',\r\n 'patriot',\r\n 'patrol',\r\n 'patronage',\r\n 'patronize',\r\n 'pauper',\r\n 'pavement',\r\n 'paver',\r\n 'pavestone',\r\n 'pavilion',\r\n 'paving',\r\n 'pawing',\r\n 'payable',\r\n 'payback',\r\n 'paycheck',\r\n 'payday',\r\n 'payee',\r\n 'payer',\r\n 'paying',\r\n 'payment',\r\n 'payphone',\r\n 'payroll',\r\n 'pebble',\r\n 'pebbly',\r\n 'pecan',\r\n 'pectin',\r\n 'peculiar',\r\n 'peddling',\r\n 'pediatric',\r\n 'pedicure',\r\n 'pedigree',\r\n 'pedometer',\r\n 'pegboard',\r\n 'pelican',\r\n 'pellet',\r\n 'pelt',\r\n 'pelvis',\r\n 'penalize',\r\n 'penalty',\r\n 'pencil',\r\n 'pendant',\r\n 'pending',\r\n 'penholder',\r\n 'penknife',\r\n 'pennant',\r\n 'penniless',\r\n 'penny',\r\n 'penpal',\r\n 'pension',\r\n 'pentagon',\r\n 'pentagram',\r\n 'pep',\r\n 'perceive',\r\n 'percent',\r\n 'perch',\r\n 'percolate',\r\n 'perennial',\r\n 'perfected',\r\n 'perfectly',\r\n 'perfume',\r\n 'periscope',\r\n 'perish',\r\n 'perjurer',\r\n 'perjury',\r\n 'perkiness',\r\n 'perky',\r\n 'perm',\r\n 'peroxide',\r\n 'perpetual',\r\n 'perplexed',\r\n 'persecute',\r\n 'persevere',\r\n 'persuaded',\r\n 'persuader',\r\n 'pesky',\r\n 'peso',\r\n 'pessimism',\r\n 'pessimist',\r\n 'pester',\r\n 'pesticide',\r\n 'petal',\r\n 'petite',\r\n 'petition',\r\n 'petri',\r\n 'petroleum',\r\n 'petted',\r\n 'petticoat',\r\n 'pettiness',\r\n 'petty',\r\n 'petunia',\r\n 'phantom',\r\n 'phobia',\r\n 'phoenix',\r\n 'phonebook',\r\n 'phoney',\r\n 'phonics',\r\n 'phoniness',\r\n 'phony',\r\n 'phosphate',\r\n 'photo',\r\n 'phrase',\r\n 'phrasing',\r\n 'placard',\r\n 'placate',\r\n 'placidly',\r\n 'plank',\r\n 'planner',\r\n 'plant',\r\n 'plasma',\r\n 'plaster',\r\n 'plastic',\r\n 'plated',\r\n 'platform',\r\n 'plating',\r\n 'platinum',\r\n 'platonic',\r\n 'platter',\r\n 'platypus',\r\n 'plausible',\r\n 'plausibly',\r\n 'playable',\r\n 'playback',\r\n 'player',\r\n 'playful',\r\n 'playgroup',\r\n 'playhouse',\r\n 'playing',\r\n 'playlist',\r\n 'playmaker',\r\n 'playmate',\r\n 'playoff',\r\n 'playpen',\r\n 'playroom',\r\n 'playset',\r\n 'plaything',\r\n 'playtime',\r\n 'plaza',\r\n 'pleading',\r\n 'pleat',\r\n 'pledge',\r\n 'plentiful',\r\n 'plenty',\r\n 'plethora',\r\n 'plexiglas',\r\n 'pliable',\r\n 'plod',\r\n 'plop',\r\n 'plot',\r\n 'plow',\r\n 'ploy',\r\n 'pluck',\r\n 'plug',\r\n 'plunder',\r\n 'plunging',\r\n 'plural',\r\n 'plus',\r\n 'plutonium',\r\n 'plywood',\r\n 'poach',\r\n 'pod',\r\n 'poem',\r\n 'poet',\r\n 'pogo',\r\n 'pointed',\r\n 'pointer',\r\n 'pointing',\r\n 'pointless',\r\n 'pointy',\r\n 'poise',\r\n 'poison',\r\n 'poker',\r\n 'poking',\r\n 'polar',\r\n 'police',\r\n 'policy',\r\n 'polio',\r\n 'polish',\r\n 'politely',\r\n 'polka',\r\n 'polo',\r\n 'polyester',\r\n 'polygon',\r\n 'polygraph',\r\n 'polymer',\r\n 'poncho',\r\n 'pond',\r\n 'pony',\r\n 'popcorn',\r\n 'pope',\r\n 'poplar',\r\n 'popper',\r\n 'poppy',\r\n 'popsicle',\r\n 'populace',\r\n 'popular',\r\n 'populate',\r\n 'porcupine',\r\n 'pork',\r\n 'porous',\r\n 'porridge',\r\n 'portable',\r\n 'portal',\r\n 'portfolio',\r\n 'porthole',\r\n 'portion',\r\n 'portly',\r\n 'portside',\r\n 'poser',\r\n 'posh',\r\n 'posing',\r\n 'possible',\r\n 'possibly',\r\n 'possum',\r\n 'postage',\r\n 'postal',\r\n 'postbox',\r\n 'postcard',\r\n 'posted',\r\n 'poster',\r\n 'posting',\r\n 'postnasal',\r\n 'posture',\r\n 'postwar',\r\n 'pouch',\r\n 'pounce',\r\n 'pouncing',\r\n 'pound',\r\n 'pouring',\r\n 'pout',\r\n 'powdered',\r\n 'powdering',\r\n 'powdery',\r\n 'power',\r\n 'powwow',\r\n 'pox',\r\n 'praising',\r\n 'prance',\r\n 'prancing',\r\n 'pranker',\r\n 'prankish',\r\n 'prankster',\r\n 'prayer',\r\n 'praying',\r\n 'preacher',\r\n 'preaching',\r\n 'preachy',\r\n 'preamble',\r\n 'precinct',\r\n 'precise',\r\n 'precision',\r\n 'precook',\r\n 'precut',\r\n 'predator',\r\n 'predefine',\r\n 'predict',\r\n 'preface',\r\n 'prefix',\r\n 'preflight',\r\n 'preformed',\r\n 'pregame',\r\n 'pregnancy',\r\n 'pregnant',\r\n 'preheated',\r\n 'prelaunch',\r\n 'prelaw',\r\n 'prelude',\r\n 'premiere',\r\n 'premises',\r\n 'premium',\r\n 'prenatal',\r\n 'preoccupy',\r\n 'preorder',\r\n 'prepaid',\r\n 'prepay',\r\n 'preplan',\r\n 'preppy',\r\n 'preschool',\r\n 'prescribe',\r\n 'preseason',\r\n 'preset',\r\n 'preshow',\r\n 'president',\r\n 'presoak',\r\n 'press',\r\n 'presume',\r\n 'presuming',\r\n 'preteen',\r\n 'pretended',\r\n 'pretender',\r\n 'pretense',\r\n 'pretext',\r\n 'pretty',\r\n 'pretzel',\r\n 'prevail',\r\n 'prevalent',\r\n 'prevent',\r\n 'preview',\r\n 'previous',\r\n 'prewar',\r\n 'prewashed',\r\n 'prideful',\r\n 'pried',\r\n 'primal',\r\n 'primarily',\r\n 'primary',\r\n 'primate',\r\n 'primer',\r\n 'primp',\r\n 'princess',\r\n 'print',\r\n 'prior',\r\n 'prism',\r\n 'prison',\r\n 'prissy',\r\n 'pristine',\r\n 'privacy',\r\n 'private',\r\n 'privatize',\r\n 'prize',\r\n 'proactive',\r\n 'probable',\r\n 'probably',\r\n 'probation',\r\n 'probe',\r\n 'probing',\r\n 'probiotic',\r\n 'problem',\r\n 'procedure',\r\n 'process',\r\n 'proclaim',\r\n 'procreate',\r\n 'procurer',\r\n 'prodigal',\r\n 'prodigy',\r\n 'produce',\r\n 'product',\r\n 'profane',\r\n 'profanity',\r\n 'professed',\r\n 'professor',\r\n 'profile',\r\n 'profound',\r\n 'profusely',\r\n 'progeny',\r\n 'prognosis',\r\n 'program',\r\n 'progress',\r\n 'projector',\r\n 'prologue',\r\n 'prolonged',\r\n 'promenade',\r\n 'prominent',\r\n 'promoter',\r\n 'promotion',\r\n 'prompter',\r\n 'promptly',\r\n 'prone',\r\n 'prong',\r\n 'pronounce',\r\n 'pronto',\r\n 'proofing',\r\n 'proofread',\r\n 'proofs',\r\n 'propeller',\r\n 'properly',\r\n 'property',\r\n 'proponent',\r\n 'proposal',\r\n 'propose',\r\n 'props',\r\n 'prorate',\r\n 'protector',\r\n 'protegee',\r\n 'proton',\r\n 'prototype',\r\n 'protozoan',\r\n 'protract',\r\n 'protrude',\r\n 'proud',\r\n 'provable',\r\n 'proved',\r\n 'proven',\r\n 'provided',\r\n 'provider',\r\n 'providing',\r\n 'province',\r\n 'proving',\r\n 'provoke',\r\n 'provoking',\r\n 'provolone',\r\n 'prowess',\r\n 'prowler',\r\n 'prowling',\r\n 'proximity',\r\n 'proxy',\r\n 'prozac',\r\n 'prude',\r\n 'prudishly',\r\n 'prune',\r\n 'pruning',\r\n 'pry',\r\n 'psychic',\r\n 'public',\r\n 'publisher',\r\n 'pucker',\r\n 'pueblo',\r\n 'pug',\r\n 'pull',\r\n 'pulmonary',\r\n 'pulp',\r\n 'pulsate',\r\n 'pulse',\r\n 'pulverize',\r\n 'puma',\r\n 'pumice',\r\n 'pummel',\r\n 'punch',\r\n 'punctual',\r\n 'punctuate',\r\n 'punctured',\r\n 'pungent',\r\n 'punisher',\r\n 'punk',\r\n 'pupil',\r\n 'puppet',\r\n 'puppy',\r\n 'purchase',\r\n 'pureblood',\r\n 'purebred',\r\n 'purely',\r\n 'pureness',\r\n 'purgatory',\r\n 'purge',\r\n 'purging',\r\n 'purifier',\r\n 'purify',\r\n 'purist',\r\n 'puritan',\r\n 'purity',\r\n 'purple',\r\n 'purplish',\r\n 'purposely',\r\n 'purr',\r\n 'purse',\r\n 'pursuable',\r\n 'pursuant',\r\n 'pursuit',\r\n 'purveyor',\r\n 'pushcart',\r\n 'pushchair',\r\n 'pusher',\r\n 'pushiness',\r\n 'pushing',\r\n 'pushover',\r\n 'pushpin',\r\n 'pushup',\r\n 'pushy',\r\n 'putdown',\r\n 'putt',\r\n 'puzzle',\r\n 'puzzling',\r\n 'pyramid',\r\n 'pyromania',\r\n 'python',\r\n 'quack',\r\n 'quadrant',\r\n 'quail',\r\n 'quaintly',\r\n 'quake',\r\n 'quaking',\r\n 'qualified',\r\n 'qualifier',\r\n 'qualify',\r\n 'quality',\r\n 'qualm',\r\n 'quantum',\r\n 'quarrel',\r\n 'quarry',\r\n 'quartered',\r\n 'quarterly',\r\n 'quarters',\r\n 'quartet',\r\n 'quench',\r\n 'query',\r\n 'quicken',\r\n 'quickly',\r\n 'quickness',\r\n 'quicksand',\r\n 'quickstep',\r\n 'quiet',\r\n 'quill',\r\n 'quilt',\r\n 'quintet',\r\n 'quintuple',\r\n 'quirk',\r\n 'quit',\r\n 'quiver',\r\n 'quizzical',\r\n 'quotable',\r\n 'quotation',\r\n 'quote',\r\n 'rabid',\r\n 'race',\r\n 'racing',\r\n 'racism',\r\n 'rack',\r\n 'racoon',\r\n 'radar',\r\n 'radial',\r\n 'radiance',\r\n 'radiantly',\r\n 'radiated',\r\n 'radiation',\r\n 'radiator',\r\n 'radio',\r\n 'radish',\r\n 'raffle',\r\n 'raft',\r\n 'rage',\r\n 'ragged',\r\n 'raging',\r\n 'ragweed',\r\n 'raider',\r\n 'railcar',\r\n 'railing',\r\n 'railroad',\r\n 'railway',\r\n 'raisin',\r\n 'rake',\r\n 'raking',\r\n 'rally',\r\n 'ramble',\r\n 'rambling',\r\n 'ramp',\r\n 'ramrod',\r\n 'ranch',\r\n 'rancidity',\r\n 'random',\r\n 'ranged',\r\n 'ranger',\r\n 'ranging',\r\n 'ranked',\r\n 'ranking',\r\n 'ransack',\r\n 'ranting',\r\n 'rants',\r\n 'rare',\r\n 'rarity',\r\n 'rascal',\r\n 'rash',\r\n 'rasping',\r\n 'ravage',\r\n 'raven',\r\n 'ravine',\r\n 'raving',\r\n 'ravioli',\r\n 'ravishing',\r\n 'reabsorb',\r\n 'reach',\r\n 'reacquire',\r\n 'reaction',\r\n 'reactive',\r\n 'reactor',\r\n 'reaffirm',\r\n 'ream',\r\n 'reanalyze',\r\n 'reappear',\r\n 'reapply',\r\n 'reappoint',\r\n 'reapprove',\r\n 'rearrange',\r\n 'rearview',\r\n 'reason',\r\n 'reassign',\r\n 'reassure',\r\n 'reattach',\r\n 'reawake',\r\n 'rebalance',\r\n 'rebate',\r\n 'rebel',\r\n 'rebirth',\r\n 'reboot',\r\n 'reborn',\r\n 'rebound',\r\n 'rebuff',\r\n 'rebuild',\r\n 'rebuilt',\r\n 'reburial',\r\n 'rebuttal',\r\n 'recall',\r\n 'recant',\r\n 'recapture',\r\n 'recast',\r\n 'recede',\r\n 'recent',\r\n 'recess',\r\n 'recharger',\r\n 'recipient',\r\n 'recital',\r\n 'recite',\r\n 'reckless',\r\n 'reclaim',\r\n 'recliner',\r\n 'reclining',\r\n 'recluse',\r\n 'reclusive',\r\n 'recognize',\r\n 'recoil',\r\n 'recollect',\r\n 'recolor',\r\n 'reconcile',\r\n 'reconfirm',\r\n 'reconvene',\r\n 'recopy',\r\n 'record',\r\n 'recount',\r\n 'recoup',\r\n 'recovery',\r\n 'recreate',\r\n 'rectal',\r\n 'rectangle',\r\n 'rectified',\r\n 'rectify',\r\n 'recycled',\r\n 'recycler',\r\n 'recycling',\r\n 'reemerge',\r\n 'reenact',\r\n 'reenter',\r\n 'reentry',\r\n 'reexamine',\r\n 'referable',\r\n 'referee',\r\n 'reference',\r\n 'refill',\r\n 'refinance',\r\n 'refined',\r\n 'refinery',\r\n 'refining',\r\n 'refinish',\r\n 'reflected',\r\n 'reflector',\r\n 'reflex',\r\n 'reflux',\r\n 'refocus',\r\n 'refold',\r\n 'reforest',\r\n 'reformat',\r\n 'reformed',\r\n 'reformer',\r\n 'reformist',\r\n 'refract',\r\n 'refrain',\r\n 'refreeze',\r\n 'refresh',\r\n 'refried',\r\n 'refueling',\r\n 'refund',\r\n 'refurbish',\r\n 'refurnish',\r\n 'refusal',\r\n 'refuse',\r\n 'refusing',\r\n 'refutable',\r\n 'refute',\r\n 'regain',\r\n 'regalia',\r\n 'regally',\r\n 'reggae',\r\n 'regime',\r\n 'region',\r\n 'register',\r\n 'registrar',\r\n 'registry',\r\n 'regress',\r\n 'regretful',\r\n 'regroup',\r\n 'regular',\r\n 'regulate',\r\n 'regulator',\r\n 'rehab',\r\n 'reheat',\r\n 'rehire',\r\n 'rehydrate',\r\n 'reimburse',\r\n 'reissue',\r\n 'reiterate',\r\n 'rejoice',\r\n 'rejoicing',\r\n 'rejoin',\r\n 'rekindle',\r\n 'relapse',\r\n 'relapsing',\r\n 'relatable',\r\n 'related',\r\n 'relation',\r\n 'relative',\r\n 'relax',\r\n 'relay',\r\n 'relearn',\r\n 'release',\r\n 'relenting',\r\n 'reliable',\r\n 'reliably',\r\n 'reliance',\r\n 'reliant',\r\n 'relic',\r\n 'relieve',\r\n 'relieving',\r\n 'relight',\r\n 'relish',\r\n 'relive',\r\n 'reload',\r\n 'relocate',\r\n 'relock',\r\n 'reluctant',\r\n 'rely',\r\n 'remake',\r\n 'remark',\r\n 'remarry',\r\n 'rematch',\r\n 'remedial',\r\n 'remedy',\r\n 'remember',\r\n 'reminder',\r\n 'remindful',\r\n 'remission',\r\n 'remix',\r\n 'remnant',\r\n 'remodeler',\r\n 'remold',\r\n 'remorse',\r\n 'remote',\r\n 'removable',\r\n 'removal',\r\n 'removed',\r\n 'remover',\r\n 'removing',\r\n 'rename',\r\n 'renderer',\r\n 'rendering',\r\n 'rendition',\r\n 'renegade',\r\n 'renewable',\r\n 'renewably',\r\n 'renewal',\r\n 'renewed',\r\n 'renounce',\r\n 'renovate',\r\n 'renovator',\r\n 'rentable',\r\n 'rental',\r\n 'rented',\r\n 'renter',\r\n 'reoccupy',\r\n 'reoccur',\r\n 'reopen',\r\n 'reorder',\r\n 'repackage',\r\n 'repacking',\r\n 'repaint',\r\n 'repair',\r\n 'repave',\r\n 'repaying',\r\n 'repayment',\r\n 'repeal',\r\n 'repeated',\r\n 'repeater',\r\n 'repent',\r\n 'rephrase',\r\n 'replace',\r\n 'replay',\r\n 'replica',\r\n 'reply',\r\n 'reporter',\r\n 'repose',\r\n 'repossess',\r\n 'repost',\r\n 'repressed',\r\n 'reprimand',\r\n 'reprint',\r\n 'reprise',\r\n 'reproach',\r\n 'reprocess',\r\n 'reproduce',\r\n 'reprogram',\r\n 'reps',\r\n 'reptile',\r\n 'reptilian',\r\n 'repugnant',\r\n 'repulsion',\r\n 'repulsive',\r\n 'repurpose',\r\n 'reputable',\r\n 'reputably',\r\n 'request',\r\n 'require',\r\n 'requisite',\r\n 'reroute',\r\n 'rerun',\r\n 'resale',\r\n 'resample',\r\n 'rescuer',\r\n 'reseal',\r\n 'research',\r\n 'reselect',\r\n 'reseller',\r\n 'resemble',\r\n 'resend',\r\n 'resent',\r\n 'reset',\r\n 'reshape',\r\n 'reshoot',\r\n 'reshuffle',\r\n 'residence',\r\n 'residency',\r\n 'resident',\r\n 'residual',\r\n 'residue',\r\n 'resigned',\r\n 'resilient',\r\n 'resistant',\r\n 'resisting',\r\n 'resize',\r\n 'resolute',\r\n 'resolved',\r\n 'resonant',\r\n 'resonate',\r\n 'resort',\r\n 'resource',\r\n 'respect',\r\n 'resubmit',\r\n 'result',\r\n 'resume',\r\n 'resupply',\r\n 'resurface',\r\n 'resurrect',\r\n 'retail',\r\n 'retainer',\r\n 'retaining',\r\n 'retake',\r\n 'retaliate',\r\n 'retention',\r\n 'rethink',\r\n 'retinal',\r\n 'retired',\r\n 'retiree',\r\n 'retiring',\r\n 'retold',\r\n 'retool',\r\n 'retorted',\r\n 'retouch',\r\n 'retrace',\r\n 'retract',\r\n 'retrain',\r\n 'retread',\r\n 'retreat',\r\n 'retrial',\r\n 'retrieval',\r\n 'retriever',\r\n 'retry',\r\n 'return',\r\n 'retying',\r\n 'retype',\r\n 'reunion',\r\n 'reunite',\r\n 'reusable',\r\n 'reuse',\r\n 'reveal',\r\n 'reveler',\r\n 'revenge',\r\n 'revenue',\r\n 'reverb',\r\n 'revered',\r\n 'reverence',\r\n 'reverend',\r\n 'reversal',\r\n 'reverse',\r\n 'reversing',\r\n 'reversion',\r\n 'revert',\r\n 'revisable',\r\n 'revise',\r\n 'revision',\r\n 'revisit',\r\n 'revivable',\r\n 'revival',\r\n 'reviver',\r\n 'reviving',\r\n 'revocable',\r\n 'revoke',\r\n 'revolt',\r\n 'revolver',\r\n 'revolving',\r\n 'reward',\r\n 'rewash',\r\n 'rewind',\r\n 'rewire',\r\n 'reword',\r\n 'rework',\r\n 'rewrap',\r\n 'rewrite',\r\n 'rhyme',\r\n 'ribbon',\r\n 'ribcage',\r\n 'rice',\r\n 'riches',\r\n 'richly',\r\n 'richness',\r\n 'rickety',\r\n 'ricotta',\r\n 'riddance',\r\n 'ridden',\r\n 'ride',\r\n 'riding',\r\n 'rifling',\r\n 'rift',\r\n 'rigging',\r\n 'rigid',\r\n 'rigor',\r\n 'rimless',\r\n 'rimmed',\r\n 'rind',\r\n 'rink',\r\n 'rinse',\r\n 'rinsing',\r\n 'riot',\r\n 'ripcord',\r\n 'ripeness',\r\n 'ripening',\r\n 'ripping',\r\n 'ripple',\r\n 'rippling',\r\n 'riptide',\r\n 'rise',\r\n 'rising',\r\n 'risk',\r\n 'risotto',\r\n 'ritalin',\r\n 'ritzy',\r\n 'rival',\r\n 'riverbank',\r\n 'riverbed',\r\n 'riverboat',\r\n 'riverside',\r\n 'riveter',\r\n 'riveting',\r\n 'roamer',\r\n 'roaming',\r\n 'roast',\r\n 'robbing',\r\n 'robe',\r\n 'robin',\r\n 'robotics',\r\n 'robust',\r\n 'rockband',\r\n 'rocker',\r\n 'rocket',\r\n 'rockfish',\r\n 'rockiness',\r\n 'rocking',\r\n 'rocklike',\r\n 'rockslide',\r\n 'rockstar',\r\n 'rocky',\r\n 'rogue',\r\n 'roman',\r\n 'romp',\r\n 'rope',\r\n 'roping',\r\n 'roster',\r\n 'rosy',\r\n 'rotten',\r\n 'rotting',\r\n 'rotunda',\r\n 'roulette',\r\n 'rounding',\r\n 'roundish',\r\n 'roundness',\r\n 'roundup',\r\n 'roundworm',\r\n 'routine',\r\n 'routing',\r\n 'rover',\r\n 'roving',\r\n 'royal',\r\n 'rubbed',\r\n 'rubber',\r\n 'rubbing',\r\n 'rubble',\r\n 'rubdown',\r\n 'ruby',\r\n 'ruckus',\r\n 'rudder',\r\n 'rug',\r\n 'ruined',\r\n 'rule',\r\n 'rumble',\r\n 'rumbling',\r\n 'rummage',\r\n 'rumor',\r\n 'runaround',\r\n 'rundown',\r\n 'runner',\r\n 'running',\r\n 'runny',\r\n 'runt',\r\n 'runway',\r\n 'rupture',\r\n 'rural',\r\n 'ruse',\r\n 'rush',\r\n 'rust',\r\n 'rut',\r\n 'sabbath',\r\n 'sabotage',\r\n 'sacrament',\r\n 'sacred',\r\n 'sacrifice',\r\n 'sadden',\r\n 'saddlebag',\r\n 'saddled',\r\n 'saddling',\r\n 'sadly',\r\n 'sadness',\r\n 'safari',\r\n 'safeguard',\r\n 'safehouse',\r\n 'safely',\r\n 'safeness',\r\n 'saffron',\r\n 'saga',\r\n 'sage',\r\n 'sagging',\r\n 'saggy',\r\n 'said',\r\n 'saint',\r\n 'sake',\r\n 'salad',\r\n 'salami',\r\n 'salaried',\r\n 'salary',\r\n 'saline',\r\n 'salon',\r\n 'saloon',\r\n 'salsa',\r\n 'salt',\r\n 'salutary',\r\n 'salute',\r\n 'salvage',\r\n 'salvaging',\r\n 'salvation',\r\n 'same',\r\n 'sample',\r\n 'sampling',\r\n 'sanction',\r\n 'sanctity',\r\n 'sanctuary',\r\n 'sandal',\r\n 'sandbag',\r\n 'sandbank',\r\n 'sandbar',\r\n 'sandblast',\r\n 'sandbox',\r\n 'sanded',\r\n 'sandfish',\r\n 'sanding',\r\n 'sandlot',\r\n 'sandpaper',\r\n 'sandpit',\r\n 'sandstone',\r\n 'sandstorm',\r\n 'sandworm',\r\n 'sandy',\r\n 'sanitary',\r\n 'sanitizer',\r\n 'sank',\r\n 'santa',\r\n 'sapling',\r\n 'sappiness',\r\n 'sappy',\r\n 'sarcasm',\r\n 'sarcastic',\r\n 'sardine',\r\n 'sash',\r\n 'sasquatch',\r\n 'sassy',\r\n 'satchel',\r\n 'satiable',\r\n 'satin',\r\n 'satirical',\r\n 'satisfied',\r\n 'satisfy',\r\n 'saturate',\r\n 'saturday',\r\n 'sauciness',\r\n 'saucy',\r\n 'sauna',\r\n 'savage',\r\n 'savanna',\r\n 'saved',\r\n 'savings',\r\n 'savior',\r\n 'savor',\r\n 'saxophone',\r\n 'say',\r\n 'scabbed',\r\n 'scabby',\r\n 'scalded',\r\n 'scalding',\r\n 'scale',\r\n 'scaling',\r\n 'scallion',\r\n 'scallop',\r\n 'scalping',\r\n 'scam',\r\n 'scandal',\r\n 'scanner',\r\n 'scanning',\r\n 'scant',\r\n 'scapegoat',\r\n 'scarce',\r\n 'scarcity',\r\n 'scarecrow',\r\n 'scared',\r\n 'scarf',\r\n 'scarily',\r\n 'scariness',\r\n 'scarring',\r\n 'scary',\r\n 'scavenger',\r\n 'scenic',\r\n 'schedule',\r\n 'schematic',\r\n 'scheme',\r\n 'scheming',\r\n 'schilling',\r\n 'schnapps',\r\n 'scholar',\r\n 'science',\r\n 'scientist',\r\n 'scion',\r\n 'scoff',\r\n 'scolding',\r\n 'scone',\r\n 'scoop',\r\n 'scooter',\r\n 'scope',\r\n 'scorch',\r\n 'scorebook',\r\n 'scorecard',\r\n 'scored',\r\n 'scoreless',\r\n 'scorer',\r\n 'scoring',\r\n 'scorn',\r\n 'scorpion',\r\n 'scotch',\r\n 'scoundrel',\r\n 'scoured',\r\n 'scouring',\r\n 'scouting',\r\n 'scouts',\r\n 'scowling',\r\n 'scrabble',\r\n 'scraggly',\r\n 'scrambled',\r\n 'scrambler',\r\n 'scrap',\r\n 'scratch',\r\n 'scrawny',\r\n 'screen',\r\n 'scribble',\r\n 'scribe',\r\n 'scribing',\r\n 'scrimmage',\r\n 'script',\r\n 'scroll',\r\n 'scrooge',\r\n 'scrounger',\r\n 'scrubbed',\r\n 'scrubber',\r\n 'scruffy',\r\n 'scrunch',\r\n 'scrutiny',\r\n 'scuba',\r\n 'scuff',\r\n 'sculptor',\r\n 'sculpture',\r\n 'scurvy',\r\n 'scuttle',\r\n 'secluded',\r\n 'secluding',\r\n 'seclusion',\r\n 'second',\r\n 'secrecy',\r\n 'secret',\r\n 'sectional',\r\n 'sector',\r\n 'secular',\r\n 'securely',\r\n 'security',\r\n 'sedan',\r\n 'sedate',\r\n 'sedation',\r\n 'sedative',\r\n 'sediment',\r\n 'seduce',\r\n 'seducing',\r\n 'segment',\r\n 'seismic',\r\n 'seizing',\r\n 'seldom',\r\n 'selected',\r\n 'selection',\r\n 'selective',\r\n 'selector',\r\n 'self',\r\n 'seltzer',\r\n 'semantic',\r\n 'semester',\r\n 'semicolon',\r\n 'semifinal',\r\n 'seminar',\r\n 'semisoft',\r\n 'semisweet',\r\n 'senate',\r\n 'senator',\r\n 'send',\r\n 'senior',\r\n 'senorita',\r\n 'sensation',\r\n 'sensitive',\r\n 'sensitize',\r\n 'sensually',\r\n 'sensuous',\r\n 'sepia',\r\n 'september',\r\n 'septic',\r\n 'septum',\r\n 'sequel',\r\n 'sequence',\r\n 'sequester',\r\n 'series',\r\n 'sermon',\r\n 'serotonin',\r\n 'serpent',\r\n 'serrated',\r\n 'serve',\r\n 'service',\r\n 'serving',\r\n 'sesame',\r\n 'sessions',\r\n 'setback',\r\n 'setting',\r\n 'settle',\r\n 'settling',\r\n 'setup',\r\n 'sevenfold',\r\n 'seventeen',\r\n 'seventh',\r\n 'seventy',\r\n 'severity',\r\n 'shabby',\r\n 'shack',\r\n 'shaded',\r\n 'shadily',\r\n 'shadiness',\r\n 'shading',\r\n 'shadow',\r\n 'shady',\r\n 'shaft',\r\n 'shakable',\r\n 'shakily',\r\n 'shakiness',\r\n 'shaking',\r\n 'shaky',\r\n 'shale',\r\n 'shallot',\r\n 'shallow',\r\n 'shame',\r\n 'shampoo',\r\n 'shamrock',\r\n 'shank',\r\n 'shanty',\r\n 'shape',\r\n 'shaping',\r\n 'share',\r\n 'sharpener',\r\n 'sharper',\r\n 'sharpie',\r\n 'sharply',\r\n 'sharpness',\r\n 'shawl',\r\n 'sheath',\r\n 'shed',\r\n 'sheep',\r\n 'sheet',\r\n 'shelf',\r\n 'shell',\r\n 'shelter',\r\n 'shelve',\r\n 'shelving',\r\n 'sherry',\r\n 'shield',\r\n 'shifter',\r\n 'shifting',\r\n 'shiftless',\r\n 'shifty',\r\n 'shimmer',\r\n 'shimmy',\r\n 'shindig',\r\n 'shine',\r\n 'shingle',\r\n 'shininess',\r\n 'shining',\r\n 'shiny',\r\n 'ship',\r\n 'shirt',\r\n 'shivering',\r\n 'shock',\r\n 'shone',\r\n 'shoplift',\r\n 'shopper',\r\n 'shopping',\r\n 'shoptalk',\r\n 'shore',\r\n 'shortage',\r\n 'shortcake',\r\n 'shortcut',\r\n 'shorten',\r\n 'shorter',\r\n 'shorthand',\r\n 'shortlist',\r\n 'shortly',\r\n 'shortness',\r\n 'shorts',\r\n 'shortwave',\r\n 'shorty',\r\n 'shout',\r\n 'shove',\r\n 'showbiz',\r\n 'showcase',\r\n 'showdown',\r\n 'shower',\r\n 'showgirl',\r\n 'showing',\r\n 'showman',\r\n 'shown',\r\n 'showoff',\r\n 'showpiece',\r\n 'showplace',\r\n 'showroom',\r\n 'showy',\r\n 'shrank',\r\n 'shrapnel',\r\n 'shredder',\r\n 'shredding',\r\n 'shrewdly',\r\n 'shriek',\r\n 'shrill',\r\n 'shrimp',\r\n 'shrine',\r\n 'shrink',\r\n 'shrivel',\r\n 'shrouded',\r\n 'shrubbery',\r\n 'shrubs',\r\n 'shrug',\r\n 'shrunk',\r\n 'shucking',\r\n 'shudder',\r\n 'shuffle',\r\n 'shuffling',\r\n 'shun',\r\n 'shush',\r\n 'shut',\r\n 'shy',\r\n 'siamese',\r\n 'siberian',\r\n 'sibling',\r\n 'siding',\r\n 'sierra',\r\n 'siesta',\r\n 'sift',\r\n 'sighing',\r\n 'silenced',\r\n 'silencer',\r\n 'silent',\r\n 'silica',\r\n 'silicon',\r\n 'silk',\r\n 'silliness',\r\n 'silly',\r\n 'silo',\r\n 'silt',\r\n 'silver',\r\n 'similarly',\r\n 'simile',\r\n 'simmering',\r\n 'simple',\r\n 'simplify',\r\n 'simply',\r\n 'sincere',\r\n 'sincerity',\r\n 'singer',\r\n 'singing',\r\n 'single',\r\n 'singular',\r\n 'sinister',\r\n 'sinless',\r\n 'sinner',\r\n 'sinuous',\r\n 'sip',\r\n 'siren',\r\n 'sister',\r\n 'sitcom',\r\n 'sitter',\r\n 'sitting',\r\n 'situated',\r\n 'situation',\r\n 'sixfold',\r\n 'sixteen',\r\n 'sixth',\r\n 'sixties',\r\n 'sixtieth',\r\n 'sixtyfold',\r\n 'sizable',\r\n 'sizably',\r\n 'size',\r\n 'sizing',\r\n 'sizzle',\r\n 'sizzling',\r\n 'skater',\r\n 'skating',\r\n 'skedaddle',\r\n 'skeletal',\r\n 'skeleton',\r\n 'skeptic',\r\n 'sketch',\r\n 'skewed',\r\n 'skewer',\r\n 'skid',\r\n 'skied',\r\n 'skier',\r\n 'skies',\r\n 'skiing',\r\n 'skilled',\r\n 'skillet',\r\n 'skillful',\r\n 'skimmed',\r\n 'skimmer',\r\n 'skimming',\r\n 'skimpily',\r\n 'skincare',\r\n 'skinhead',\r\n 'skinless',\r\n 'skinning',\r\n 'skinny',\r\n 'skintight',\r\n 'skipper',\r\n 'skipping',\r\n 'skirmish',\r\n 'skirt',\r\n 'skittle',\r\n 'skydiver',\r\n 'skylight',\r\n 'skyline',\r\n 'skype',\r\n 'skyrocket',\r\n 'skyward',\r\n 'slab',\r\n 'slacked',\r\n 'slacker',\r\n 'slacking',\r\n 'slackness',\r\n 'slacks',\r\n 'slain',\r\n 'slam',\r\n 'slander',\r\n 'slang',\r\n 'slapping',\r\n 'slapstick',\r\n 'slashed',\r\n 'slashing',\r\n 'slate',\r\n 'slather',\r\n 'slaw',\r\n 'sled',\r\n 'sleek',\r\n 'sleep',\r\n 'sleet',\r\n 'sleeve',\r\n 'slept',\r\n 'sliceable',\r\n 'sliced',\r\n 'slicer',\r\n 'slicing',\r\n 'slick',\r\n 'slider',\r\n 'slideshow',\r\n 'sliding',\r\n 'slighted',\r\n 'slighting',\r\n 'slightly',\r\n 'slimness',\r\n 'slimy',\r\n 'slinging',\r\n 'slingshot',\r\n 'slinky',\r\n 'slip',\r\n 'slit',\r\n 'sliver',\r\n 'slobbery',\r\n 'slogan',\r\n 'sloped',\r\n 'sloping',\r\n 'sloppily',\r\n 'sloppy',\r\n 'slot',\r\n 'slouching',\r\n 'slouchy',\r\n 'sludge',\r\n 'slug',\r\n 'slum',\r\n 'slurp',\r\n 'slush',\r\n 'sly',\r\n 'small',\r\n 'smartly',\r\n 'smartness',\r\n 'smasher',\r\n 'smashing',\r\n 'smashup',\r\n 'smell',\r\n 'smelting',\r\n 'smile',\r\n 'smilingly',\r\n 'smirk',\r\n 'smite',\r\n 'smith',\r\n 'smitten',\r\n 'smock',\r\n 'smog',\r\n 'smoked',\r\n 'smokeless',\r\n 'smokiness',\r\n 'smoking',\r\n 'smoky',\r\n 'smolder',\r\n 'smooth',\r\n 'smother',\r\n 'smudge',\r\n 'smudgy',\r\n 'smuggler',\r\n 'smuggling',\r\n 'smugly',\r\n 'smugness',\r\n 'snack',\r\n 'snagged',\r\n 'snaking',\r\n 'snap',\r\n 'snare',\r\n 'snarl',\r\n 'snazzy',\r\n 'sneak',\r\n 'sneer',\r\n 'sneeze',\r\n 'sneezing',\r\n 'snide',\r\n 'sniff',\r\n 'snippet',\r\n 'snipping',\r\n 'snitch',\r\n 'snooper',\r\n 'snooze',\r\n 'snore',\r\n 'snoring',\r\n 'snorkel',\r\n 'snort',\r\n 'snout',\r\n 'snowbird',\r\n 'snowboard',\r\n 'snowbound',\r\n 'snowcap',\r\n 'snowdrift',\r\n 'snowdrop',\r\n 'snowfall',\r\n 'snowfield',\r\n 'snowflake',\r\n 'snowiness',\r\n 'snowless',\r\n 'snowman',\r\n 'snowplow',\r\n 'snowshoe',\r\n 'snowstorm',\r\n 'snowsuit',\r\n 'snowy',\r\n 'snub',\r\n 'snuff',\r\n 'snuggle',\r\n 'snugly',\r\n 'snugness',\r\n 'speak',\r\n 'spearfish',\r\n 'spearhead',\r\n 'spearman',\r\n 'spearmint',\r\n 'species',\r\n 'specimen',\r\n 'specked',\r\n 'speckled',\r\n 'specks',\r\n 'spectacle',\r\n 'spectator',\r\n 'spectrum',\r\n 'speculate',\r\n 'speech',\r\n 'speed',\r\n 'spellbind',\r\n 'speller',\r\n 'spelling',\r\n 'spendable',\r\n 'spender',\r\n 'spending',\r\n 'spent',\r\n 'spew',\r\n 'sphere',\r\n 'spherical',\r\n 'sphinx',\r\n 'spider',\r\n 'spied',\r\n 'spiffy',\r\n 'spill',\r\n 'spilt',\r\n 'spinach',\r\n 'spinal',\r\n 'spindle',\r\n 'spinner',\r\n 'spinning',\r\n 'spinout',\r\n 'spinster',\r\n 'spiny',\r\n 'spiral',\r\n 'spirited',\r\n 'spiritism',\r\n 'spirits',\r\n 'spiritual',\r\n 'splashed',\r\n 'splashing',\r\n 'splashy',\r\n 'splatter',\r\n 'spleen',\r\n 'splendid',\r\n 'splendor',\r\n 'splice',\r\n 'splicing',\r\n 'splinter',\r\n 'splotchy',\r\n 'splurge',\r\n 'spoilage',\r\n 'spoiled',\r\n 'spoiler',\r\n 'spoiling',\r\n 'spoils',\r\n 'spoken',\r\n 'spokesman',\r\n 'sponge',\r\n 'spongy',\r\n 'sponsor',\r\n 'spoof',\r\n 'spookily',\r\n 'spooky',\r\n 'spool',\r\n 'spoon',\r\n 'spore',\r\n 'sporting',\r\n 'sports',\r\n 'sporty',\r\n 'spotless',\r\n 'spotlight',\r\n 'spotted',\r\n 'spotter',\r\n 'spotting',\r\n 'spotty',\r\n 'spousal',\r\n 'spouse',\r\n 'spout',\r\n 'sprain',\r\n 'sprang',\r\n 'sprawl',\r\n 'spray',\r\n 'spree',\r\n 'sprig',\r\n 'spring',\r\n 'sprinkled',\r\n 'sprinkler',\r\n 'sprint',\r\n 'sprite',\r\n 'sprout',\r\n 'spruce',\r\n 'sprung',\r\n 'spry',\r\n 'spud',\r\n 'spur',\r\n 'sputter',\r\n 'spyglass',\r\n 'squabble',\r\n 'squad',\r\n 'squall',\r\n 'squander',\r\n 'squash',\r\n 'squatted',\r\n 'squatter',\r\n 'squatting',\r\n 'squeak',\r\n 'squealer',\r\n 'squealing',\r\n 'squeamish',\r\n 'squeegee',\r\n 'squeeze',\r\n 'squeezing',\r\n 'squid',\r\n 'squiggle',\r\n 'squiggly',\r\n 'squint',\r\n 'squire',\r\n 'squirt',\r\n 'squishier',\r\n 'squishy',\r\n 'stability',\r\n 'stabilize',\r\n 'stable',\r\n 'stack',\r\n 'stadium',\r\n 'staff',\r\n 'stage',\r\n 'staging',\r\n 'stagnant',\r\n 'stagnate',\r\n 'stainable',\r\n 'stained',\r\n 'staining',\r\n 'stainless',\r\n 'stalemate',\r\n 'staleness',\r\n 'stalling',\r\n 'stallion',\r\n 'stamina',\r\n 'stammer',\r\n 'stamp',\r\n 'stand',\r\n 'stank',\r\n 'staple',\r\n 'stapling',\r\n 'starboard',\r\n 'starch',\r\n 'stardom',\r\n 'stardust',\r\n 'starfish',\r\n 'stargazer',\r\n 'staring',\r\n 'stark',\r\n 'starless',\r\n 'starlet',\r\n 'starlight',\r\n 'starlit',\r\n 'starring',\r\n 'starry',\r\n 'starship',\r\n 'starter',\r\n 'starting',\r\n 'startle',\r\n 'startling',\r\n 'startup',\r\n 'starved',\r\n 'starving',\r\n 'stash',\r\n 'state',\r\n 'static',\r\n 'statistic',\r\n 'statue',\r\n 'stature',\r\n 'status',\r\n 'statute',\r\n 'statutory',\r\n 'staunch',\r\n 'stays',\r\n 'steadfast',\r\n 'steadier',\r\n 'steadily',\r\n 'steadying',\r\n 'steam',\r\n 'steed',\r\n 'steep',\r\n 'steerable',\r\n 'steering',\r\n 'steersman',\r\n 'stegosaur',\r\n 'stellar',\r\n 'stem',\r\n 'stench',\r\n 'stencil',\r\n 'step',\r\n 'stereo',\r\n 'sterile',\r\n 'sterility',\r\n 'sterilize',\r\n 'sterling',\r\n 'sternness',\r\n 'sternum',\r\n 'stew',\r\n 'stick',\r\n 'stiffen',\r\n 'stiffly',\r\n 'stiffness',\r\n 'stifle',\r\n 'stifling',\r\n 'stillness',\r\n 'stilt',\r\n 'stimulant',\r\n 'stimulate',\r\n 'stimuli',\r\n 'stimulus',\r\n 'stinger',\r\n 'stingily',\r\n 'stinging',\r\n 'stingray',\r\n 'stingy',\r\n 'stinking',\r\n 'stinky',\r\n 'stipend',\r\n 'stipulate',\r\n 'stir',\r\n 'stitch',\r\n 'stock',\r\n 'stoic',\r\n 'stoke',\r\n 'stole',\r\n 'stomp',\r\n 'stonewall',\r\n 'stoneware',\r\n 'stonework',\r\n 'stoning',\r\n 'stony',\r\n 'stood',\r\n 'stooge',\r\n 'stool',\r\n 'stoop',\r\n 'stoplight',\r\n 'stoppable',\r\n 'stoppage',\r\n 'stopped',\r\n 'stopper',\r\n 'stopping',\r\n 'stopwatch',\r\n 'storable',\r\n 'storage',\r\n 'storeroom',\r\n 'storewide',\r\n 'storm',\r\n 'stout',\r\n 'stove',\r\n 'stowaway',\r\n 'stowing',\r\n 'straddle',\r\n 'straggler',\r\n 'strained',\r\n 'strainer',\r\n 'straining',\r\n 'strangely',\r\n 'stranger',\r\n 'strangle',\r\n 'strategic',\r\n 'strategy',\r\n 'stratus',\r\n 'straw',\r\n 'stray',\r\n 'streak',\r\n 'stream',\r\n 'street',\r\n 'strength',\r\n 'strenuous',\r\n 'strep',\r\n 'stress',\r\n 'stretch',\r\n 'strewn',\r\n 'stricken',\r\n 'strict',\r\n 'stride',\r\n 'strife',\r\n 'strike',\r\n 'striking',\r\n 'strive',\r\n 'striving',\r\n 'strobe',\r\n 'strode',\r\n 'stroller',\r\n 'strongbox',\r\n 'strongly',\r\n 'strongman',\r\n 'struck',\r\n 'structure',\r\n 'strudel',\r\n 'struggle',\r\n 'strum',\r\n 'strung',\r\n 'strut',\r\n 'stubbed',\r\n 'stubble',\r\n 'stubbly',\r\n 'stubborn',\r\n 'stucco',\r\n 'stuck',\r\n 'student',\r\n 'studied',\r\n 'studio',\r\n 'study',\r\n 'stuffed',\r\n 'stuffing',\r\n 'stuffy',\r\n 'stumble',\r\n 'stumbling',\r\n 'stump',\r\n 'stung',\r\n 'stunned',\r\n 'stunner',\r\n 'stunning',\r\n 'stunt',\r\n 'stupor',\r\n 'sturdily',\r\n 'sturdy',\r\n 'styling',\r\n 'stylishly',\r\n 'stylist',\r\n 'stylized',\r\n 'stylus',\r\n 'suave',\r\n 'subarctic',\r\n 'subatomic',\r\n 'subdivide',\r\n 'subdued',\r\n 'subduing',\r\n 'subfloor',\r\n 'subgroup',\r\n 'subheader',\r\n 'subject',\r\n 'sublease',\r\n 'sublet',\r\n 'sublevel',\r\n 'sublime',\r\n 'submarine',\r\n 'submerge',\r\n 'submersed',\r\n 'submitter',\r\n 'subpanel',\r\n 'subpar',\r\n 'subplot',\r\n 'subprime',\r\n 'subscribe',\r\n 'subscript',\r\n 'subsector',\r\n 'subside',\r\n 'subsiding',\r\n 'subsidize',\r\n 'subsidy',\r\n 'subsoil',\r\n 'subsonic',\r\n 'substance',\r\n 'subsystem',\r\n 'subtext',\r\n 'subtitle',\r\n 'subtly',\r\n 'subtotal',\r\n 'subtract',\r\n 'subtype',\r\n 'suburb',\r\n 'subway',\r\n 'subwoofer',\r\n 'subzero',\r\n 'succulent',\r\n 'such',\r\n 'suction',\r\n 'sudden',\r\n 'sudoku',\r\n 'suds',\r\n 'sufferer',\r\n 'suffering',\r\n 'suffice',\r\n 'suffix',\r\n 'suffocate',\r\n 'suffrage',\r\n 'sugar',\r\n 'suggest',\r\n 'suing',\r\n 'suitable',\r\n 'suitably',\r\n 'suitcase',\r\n 'suitor',\r\n 'sulfate',\r\n 'sulfide',\r\n 'sulfite',\r\n 'sulfur',\r\n 'sulk',\r\n 'sullen',\r\n 'sulphate',\r\n 'sulphuric',\r\n 'sultry',\r\n 'superbowl',\r\n 'superglue',\r\n 'superhero',\r\n 'superior',\r\n 'superjet',\r\n 'superman',\r\n 'supermom',\r\n 'supernova',\r\n 'supervise',\r\n 'supper',\r\n 'supplier',\r\n 'supply',\r\n 'support',\r\n 'supremacy',\r\n 'supreme',\r\n 'surcharge',\r\n 'surely',\r\n 'sureness',\r\n 'surface',\r\n 'surfacing',\r\n 'surfboard',\r\n 'surfer',\r\n 'surgery',\r\n 'surgical',\r\n 'surging',\r\n 'surname',\r\n 'surpass',\r\n 'surplus',\r\n 'surprise',\r\n 'surreal',\r\n 'surrender',\r\n 'surrogate',\r\n 'surround',\r\n 'survey',\r\n 'survival',\r\n 'survive',\r\n 'surviving',\r\n 'survivor',\r\n 'sushi',\r\n 'suspect',\r\n 'suspend',\r\n 'suspense',\r\n 'sustained',\r\n 'sustainer',\r\n 'swab',\r\n 'swaddling',\r\n 'swagger',\r\n 'swampland',\r\n 'swan',\r\n 'swapping',\r\n 'swarm',\r\n 'sway',\r\n 'swear',\r\n 'sweat',\r\n 'sweep',\r\n 'swell',\r\n 'swept',\r\n 'swerve',\r\n 'swifter',\r\n 'swiftly',\r\n 'swiftness',\r\n 'swimmable',\r\n 'swimmer',\r\n 'swimming',\r\n 'swimsuit',\r\n 'swimwear',\r\n 'swinger',\r\n 'swinging',\r\n 'swipe',\r\n 'swirl',\r\n 'switch',\r\n 'swivel',\r\n 'swizzle',\r\n 'swooned',\r\n 'swoop',\r\n 'swoosh',\r\n 'swore',\r\n 'sworn',\r\n 'swung',\r\n 'sycamore',\r\n 'sympathy',\r\n 'symphonic',\r\n 'symphony',\r\n 'symptom',\r\n 'synapse',\r\n 'syndrome',\r\n 'synergy',\r\n 'synopses',\r\n 'synopsis',\r\n 'synthesis',\r\n 'synthetic',\r\n 'syrup',\r\n 'system',\r\n 't-shirt',\r\n 'tabasco',\r\n 'tabby',\r\n 'tableful',\r\n 'tables',\r\n 'tablet',\r\n 'tableware',\r\n 'tabloid',\r\n 'tackiness',\r\n 'tacking',\r\n 'tackle',\r\n 'tackling',\r\n 'tacky',\r\n 'taco',\r\n 'tactful',\r\n 'tactical',\r\n 'tactics',\r\n 'tactile',\r\n 'tactless',\r\n 'tadpole',\r\n 'taekwondo',\r\n 'tag',\r\n 'tainted',\r\n 'take',\r\n 'taking',\r\n 'talcum',\r\n 'talisman',\r\n 'tall',\r\n 'talon',\r\n 'tamale',\r\n 'tameness',\r\n 'tamer',\r\n 'tamper',\r\n 'tank',\r\n 'tanned',\r\n 'tannery',\r\n 'tanning',\r\n 'tantrum',\r\n 'tapeless',\r\n 'tapered',\r\n 'tapering',\r\n 'tapestry',\r\n 'tapioca',\r\n 'tapping',\r\n 'taps',\r\n 'tarantula',\r\n 'target',\r\n 'tarmac',\r\n 'tarnish',\r\n 'tarot',\r\n 'tartar',\r\n 'tartly',\r\n 'tartness',\r\n 'task',\r\n 'tassel',\r\n 'taste',\r\n 'tastiness',\r\n 'tasting',\r\n 'tasty',\r\n 'tattered',\r\n 'tattle',\r\n 'tattling',\r\n 'tattoo',\r\n 'taunt',\r\n 'tavern',\r\n 'thank',\r\n 'that',\r\n 'thaw',\r\n 'theater',\r\n 'theatrics',\r\n 'thee',\r\n 'theft',\r\n 'theme',\r\n 'theology',\r\n 'theorize',\r\n 'thermal',\r\n 'thermos',\r\n 'thesaurus',\r\n 'these',\r\n 'thesis',\r\n 'thespian',\r\n 'thicken',\r\n 'thicket',\r\n 'thickness',\r\n 'thieving',\r\n 'thievish',\r\n 'thigh',\r\n 'thimble',\r\n 'thing',\r\n 'think',\r\n 'thinly',\r\n 'thinner',\r\n 'thinness',\r\n 'thinning',\r\n 'thirstily',\r\n 'thirsting',\r\n 'thirsty',\r\n 'thirteen',\r\n 'thirty',\r\n 'thong',\r\n 'thorn',\r\n 'those',\r\n 'thousand',\r\n 'thrash',\r\n 'thread',\r\n 'threaten',\r\n 'threefold',\r\n 'thrift',\r\n 'thrill',\r\n 'thrive',\r\n 'thriving',\r\n 'throat',\r\n 'throbbing',\r\n 'throng',\r\n 'throttle',\r\n 'throwaway',\r\n 'throwback',\r\n 'thrower',\r\n 'throwing',\r\n 'thud',\r\n 'thumb',\r\n 'thumping',\r\n 'thursday',\r\n 'thus',\r\n 'thwarting',\r\n 'thyself',\r\n 'tiara',\r\n 'tibia',\r\n 'tidal',\r\n 'tidbit',\r\n 'tidiness',\r\n 'tidings',\r\n 'tidy',\r\n 'tiger',\r\n 'tighten',\r\n 'tightly',\r\n 'tightness',\r\n 'tightrope',\r\n 'tightwad',\r\n 'tigress',\r\n 'tile',\r\n 'tiling',\r\n 'till',\r\n 'tilt',\r\n 'timid',\r\n 'timing',\r\n 'timothy',\r\n 'tinderbox',\r\n 'tinfoil',\r\n 'tingle',\r\n 'tingling',\r\n 'tingly',\r\n 'tinker',\r\n 'tinkling',\r\n 'tinsel',\r\n 'tinsmith',\r\n 'tint',\r\n 'tinwork',\r\n 'tiny',\r\n 'tipoff',\r\n 'tipped',\r\n 'tipper',\r\n 'tipping',\r\n 'tiptoeing',\r\n 'tiptop',\r\n 'tiring',\r\n 'tissue',\r\n 'trace',\r\n 'tracing',\r\n 'track',\r\n 'traction',\r\n 'tractor',\r\n 'trade',\r\n 'trading',\r\n 'tradition',\r\n 'traffic',\r\n 'tragedy',\r\n 'trailing',\r\n 'trailside',\r\n 'train',\r\n 'traitor',\r\n 'trance',\r\n 'tranquil',\r\n 'transfer',\r\n 'transform',\r\n 'translate',\r\n 'transpire',\r\n 'transport',\r\n 'transpose',\r\n 'trapdoor',\r\n 'trapeze',\r\n 'trapezoid',\r\n 'trapped',\r\n 'trapper',\r\n 'trapping',\r\n 'traps',\r\n 'trash',\r\n 'travel',\r\n 'traverse',\r\n 'travesty',\r\n 'tray',\r\n 'treachery',\r\n 'treading',\r\n 'treadmill',\r\n 'treason',\r\n 'treat',\r\n 'treble',\r\n 'tree',\r\n 'trekker',\r\n 'tremble',\r\n 'trembling',\r\n 'tremor',\r\n 'trench',\r\n 'trend',\r\n 'trespass',\r\n 'triage',\r\n 'trial',\r\n 'triangle',\r\n 'tribesman',\r\n 'tribunal',\r\n 'tribune',\r\n 'tributary',\r\n 'tribute',\r\n 'triceps',\r\n 'trickery',\r\n 'trickily',\r\n 'tricking',\r\n 'trickle',\r\n 'trickster',\r\n 'tricky',\r\n 'tricolor',\r\n 'tricycle',\r\n 'trident',\r\n 'tried',\r\n 'trifle',\r\n 'trifocals',\r\n 'trillion',\r\n 'trilogy',\r\n 'trimester',\r\n 'trimmer',\r\n 'trimming',\r\n 'trimness',\r\n 'trinity',\r\n 'trio',\r\n 'tripod',\r\n 'tripping',\r\n 'triumph',\r\n 'trivial',\r\n 'trodden',\r\n 'trolling',\r\n 'trombone',\r\n 'trophy',\r\n 'tropical',\r\n 'tropics',\r\n 'trouble',\r\n 'troubling',\r\n 'trough',\r\n 'trousers',\r\n 'trout',\r\n 'trowel',\r\n 'truce',\r\n 'truck',\r\n 'truffle',\r\n 'trump',\r\n 'trunks',\r\n 'trustable',\r\n 'trustee',\r\n 'trustful',\r\n 'trusting',\r\n 'trustless',\r\n 'truth',\r\n 'try',\r\n 'tubby',\r\n 'tubeless',\r\n 'tubular',\r\n 'tucking',\r\n 'tuesday',\r\n 'tug',\r\n 'tuition',\r\n 'tulip',\r\n 'tumble',\r\n 'tumbling',\r\n 'tummy',\r\n 'turban',\r\n 'turbine',\r\n 'turbofan',\r\n 'turbojet',\r\n 'turbulent',\r\n 'turf',\r\n 'turkey',\r\n 'turmoil',\r\n 'turret',\r\n 'turtle',\r\n 'tusk',\r\n 'tutor',\r\n 'tutu',\r\n 'tux',\r\n 'tweak',\r\n 'tweed',\r\n 'tweet',\r\n 'tweezers',\r\n 'twelve',\r\n 'twentieth',\r\n 'twenty',\r\n 'twerp',\r\n 'twice',\r\n 'twiddle',\r\n 'twiddling',\r\n 'twig',\r\n 'twilight',\r\n 'twine',\r\n 'twins',\r\n 'twirl',\r\n 'twistable',\r\n 'twisted',\r\n 'twister',\r\n 'twisting',\r\n 'twisty',\r\n 'twitch',\r\n 'twitter',\r\n 'tycoon',\r\n 'tying',\r\n 'tyke',\r\n 'udder',\r\n 'ultimate',\r\n 'ultimatum',\r\n 'ultra',\r\n 'umbilical',\r\n 'umbrella',\r\n 'umpire',\r\n 'unabashed',\r\n 'unable',\r\n 'unadorned',\r\n 'unadvised',\r\n 'unafraid',\r\n 'unaired',\r\n 'unaligned',\r\n 'unaltered',\r\n 'unarmored',\r\n 'unashamed',\r\n 'unaudited',\r\n 'unawake',\r\n 'unaware',\r\n 'unbaked',\r\n 'unbalance',\r\n 'unbeaten',\r\n 'unbend',\r\n 'unbent',\r\n 'unbiased',\r\n 'unbitten',\r\n 'unblended',\r\n 'unblessed',\r\n 'unblock',\r\n 'unbolted',\r\n 'unbounded',\r\n 'unboxed',\r\n 'unbraided',\r\n 'unbridle',\r\n 'unbroken',\r\n 'unbuckled',\r\n 'unbundle',\r\n 'unburned',\r\n 'unbutton',\r\n 'uncanny',\r\n 'uncapped',\r\n 'uncaring',\r\n 'uncertain',\r\n 'unchain',\r\n 'unchanged',\r\n 'uncharted',\r\n 'uncheck',\r\n 'uncivil',\r\n 'unclad',\r\n 'unclaimed',\r\n 'unclamped',\r\n 'unclasp',\r\n 'uncle',\r\n 'unclip',\r\n 'uncloak',\r\n 'unclog',\r\n 'unclothed',\r\n 'uncoated',\r\n 'uncoiled',\r\n 'uncolored',\r\n 'uncombed',\r\n 'uncommon',\r\n 'uncooked',\r\n 'uncork',\r\n 'uncorrupt',\r\n 'uncounted',\r\n 'uncouple',\r\n 'uncouth',\r\n 'uncover',\r\n 'uncross',\r\n 'uncrown',\r\n 'uncrushed',\r\n 'uncured',\r\n 'uncurious',\r\n 'uncurled',\r\n 'uncut',\r\n 'undamaged',\r\n 'undated',\r\n 'undaunted',\r\n 'undead',\r\n 'undecided',\r\n 'undefined',\r\n 'underage',\r\n 'underarm',\r\n 'undercoat',\r\n 'undercook',\r\n 'undercut',\r\n 'underdog',\r\n 'underdone',\r\n 'underfed',\r\n 'underfeed',\r\n 'underfoot',\r\n 'undergo',\r\n 'undergrad',\r\n 'underhand',\r\n 'underline',\r\n 'underling',\r\n 'undermine',\r\n 'undermost',\r\n 'underpaid',\r\n 'underpass',\r\n 'underpay',\r\n 'underrate',\r\n 'undertake',\r\n 'undertone',\r\n 'undertook',\r\n 'undertow',\r\n 'underuse',\r\n 'underwear',\r\n 'underwent',\r\n 'underwire',\r\n 'undesired',\r\n 'undiluted',\r\n 'undivided',\r\n 'undocked',\r\n 'undoing',\r\n 'undone',\r\n 'undrafted',\r\n 'undress',\r\n 'undrilled',\r\n 'undusted',\r\n 'undying',\r\n 'unearned',\r\n 'unearth',\r\n 'unease',\r\n 'uneasily',\r\n 'uneasy',\r\n 'uneatable',\r\n 'uneaten',\r\n 'unedited',\r\n 'unelected',\r\n 'unending',\r\n 'unengaged',\r\n 'unenvied',\r\n 'unequal',\r\n 'unethical',\r\n 'uneven',\r\n 'unexpired',\r\n 'unexposed',\r\n 'unfailing',\r\n 'unfair',\r\n 'unfasten',\r\n 'unfazed',\r\n 'unfeeling',\r\n 'unfiled',\r\n 'unfilled',\r\n 'unfitted',\r\n 'unfitting',\r\n 'unfixable',\r\n 'unfixed',\r\n 'unflawed',\r\n 'unfocused',\r\n 'unfold',\r\n 'unfounded',\r\n 'unframed',\r\n 'unfreeze',\r\n 'unfrosted',\r\n 'unfrozen',\r\n 'unfunded',\r\n 'unglazed',\r\n 'ungloved',\r\n 'unglue',\r\n 'ungodly',\r\n 'ungraded',\r\n 'ungreased',\r\n 'unguarded',\r\n 'unguided',\r\n 'unhappily',\r\n 'unhappy',\r\n 'unharmed',\r\n 'unhealthy',\r\n 'unheard',\r\n 'unhearing',\r\n 'unheated',\r\n 'unhelpful',\r\n 'unhidden',\r\n 'unhinge',\r\n 'unhitched',\r\n 'unholy',\r\n 'unhook',\r\n 'unicorn',\r\n 'unicycle',\r\n 'unified',\r\n 'unifier',\r\n 'uniformed',\r\n 'uniformly',\r\n 'unify',\r\n 'unimpeded',\r\n 'uninjured',\r\n 'uninstall',\r\n 'uninsured',\r\n 'uninvited',\r\n 'union',\r\n 'uniquely',\r\n 'unisexual',\r\n 'unison',\r\n 'unissued',\r\n 'unit',\r\n 'universal',\r\n 'universe',\r\n 'unjustly',\r\n 'unkempt',\r\n 'unkind',\r\n 'unknotted',\r\n 'unknowing',\r\n 'unknown',\r\n 'unlaced',\r\n 'unlatch',\r\n 'unlawful',\r\n 'unleaded',\r\n 'unlearned',\r\n 'unleash',\r\n 'unless',\r\n 'unleveled',\r\n 'unlighted',\r\n 'unlikable',\r\n 'unlimited',\r\n 'unlined',\r\n 'unlinked',\r\n 'unlisted',\r\n 'unlit',\r\n 'unlivable',\r\n 'unloaded',\r\n 'unloader',\r\n 'unlocked',\r\n 'unlocking',\r\n 'unlovable',\r\n 'unloved',\r\n 'unlovely',\r\n 'unloving',\r\n 'unluckily',\r\n 'unlucky',\r\n 'unmade',\r\n 'unmanaged',\r\n 'unmanned',\r\n 'unmapped',\r\n 'unmarked',\r\n 'unmasked',\r\n 'unmasking',\r\n 'unmatched',\r\n 'unmindful',\r\n 'unmixable',\r\n 'unmixed',\r\n 'unmolded',\r\n 'unmoral',\r\n 'unmovable',\r\n 'unmoved',\r\n 'unmoving',\r\n 'unnamable',\r\n 'unnamed',\r\n 'unnatural',\r\n 'unneeded',\r\n 'unnerve',\r\n 'unnerving',\r\n 'unnoticed',\r\n 'unopened',\r\n 'unopposed',\r\n 'unpack',\r\n 'unpadded',\r\n 'unpaid',\r\n 'unpainted',\r\n 'unpaired',\r\n 'unpaved',\r\n 'unpeeled',\r\n 'unpicked',\r\n 'unpiloted',\r\n 'unpinned',\r\n 'unplanned',\r\n 'unplanted',\r\n 'unpleased',\r\n 'unpledged',\r\n 'unplowed',\r\n 'unplug',\r\n 'unpopular',\r\n 'unproven',\r\n 'unquote',\r\n 'unranked',\r\n 'unrated',\r\n 'unraveled',\r\n 'unreached',\r\n 'unread',\r\n 'unreal',\r\n 'unreeling',\r\n 'unrefined',\r\n 'unrelated',\r\n 'unrented',\r\n 'unrest',\r\n 'unretired',\r\n 'unrevised',\r\n 'unrigged',\r\n 'unripe',\r\n 'unrivaled',\r\n 'unroasted',\r\n 'unrobed',\r\n 'unroll',\r\n 'unruffled',\r\n 'unruly',\r\n 'unrushed',\r\n 'unsaddle',\r\n 'unsafe',\r\n 'unsaid',\r\n 'unsalted',\r\n 'unsaved',\r\n 'unsavory',\r\n 'unscathed',\r\n 'unscented',\r\n 'unscrew',\r\n 'unsealed',\r\n 'unseated',\r\n 'unsecured',\r\n 'unseeing',\r\n 'unseemly',\r\n 'unseen',\r\n 'unselect',\r\n 'unselfish',\r\n 'unsent',\r\n 'unsettled',\r\n 'unshackle',\r\n 'unshaken',\r\n 'unshaved',\r\n 'unshaven',\r\n 'unsheathe',\r\n 'unshipped',\r\n 'unsightly',\r\n 'unsigned',\r\n 'unskilled',\r\n 'unsliced',\r\n 'unsmooth',\r\n 'unsnap',\r\n 'unsocial',\r\n 'unsoiled',\r\n 'unsold',\r\n 'unsolved',\r\n 'unsorted',\r\n 'unspoiled',\r\n 'unspoken',\r\n 'unstable',\r\n 'unstaffed',\r\n 'unstamped',\r\n 'unsteady',\r\n 'unsterile',\r\n 'unstirred',\r\n 'unstitch',\r\n 'unstopped',\r\n 'unstuck',\r\n 'unstuffed',\r\n 'unstylish',\r\n 'unsubtle',\r\n 'unsubtly',\r\n 'unsuited',\r\n 'unsure',\r\n 'unsworn',\r\n 'untagged',\r\n 'untainted',\r\n 'untaken',\r\n 'untamed',\r\n 'untangled',\r\n 'untapped',\r\n 'untaxed',\r\n 'unthawed',\r\n 'unthread',\r\n 'untidy',\r\n 'untie',\r\n 'until',\r\n 'untimed',\r\n 'untimely',\r\n 'untitled',\r\n 'untoasted',\r\n 'untold',\r\n 'untouched',\r\n 'untracked',\r\n 'untrained',\r\n 'untreated',\r\n 'untried',\r\n 'untrimmed',\r\n 'untrue',\r\n 'untruth',\r\n 'unturned',\r\n 'untwist',\r\n 'untying',\r\n 'unusable',\r\n 'unused',\r\n 'unusual',\r\n 'unvalued',\r\n 'unvaried',\r\n 'unvarying',\r\n 'unveiled',\r\n 'unveiling',\r\n 'unvented',\r\n 'unviable',\r\n 'unvisited',\r\n 'unvocal',\r\n 'unwanted',\r\n 'unwarlike',\r\n 'unwary',\r\n 'unwashed',\r\n 'unwatched',\r\n 'unweave',\r\n 'unwed',\r\n 'unwelcome',\r\n 'unwell',\r\n 'unwieldy',\r\n 'unwilling',\r\n 'unwind',\r\n 'unwired',\r\n 'unwitting',\r\n 'unwomanly',\r\n 'unworldly',\r\n 'unworn',\r\n 'unworried',\r\n 'unworthy',\r\n 'unwound',\r\n 'unwoven',\r\n 'unwrapped',\r\n 'unwritten',\r\n 'unzip',\r\n 'upbeat',\r\n 'upchuck',\r\n 'upcoming',\r\n 'upcountry',\r\n 'update',\r\n 'upfront',\r\n 'upgrade',\r\n 'upheaval',\r\n 'upheld',\r\n 'uphill',\r\n 'uphold',\r\n 'uplifted',\r\n 'uplifting',\r\n 'upload',\r\n 'upon',\r\n 'upper',\r\n 'upright',\r\n 'uprising',\r\n 'upriver',\r\n 'uproar',\r\n 'uproot',\r\n 'upscale',\r\n 'upside',\r\n 'upstage',\r\n 'upstairs',\r\n 'upstart',\r\n 'upstate',\r\n 'upstream',\r\n 'upstroke',\r\n 'upswing',\r\n 'uptake',\r\n 'uptight',\r\n 'uptown',\r\n 'upturned',\r\n 'upward',\r\n 'upwind',\r\n 'uranium',\r\n 'urban',\r\n 'urchin',\r\n 'urethane',\r\n 'urgency',\r\n 'urgent',\r\n 'urging',\r\n 'urologist',\r\n 'urology',\r\n 'usable',\r\n 'usage',\r\n 'useable',\r\n 'used',\r\n 'uselessly',\r\n 'user',\r\n 'usher',\r\n 'usual',\r\n 'utensil',\r\n 'utility',\r\n 'utilize',\r\n 'utmost',\r\n 'utopia',\r\n 'utter',\r\n 'vacancy',\r\n 'vacant',\r\n 'vacate',\r\n 'vacation',\r\n 'vagabond',\r\n 'vagrancy',\r\n 'vagrantly',\r\n 'vaguely',\r\n 'vagueness',\r\n 'valiant',\r\n 'valid',\r\n 'valium',\r\n 'valley',\r\n 'valuables',\r\n 'value',\r\n 'vanilla',\r\n 'vanish',\r\n 'vanity',\r\n 'vanquish',\r\n 'vantage',\r\n 'vaporizer',\r\n 'variable',\r\n 'variably',\r\n 'varied',\r\n 'variety',\r\n 'various',\r\n 'varmint',\r\n 'varnish',\r\n 'varsity',\r\n 'varying',\r\n 'vascular',\r\n 'vaseline',\r\n 'vastly',\r\n 'vastness',\r\n 'veal',\r\n 'vegan',\r\n 'veggie',\r\n 'vehicular',\r\n 'velcro',\r\n 'velocity',\r\n 'velvet',\r\n 'vendetta',\r\n 'vending',\r\n 'vendor',\r\n 'veneering',\r\n 'vengeful',\r\n 'venomous',\r\n 'ventricle',\r\n 'venture',\r\n 'venue',\r\n 'venus',\r\n 'verbalize',\r\n 'verbally',\r\n 'verbose',\r\n 'verdict',\r\n 'verify',\r\n 'verse',\r\n 'version',\r\n 'versus',\r\n 'vertebrae',\r\n 'vertical',\r\n 'vertigo',\r\n 'very',\r\n 'vessel',\r\n 'vest',\r\n 'veteran',\r\n 'veto',\r\n 'vexingly',\r\n 'viability',\r\n 'viable',\r\n 'vibes',\r\n 'vice',\r\n 'vicinity',\r\n 'victory',\r\n 'video',\r\n 'viewable',\r\n 'viewer',\r\n 'viewing',\r\n 'viewless',\r\n 'viewpoint',\r\n 'vigorous',\r\n 'village',\r\n 'villain',\r\n 'vindicate',\r\n 'vineyard',\r\n 'vintage',\r\n 'violate',\r\n 'violation',\r\n 'violator',\r\n 'violet',\r\n 'violin',\r\n 'viper',\r\n 'viral',\r\n 'virtual',\r\n 'virtuous',\r\n 'virus',\r\n 'visa',\r\n 'viscosity',\r\n 'viscous',\r\n 'viselike',\r\n 'visible',\r\n 'visibly',\r\n 'vision',\r\n 'visiting',\r\n 'visitor',\r\n 'visor',\r\n 'vista',\r\n 'vitality',\r\n 'vitalize',\r\n 'vitally',\r\n 'vitamins',\r\n 'vivacious',\r\n 'vividly',\r\n 'vividness',\r\n 'vixen',\r\n 'vocalist',\r\n 'vocalize',\r\n 'vocally',\r\n 'vocation',\r\n 'voice',\r\n 'voicing',\r\n 'void',\r\n 'volatile',\r\n 'volley',\r\n 'voltage',\r\n 'volumes',\r\n 'voter',\r\n 'voting',\r\n 'voucher',\r\n 'vowed',\r\n 'vowel',\r\n 'voyage',\r\n 'wackiness',\r\n 'wad',\r\n 'wafer',\r\n 'waffle',\r\n 'waged',\r\n 'wager',\r\n 'wages',\r\n 'waggle',\r\n 'wagon',\r\n 'wake',\r\n 'waking',\r\n 'walk',\r\n 'walmart',\r\n 'walnut',\r\n 'walrus',\r\n 'waltz',\r\n 'wand',\r\n 'wannabe',\r\n 'wanted',\r\n 'wanting',\r\n 'wasabi',\r\n 'washable',\r\n 'washbasin',\r\n 'washboard',\r\n 'washbowl',\r\n 'washcloth',\r\n 'washday',\r\n 'washed',\r\n 'washer',\r\n 'washhouse',\r\n 'washing',\r\n 'washout',\r\n 'washroom',\r\n 'washstand',\r\n 'washtub',\r\n 'wasp',\r\n 'wasting',\r\n 'watch',\r\n 'water',\r\n 'waviness',\r\n 'waving',\r\n 'wavy',\r\n 'whacking',\r\n 'whacky',\r\n 'wham',\r\n 'wharf',\r\n 'wheat',\r\n 'whenever',\r\n 'whiff',\r\n 'whimsical',\r\n 'whinny',\r\n 'whiny',\r\n 'whisking',\r\n 'whoever',\r\n 'whole',\r\n 'whomever',\r\n 'whoopee',\r\n 'whooping',\r\n 'whoops',\r\n 'why',\r\n 'wick',\r\n 'widely',\r\n 'widen',\r\n 'widget',\r\n 'widow',\r\n 'width',\r\n 'wieldable',\r\n 'wielder',\r\n 'wife',\r\n 'wifi',\r\n 'wikipedia',\r\n 'wildcard',\r\n 'wildcat',\r\n 'wilder',\r\n 'wildfire',\r\n 'wildfowl',\r\n 'wildland',\r\n 'wildlife',\r\n 'wildly',\r\n 'wildness',\r\n 'willed',\r\n 'willfully',\r\n 'willing',\r\n 'willow',\r\n 'willpower',\r\n 'wilt',\r\n 'wimp',\r\n 'wince',\r\n 'wincing',\r\n 'wind',\r\n 'wing',\r\n 'winking',\r\n 'winner',\r\n 'winnings',\r\n 'winter',\r\n 'wipe',\r\n 'wired',\r\n 'wireless',\r\n 'wiring',\r\n 'wiry',\r\n 'wisdom',\r\n 'wise',\r\n 'wish',\r\n 'wisplike',\r\n 'wispy',\r\n 'wistful',\r\n 'wizard',\r\n 'wobble',\r\n 'wobbling',\r\n 'wobbly',\r\n 'wok',\r\n 'wolf',\r\n 'wolverine',\r\n 'womanhood',\r\n 'womankind',\r\n 'womanless',\r\n 'womanlike',\r\n 'womanly',\r\n 'womb',\r\n 'woof',\r\n 'wooing',\r\n 'wool',\r\n 'woozy',\r\n 'word',\r\n 'work',\r\n 'worried',\r\n 'worrier',\r\n 'worrisome',\r\n 'worry',\r\n 'worsening',\r\n 'worshiper',\r\n 'worst',\r\n 'wound',\r\n 'woven',\r\n 'wow',\r\n 'wrangle',\r\n 'wrath',\r\n 'wreath',\r\n 'wreckage',\r\n 'wrecker',\r\n 'wrecking',\r\n 'wrench',\r\n 'wriggle',\r\n 'wriggly',\r\n 'wrinkle',\r\n 'wrinkly',\r\n 'wrist',\r\n 'writing',\r\n 'written',\r\n 'wrongdoer',\r\n 'wronged',\r\n 'wrongful',\r\n 'wrongly',\r\n 'wrongness',\r\n 'wrought',\r\n 'xbox',\r\n 'xerox',\r\n 'yahoo',\r\n 'yam',\r\n 'yanking',\r\n 'yapping',\r\n 'yard',\r\n 'yarn',\r\n 'yeah',\r\n 'yearbook',\r\n 'yearling',\r\n 'yearly',\r\n 'yearning',\r\n 'yeast',\r\n 'yelling',\r\n 'yelp',\r\n 'yen',\r\n 'yesterday',\r\n 'yiddish',\r\n 'yield',\r\n 'yin',\r\n 'yippee',\r\n 'yo-yo',\r\n 'yodel',\r\n 'yoga',\r\n 'yogurt',\r\n 'yonder',\r\n 'yoyo',\r\n 'yummy',\r\n 'zap',\r\n 'zealous',\r\n 'zebra',\r\n 'zen',\r\n 'zeppelin',\r\n 'zero',\r\n 'zestfully',\r\n 'zesty',\r\n 'zigzagged',\r\n 'zipfile',\r\n 'zipping',\r\n 'zippy',\r\n 'zips',\r\n 'zit',\r\n 'zodiac',\r\n 'zombie',\r\n 'zone',\r\n 'zoning',\r\n 'zookeeper',\r\n 'zoologist',\r\n 'zoology',\r\n 'zoom',\r\n];\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { ConstantsService } from './constants.service';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from '../abstractions/environment.service';\nimport { NotificationsService } from '../abstractions/notifications.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class EnvironmentService implements EnvironmentServiceAbstraction {\n baseUrl: string;\n webVaultUrl: string;\n apiUrl: string;\n identityUrl: string;\n iconsUrl: string;\n notificationsUrl: string;\n\n constructor(private apiService: ApiService, private storageService: StorageService,\n private notificationsService: NotificationsService) { }\n\n getWebVaultUrl(): string {\n if (this.webVaultUrl != null) {\n return this.webVaultUrl;\n } else if (this.baseUrl) {\n return this.baseUrl;\n }\n return null;\n }\n\n async setUrlsFromStorage(): Promise {\n const urlsObj: any = await this.storageService.get(ConstantsService.environmentUrlsKey);\n const urls = urlsObj || {\n base: null,\n api: null,\n identity: null,\n icons: null,\n notifications: null,\n webVault: null,\n };\n\n const envUrls = new EnvironmentUrls();\n\n if (urls.base) {\n this.baseUrl = envUrls.base = urls.base;\n this.apiService.setUrls(envUrls);\n return;\n }\n\n this.webVaultUrl = urls.webVault;\n this.apiUrl = envUrls.api = urls.api;\n this.identityUrl = envUrls.identity = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n this.apiService.setUrls(envUrls);\n }\n\n async setUrls(urls: any): Promise {\n urls.base = this.formatUrl(urls.base);\n urls.webVault = this.formatUrl(urls.webVault);\n urls.api = this.formatUrl(urls.api);\n urls.identity = this.formatUrl(urls.identity);\n urls.icons = this.formatUrl(urls.icons);\n urls.notifications = this.formatUrl(urls.notifications);\n\n await this.storageService.save(ConstantsService.environmentUrlsKey, {\n base: urls.base,\n api: urls.api,\n identity: urls.identity,\n webVault: urls.webVault,\n icons: urls.icons,\n notifications: urls.notifications,\n });\n\n this.baseUrl = urls.base;\n this.webVaultUrl = urls.webVault;\n this.apiUrl = urls.api;\n this.identityUrl = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n\n const envUrls = new EnvironmentUrls();\n if (this.baseUrl) {\n envUrls.base = this.baseUrl;\n } else {\n envUrls.api = this.apiUrl;\n envUrls.identity = this.identityUrl;\n }\n\n this.apiService.setUrls(envUrls);\n if (this.notificationsService != null) {\n this.notificationsService.init(this);\n }\n return urls;\n }\n\n private formatUrl(url: string): string {\n if (url == null || url === '') {\n return null;\n }\n\n url = url.replace(/\\/+$/g, '');\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\n url = 'https://' + url;\n }\n\n return url;\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\n\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService as FolderServiceAbstraction } from '../abstractions/folder.service';\r\nimport { I18nService } from '../abstractions/i18n.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { ServiceUtils } from '../misc/serviceUtils';\r\nimport { Utils } from '../misc/utils';\r\n\r\nconst Keys = {\r\n foldersPrefix: 'folders_',\r\n ciphersPrefix: 'ciphers_',\r\n};\r\nconst NestingDelimiter = '/';\r\n\r\nexport class FolderService implements FolderServiceAbstraction {\r\n decryptedFolderCache: FolderView[];\r\n\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private apiService: ApiService, private storageService: StorageService,\r\n private i18nService: I18nService, private cipherService: CipherService) { }\r\n\r\n clearCache(): void {\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async encrypt(model: FolderView, key?: SymmetricCryptoKey): Promise {\r\n const folder = new Folder();\r\n folder.id = model.id;\r\n folder.name = await this.cryptoService.encrypt(model.name, key);\r\n return folder;\r\n }\r\n\r\n async get(id: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null || !folders.hasOwnProperty(id)) {\r\n return null;\r\n }\r\n\r\n return new Folder(folders[id]);\r\n }\r\n\r\n async getAll(): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n const response: Folder[] = [];\r\n for (const id in folders) {\r\n if (folders.hasOwnProperty(id)) {\r\n response.push(new Folder(folders[id]));\r\n }\r\n }\r\n return response;\r\n }\r\n\r\n async getAllDecrypted(): Promise {\r\n if (this.decryptedFolderCache != null) {\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n throw new Error('No key.');\r\n }\r\n\r\n const decFolders: FolderView[] = [];\r\n const promises: Array> = [];\r\n const folders = await this.getAll();\r\n folders.forEach((folder) => {\r\n promises.push(folder.decrypt().then((f) => decFolders.push(f)));\r\n });\r\n\r\n await Promise.all(promises);\r\n decFolders.sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n\r\n const noneFolder = new FolderView();\r\n noneFolder.name = this.i18nService.t('noneFolder');\r\n decFolders.push(noneFolder);\r\n\r\n this.decryptedFolderCache = decFolders;\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n async getAllNested(): Promise>> {\r\n const folders = await this.getAllDecrypted();\r\n const nodes: Array> = [];\r\n folders.forEach((f) => {\r\n const folderCopy = new FolderView();\r\n folderCopy.id = f.id;\r\n folderCopy.revisionDate = f.revisionDate;\r\n ServiceUtils.nestedTraverse(nodes, 0, f.name.split(NestingDelimiter), folderCopy,\r\n null, NestingDelimiter);\r\n });\r\n return nodes;\r\n }\r\n\r\n async getNested(id: string): Promise> {\r\n const folders = await this.getAllNested();\r\n return ServiceUtils.getTreeNodeObject(folders, id) as TreeNode;\r\n }\r\n\r\n async saveWithServer(folder: Folder): Promise {\r\n const request = new FolderRequest(folder);\r\n\r\n let response: FolderResponse;\r\n if (folder.id == null) {\r\n response = await this.apiService.postFolder(request);\r\n folder.id = response.id;\r\n } else {\r\n response = await this.apiService.putFolder(folder.id, request);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const data = new FolderData(response, userId);\r\n await this.upsert(data);\r\n }\r\n\r\n async upsert(folder: FolderData | FolderData[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n let folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n folders = {};\r\n }\r\n\r\n if (folder instanceof FolderData) {\r\n const f = folder as FolderData;\r\n folders[f.id] = f;\r\n } else {\r\n (folder as FolderData[]).forEach((f) => {\r\n folders[f.id] = f;\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async replace(folders: { [id: string]: FolderData; }): Promise {\r\n const userId = await this.userService.getUserId();\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.foldersPrefix + userId);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async delete(id: string | string[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n return;\r\n }\r\n\r\n if (typeof id === 'string') {\r\n if (folders[id] == null) {\r\n return;\r\n }\r\n delete folders[id];\r\n } else {\r\n (id as string[]).forEach((i) => {\r\n delete folders[i];\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n\r\n // Items in a deleted folder are re-assigned to \"No Folder\"\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(Keys.ciphersPrefix + userId);\r\n if (ciphers != null) {\r\n const updates: CipherData[] = [];\r\n for (const cId in ciphers) {\r\n if (ciphers[cId].folderId === id) {\r\n ciphers[cId].folderId = null;\r\n updates.push(ciphers[cId]);\r\n }\r\n }\r\n if (updates.length > 0) {\r\n this.cipherService.upsert(updates);\r\n }\r\n }\r\n }\r\n\r\n async deleteWithServer(id: string): Promise {\r\n await this.apiService.deleteFolder(id);\r\n await this.delete(id);\r\n }\r\n}\r\n","import { FolderResponse } from '../response/folderResponse';\r\n\r\nexport class FolderData {\r\n id: string;\r\n userId: string;\r\n name: string;\r\n revisionDate: string;\r\n\r\n constructor(response: FolderResponse, userId: string) {\r\n this.userId = userId;\r\n this.name = response.name;\r\n this.id = response.id;\r\n this.revisionDate = response.revisionDate;\r\n }\r\n}\r\n","import { I18nService as I18nServiceAbstraction } from '../abstractions/i18n.service';\n\nexport class I18nService implements I18nServiceAbstraction {\n locale: string;\n // First locale is the default (English)\n supportedTranslationLocales: string[] = ['en'];\n translationLocale: string;\n collator: Intl.Collator;\n\n protected inited: boolean;\n protected defaultMessages: any = {};\n protected localeMessages: any = {};\n\n constructor(protected systemLanguage: string, protected localesDirectory: string,\n protected getLocalesJson: (formattedLocale: string) => Promise) {\n this.systemLanguage = systemLanguage.replace('_', '-');\n }\n\n async init(locale?: string) {\n if (this.inited) {\n throw new Error('i18n already initialized.');\n }\n if (this.supportedTranslationLocales == null || this.supportedTranslationLocales.length === 0) {\n throw new Error('supportedTranslationLocales not set.');\n }\n\n this.inited = true;\n this.locale = this.translationLocale = locale != null ? locale : this.systemLanguage;\n\n try {\n this.collator = new Intl.Collator(this.locale, { numeric: true, sensitivity: 'base' });\n } catch {\n this.collator = null;\n }\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.translationLocale.slice(0, 2);\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.supportedTranslationLocales[0];\n }\n }\n\n if (this.localesDirectory != null) {\n await this.loadMessages(this.translationLocale, this.localeMessages);\n if (this.translationLocale !== this.supportedTranslationLocales[0]) {\n await this.loadMessages(this.supportedTranslationLocales[0], this.defaultMessages);\n }\n }\n }\n\n t(id: string, p1?: string, p2?: string, p3?: string): string {\n return this.translate(id, p1, p2, p3);\n }\n\n translate(id: string, p1?: string, p2?: string, p3?: string): string {\n let result: string;\n if (this.localeMessages.hasOwnProperty(id) && this.localeMessages[id]) {\n result = this.localeMessages[id];\n } else if (this.defaultMessages.hasOwnProperty(id) && this.defaultMessages[id]) {\n result = this.defaultMessages[id];\n } else {\n result = '';\n }\n\n if (result !== '') {\n if (p1 != null) {\n result = result.split('__$1__').join(p1);\n }\n if (p2 != null) {\n result = result.split('__$2__').join(p2);\n }\n if (p3 != null) {\n result = result.split('__$3__').join(p3);\n }\n }\n\n return result;\n }\n\n private async loadMessages(locale: string, messagesObj: any): Promise {\n const formattedLocale = locale.replace('-', '_');\n const locales = await this.getLocalesJson(formattedLocale);\n for (const prop in locales) {\n if (!locales.hasOwnProperty(prop)) {\n continue;\n }\n messagesObj[prop] = locales[prop].message;\n\n if (locales[prop].placeholders) {\n for (const placeProp in locales[prop].placeholders) {\n if (!locales[prop].placeholders.hasOwnProperty(placeProp) ||\n !locales[prop].placeholders[placeProp].content) {\n continue;\n }\n\n const replaceToken = '\\\\$' + placeProp.toUpperCase() + '\\\\$';\n let replaceContent = locales[prop].placeholders[placeProp].content;\n if (replaceContent === '$1' || replaceContent === '$2' || replaceContent === '$3') {\n replaceContent = '__$' + replaceContent + '__';\n }\n messagesObj[prop] = messagesObj[prop].replace(new RegExp(replaceToken, 'g'), replaceContent);\n }\n }\n }\n }\n\n}\n","import { ConstantsService } from './constants.service';\n\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { LockService as LockServiceAbstraction } from '../abstractions/lock.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { SearchService } from '../abstractions/search.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class LockService implements LockServiceAbstraction {\n pinLocked = false;\n\n private inited = false;\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private collectionService: CollectionService, private cryptoService: CryptoService,\n private platformUtilsService: PlatformUtilsService, private storageService: StorageService,\n private messagingService: MessagingService, private searchService: SearchService,\n private lockedCallback: () => Promise) {\n }\n\n init(checkOnInterval: boolean) {\n if (this.inited) {\n return;\n }\n\n this.inited = true;\n if (checkOnInterval) {\n this.checkLock();\n setInterval(() => this.checkLock(), 10 * 1000); // check every 10 seconds\n }\n }\n\n async isLocked(): Promise {\n const hasKey = await this.cryptoService.hasKey();\n if (hasKey && this.pinLocked) {\n return true;\n }\n return !hasKey;\n }\n\n async checkLock(): Promise {\n if (this.platformUtilsService.isViewOpen()) {\n // Do not lock\n return;\n }\n\n if (this.isLocked()) {\n return;\n }\n\n let lockOption = this.platformUtilsService.lockTimeout();\n if (lockOption == null) {\n lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\n }\n if (lockOption == null || lockOption < 0) {\n return;\n }\n\n const lastActive = await this.storageService.get(ConstantsService.lastActiveKey);\n if (lastActive == null) {\n return;\n }\n\n const lockOptionSeconds = lockOption * 60;\n const diffSeconds = ((new Date()).getTime() - lastActive) / 1000;\n if (diffSeconds >= lockOptionSeconds) {\n // need to lock now\n await this.lock(true);\n }\n }\n\n async lock(allowSoftLock = false): Promise {\n if (allowSoftLock) {\n const pinSet = await this.isPinLockSet();\n if (pinSet[0]) {\n this.pinLocked = true;\n this.messagingService.send('locked');\n if (this.lockedCallback != null) {\n await this.lockedCallback();\n }\n return;\n }\n }\n\n await Promise.all([\n this.cryptoService.clearKey(),\n this.cryptoService.clearOrgKeys(true),\n this.cryptoService.clearKeyPair(true),\n this.cryptoService.clearEncKey(true),\n ]);\n\n this.folderService.clearCache();\n this.cipherService.clearCache();\n this.collectionService.clearCache();\n this.searchService.clearIndex();\n this.messagingService.send('locked');\n if (this.lockedCallback != null) {\n await this.lockedCallback();\n }\n }\n\n async setLockOption(lockOption: number): Promise {\n await this.storageService.save(ConstantsService.lockOptionKey, lockOption);\n await this.cryptoService.toggleKey();\n }\n\n async isPinLockSet(): Promise<[boolean, boolean]> {\n const protectedPin = await this.storageService.get(ConstantsService.protectedPin);\n const pinProtectedKey = await this.storageService.get(ConstantsService.pinProtectedKey);\n return [protectedPin != null, pinProtectedKey != null];\n }\n\n clear(): Promise {\n return this.storageService.remove(ConstantsService.protectedPin);\n }\n}\n","import * as zxcvbn from 'zxcvbn';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from '../abstractions/passwordGeneration.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst DefaultOptions = {\r\n length: 14,\r\n ambiguous: false,\r\n number: true,\r\n minNumber: 1,\r\n uppercase: true,\r\n minUppercase: 0,\r\n lowercase: true,\r\n minLowercase: 0,\r\n special: false,\r\n minSpecial: 1,\r\n type: 'password',\r\n numWords: 3,\r\n wordSeparator: '-',\r\n};\r\n\r\nconst Keys = {\r\n options: 'passwordGenerationOptions',\r\n history: 'generatedPasswordHistory',\r\n};\r\n\r\nconst MaxPasswordsInHistory = 100;\r\n\r\nexport class PasswordGenerationService implements PasswordGenerationServiceAbstraction {\r\n private optionsCache: any;\r\n private history: GeneratedPasswordHistory[];\r\n\r\n constructor(private cryptoService: CryptoService, private storageService: StorageService) { }\r\n\r\n async generatePassword(options: any): Promise {\r\n // overload defaults with given options\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.type === 'passphrase') {\r\n return this.generatePassphrase(options);\r\n }\r\n\r\n // sanitize\r\n if (o.uppercase && o.minUppercase <= 0) {\r\n o.minUppercase = 1;\r\n }\r\n if (o.lowercase && o.minLowercase <= 0) {\r\n o.minLowercase = 1;\r\n }\r\n if (o.number && o.minNumber <= 0) {\r\n o.minNumber = 1;\r\n }\r\n if (o.special && o.minSpecial <= 0) {\r\n o.minSpecial = 1;\r\n }\r\n\r\n if (!o.length || o.length < 1) {\r\n o.length = 10;\r\n }\r\n\r\n const minLength: number = o.minUppercase + o.minLowercase + o.minNumber + o.minSpecial;\r\n if (o.length < minLength) {\r\n o.length = minLength;\r\n }\r\n\r\n const positions: string[] = [];\r\n if (o.lowercase && o.minLowercase > 0) {\r\n for (let i = 0; i < o.minLowercase; i++) {\r\n positions.push('l');\r\n }\r\n }\r\n if (o.uppercase && o.minUppercase > 0) {\r\n for (let i = 0; i < o.minUppercase; i++) {\r\n positions.push('u');\r\n }\r\n }\r\n if (o.number && o.minNumber > 0) {\r\n for (let i = 0; i < o.minNumber; i++) {\r\n positions.push('n');\r\n }\r\n }\r\n if (o.special && o.minSpecial > 0) {\r\n for (let i = 0; i < o.minSpecial; i++) {\r\n positions.push('s');\r\n }\r\n }\r\n while (positions.length < o.length) {\r\n positions.push('a');\r\n }\r\n\r\n // shuffle\r\n await this.shuffleArray(positions);\r\n\r\n // build out the char sets\r\n let allCharSet = '';\r\n\r\n let lowercaseCharSet = 'abcdefghijkmnopqrstuvwxyz';\r\n if (o.ambiguous) {\r\n lowercaseCharSet += 'l';\r\n }\r\n if (o.lowercase) {\r\n allCharSet += lowercaseCharSet;\r\n }\r\n\r\n let uppercaseCharSet = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';\r\n if (o.ambiguous) {\r\n uppercaseCharSet += 'O';\r\n }\r\n if (o.uppercase) {\r\n allCharSet += uppercaseCharSet;\r\n }\r\n\r\n let numberCharSet = '23456789';\r\n if (o.ambiguous) {\r\n numberCharSet += '01';\r\n }\r\n if (o.number) {\r\n allCharSet += numberCharSet;\r\n }\r\n\r\n const specialCharSet = '!@#$%^&*';\r\n if (o.special) {\r\n allCharSet += specialCharSet;\r\n }\r\n\r\n let password = '';\r\n for (let i = 0; i < o.length; i++) {\r\n let positionChars: string;\r\n switch (positions[i]) {\r\n case 'l':\r\n positionChars = lowercaseCharSet;\r\n break;\r\n case 'u':\r\n positionChars = uppercaseCharSet;\r\n break;\r\n case 'n':\r\n positionChars = numberCharSet;\r\n break;\r\n case 's':\r\n positionChars = specialCharSet;\r\n break;\r\n case 'a':\r\n positionChars = allCharSet;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n const randomCharIndex = await this.cryptoService.randomNumber(0, positionChars.length - 1);\r\n password += positionChars.charAt(randomCharIndex);\r\n }\r\n\r\n return password;\r\n }\r\n\r\n async generatePassphrase(options: any): Promise {\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.numWords == null || o.numWords <= 2) {\r\n o.numWords = DefaultOptions.numWords;\r\n }\r\n if (o.wordSeparator == null || o.wordSeparator.length === 0 || o.wordSeparator.length > 1) {\r\n o.wordSeparator = ' ';\r\n }\r\n\r\n const listLength = EEFLongWordList.length - 1;\r\n const wordList = new Array(o.numWords);\r\n for (let i = 0; i < o.numWords; i++) {\r\n const wordIndex = await this.cryptoService.randomNumber(0, listLength);\r\n wordList[i] = EEFLongWordList[wordIndex];\r\n }\r\n return wordList.join(o.wordSeparator);\r\n }\r\n\r\n async getOptions() {\r\n if (this.optionsCache == null) {\r\n const options = await this.storageService.get(Keys.options);\r\n if (options == null) {\r\n this.optionsCache = DefaultOptions;\r\n } else {\r\n this.optionsCache = Object.assign({}, DefaultOptions, options);\r\n }\r\n }\r\n\r\n return this.optionsCache;\r\n }\r\n\r\n async saveOptions(options: any) {\r\n await this.storageService.save(Keys.options, options);\r\n this.optionsCache = options;\r\n }\r\n\r\n async getHistory(): Promise {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return new Array();\r\n }\r\n\r\n if (!this.history) {\r\n const encrypted = await this.storageService.get(Keys.history);\r\n this.history = await this.decryptHistory(encrypted);\r\n }\r\n\r\n return this.history || new Array();\r\n }\r\n\r\n async addHistory(password: string): Promise {\r\n // Cannot add new history if no key is available\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return;\r\n }\r\n\r\n const currentHistory = await this.getHistory();\r\n\r\n // Prevent duplicates\r\n if (this.matchesPrevious(password, currentHistory)) {\r\n return;\r\n }\r\n\r\n currentHistory.unshift(new GeneratedPasswordHistory(password, Date.now()));\r\n\r\n // Remove old items.\r\n if (currentHistory.length > MaxPasswordsInHistory) {\r\n currentHistory.pop();\r\n }\r\n\r\n const newHistory = await this.encryptHistory(currentHistory);\r\n return await this.storageService.save(Keys.history, newHistory);\r\n }\r\n\r\n async clear(): Promise {\r\n this.history = [];\r\n return await this.storageService.remove(Keys.history);\r\n }\r\n\r\n passwordStrength(password: string, userInputs: string[] = null): zxcvbn.ZXCVBNResult {\r\n if (password == null || password.length === 0) {\r\n return null;\r\n }\r\n let globalUserInputs = ['bitwarden', 'bit', 'warden'];\r\n if (userInputs != null && userInputs.length > 0) {\r\n globalUserInputs = globalUserInputs.concat(userInputs);\r\n }\r\n // Use a hash set to get rid of any duplicate user inputs\r\n const finalUserInputs = Array.from(new Set(globalUserInputs));\r\n const result = zxcvbn(password, finalUserInputs);\r\n return result;\r\n }\r\n\r\n private async encryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const encrypted = await this.cryptoService.encrypt(item.password);\r\n return new GeneratedPasswordHistory(encrypted.encryptedString, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private async decryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const decrypted = await this.cryptoService.decryptToUtf8(new CipherString(item.password));\r\n return new GeneratedPasswordHistory(decrypted, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private matchesPrevious(password: string, history: GeneratedPasswordHistory[]): boolean {\r\n if (history == null || history.length === 0) {\r\n return false;\r\n }\r\n\r\n return history[history.length - 1].password === password;\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/12646864/1090359\r\n private async shuffleArray(array: string[]) {\r\n for (let i = array.length - 1; i > 0; i--) {\r\n const j = await this.cryptoService.randomNumber(0, i);\r\n [array[i], array[j]] = [array[j], array[i]];\r\n }\r\n }\r\n}\r\n","import { SettingsService as SettingsServiceAbstraction } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nconst Keys = {\r\n settingsPrefix: 'settings_',\r\n equivalentDomains: 'equivalentDomains',\r\n};\r\n\r\nexport class SettingsService implements SettingsServiceAbstraction {\r\n private settingsCache: any;\r\n\r\n constructor(private userService: UserService, private storageService: StorageService) {\r\n }\r\n\r\n clearCache(): void {\r\n this.settingsCache = null;\r\n }\r\n\r\n getEquivalentDomains(): Promise {\r\n return this.getSettingsKey(Keys.equivalentDomains);\r\n }\r\n\r\n async setEquivalentDomains(equivalentDomains: string[][]): Promise {\r\n await this.setSettingsKey(Keys.equivalentDomains, equivalentDomains);\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.settingsPrefix + userId);\r\n this.settingsCache = null;\r\n }\r\n\r\n // Helpers\r\n\r\n private async getSettings(): Promise {\r\n if (this.settingsCache == null) {\r\n const userId = await this.userService.getUserId();\r\n this.settingsCache = this.storageService.get(Keys.settingsPrefix + userId);\r\n }\r\n return this.settingsCache;\r\n }\r\n\r\n private async getSettingsKey(key: string): Promise {\r\n const settings = await this.getSettings();\r\n if (settings != null && settings[key]) {\r\n return settings[key];\r\n }\r\n return null;\r\n }\r\n\r\n private async setSettingsKey(key: string, value: any): Promise {\r\n const userId = await this.userService.getUserId();\r\n let settings = await this.getSettings();\r\n if (!settings) {\r\n settings = {};\r\n }\r\n\r\n settings[key] = value;\r\n await this.storageService.save(Keys.settingsPrefix + userId, settings);\r\n this.settingsCache = settings;\r\n }\r\n}\r\n","import { StateService as StateServiceAbstraction } from '../abstractions/state.service';\r\n\r\nexport class StateService implements StateServiceAbstraction {\r\n private state: any = {};\r\n\r\n get(key: string): Promise {\r\n if (this.state.hasOwnProperty(key)) {\r\n return Promise.resolve(this.state[key]);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n this.state[key] = obj;\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n delete this.state[key];\r\n return Promise.resolve();\r\n }\r\n\r\n purge(): Promise {\r\n this.state = {};\r\n return Promise.resolve();\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { FolderData } from '../models/data/folderData';\r\nimport { OrganizationData } from '../models/data/organizationData';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\n\r\nconst Keys = {\r\n lastSyncPrefix: 'lastSync_',\r\n};\r\n\r\nexport class SyncService implements SyncServiceAbstraction {\r\n syncInProgress: boolean = false;\r\n\r\n constructor(private userService: UserService, private apiService: ApiService,\r\n private settingsService: SettingsService, private folderService: FolderService,\r\n private cipherService: CipherService, private cryptoService: CryptoService,\r\n private collectionService: CollectionService, private storageService: StorageService,\r\n private messagingService: MessagingService, private logoutCallback: (expired: boolean) => Promise) {\r\n }\r\n\r\n async getLastSync(): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return null;\r\n }\r\n\r\n const lastSync = await this.storageService.get(Keys.lastSyncPrefix + userId);\r\n if (lastSync) {\r\n return new Date(lastSync);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n async setLastSync(date: Date): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.lastSyncPrefix + userId, date.toJSON());\r\n }\r\n\r\n async fullSync(forceSync: boolean): Promise {\r\n this.syncStarted();\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n if (!isAuthenticated) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const now = new Date();\r\n const needsSyncResult = await this.needsSyncing(forceSync);\r\n const needsSync = needsSyncResult[0];\r\n const skipped = needsSyncResult[1];\r\n\r\n if (skipped) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n if (!needsSync) {\r\n await this.setLastSync(now);\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n try {\r\n const response = await this.apiService.getSync();\r\n\r\n await this.syncProfile(response.profile);\r\n await this.syncFolders(userId, response.folders);\r\n await this.syncCollections(response.collections);\r\n await this.syncCiphers(userId, response.ciphers);\r\n await this.syncSettings(userId, response.domains);\r\n\r\n await this.setLastSync(now);\r\n return this.syncCompleted(true);\r\n } catch (e) {\r\n return this.syncCompleted(false);\r\n }\r\n }\r\n\r\n async syncUpsertFolder(notification: SyncFolderNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n const localFolder = await this.folderService.get(notification.id);\r\n if ((!isEdit && localFolder == null) ||\r\n (isEdit && localFolder != null && localFolder.revisionDate < notification.revisionDate)) {\r\n const remoteFolder = await this.apiService.getFolder(notification.id);\r\n if (remoteFolder != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.folderService.upsert(new FolderData(remoteFolder, userId));\r\n this.messagingService.send('syncedUpsertedFolder', { folderId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch { }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteFolder(notification: SyncFolderNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.folderService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedFolder', { folderId: notification.id });\r\n this.syncCompleted(true);\r\n return true;\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncUpsertCipher(notification: SyncCipherNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n let shouldUpdate = true;\r\n const localCipher = await this.cipherService.get(notification.id);\r\n if (localCipher != null && localCipher.revisionDate >= notification.revisionDate) {\r\n shouldUpdate = false;\r\n }\r\n\r\n let checkCollections = false;\r\n if (shouldUpdate) {\r\n if (isEdit) {\r\n shouldUpdate = localCipher != null;\r\n checkCollections = true;\r\n } else {\r\n if (notification.collectionIds == null || notification.organizationId == null) {\r\n shouldUpdate = localCipher == null;\r\n } else {\r\n shouldUpdate = false;\r\n checkCollections = true;\r\n }\r\n }\r\n }\r\n\r\n if (!shouldUpdate && checkCollections && notification.organizationId != null &&\r\n notification.collectionIds != null && notification.collectionIds.length > 0) {\r\n const collections = await this.collectionService.getAll();\r\n if (collections != null) {\r\n for (let i = 0; i < collections.length; i++) {\r\n if (notification.collectionIds.indexOf(collections[i].id)) {\r\n shouldUpdate = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (shouldUpdate) {\r\n const remoteCipher = await this.apiService.getCipher(notification.id);\r\n if (remoteCipher != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.cipherService.upsert(new CipherData(remoteCipher, userId));\r\n this.messagingService.send('syncedUpsertedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch (e) {\r\n if (e != null && e.statusCode === 404 && isEdit) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteCipher(notification: SyncCipherNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n // Helpers\r\n\r\n private syncStarted() {\r\n this.syncInProgress = true;\r\n this.messagingService.send('syncStarted');\r\n }\r\n\r\n private syncCompleted(successfully: boolean): boolean {\r\n this.syncInProgress = false;\r\n this.messagingService.send('syncCompleted', { successfully: successfully });\r\n return successfully;\r\n }\r\n\r\n private async needsSyncing(forceSync: boolean) {\r\n if (forceSync) {\r\n return [true, false];\r\n }\r\n\r\n const lastSync = await this.getLastSync();\r\n if (lastSync == null || lastSync.getTime() === 0) {\r\n return [true, false];\r\n }\r\n\r\n try {\r\n const response = await this.apiService.getAccountRevisionDate();\r\n if (new Date(response) <= lastSync) {\r\n return [false, false];\r\n }\r\n return [true, false];\r\n } catch (e) {\r\n return [false, true];\r\n }\r\n }\r\n\r\n private async syncProfile(response: ProfileResponse) {\r\n const stamp = await this.userService.getSecurityStamp();\r\n if (stamp != null && stamp !== response.securityStamp) {\r\n if (this.logoutCallback != null) {\r\n await this.logoutCallback(true);\r\n }\r\n\r\n throw new Error('Stamp has changed');\r\n }\r\n\r\n await this.cryptoService.setEncKey(response.key);\r\n await this.cryptoService.setEncPrivateKey(response.privateKey);\r\n await this.cryptoService.setOrgKeys(response.organizations);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n\r\n const organizations: { [id: string]: OrganizationData; } = {};\r\n response.organizations.forEach((o) => {\r\n organizations[o.id] = new OrganizationData(o);\r\n });\r\n return await this.userService.replaceOrganizations(organizations);\r\n }\r\n\r\n private async syncFolders(userId: string, response: FolderResponse[]) {\r\n const folders: { [id: string]: FolderData; } = {};\r\n response.forEach((f) => {\r\n folders[f.id] = new FolderData(f, userId);\r\n });\r\n return await this.folderService.replace(folders);\r\n }\r\n\r\n private async syncCollections(response: CollectionDetailsResponse[]) {\r\n const collections: { [id: string]: CollectionData; } = {};\r\n response.forEach((c) => {\r\n collections[c.id] = new CollectionData(c);\r\n });\r\n return await this.collectionService.replace(collections);\r\n }\r\n\r\n private async syncCiphers(userId: string, response: CipherResponse[]) {\r\n const ciphers: { [id: string]: CipherData; } = {};\r\n response.forEach((c) => {\r\n ciphers[c.id] = new CipherData(c, userId);\r\n });\r\n return await this.cipherService.replace(ciphers);\r\n }\r\n\r\n private async syncSettings(userId: string, response: DomainsResponse) {\r\n let eqDomains: string[][] = [];\r\n if (response != null && response.equivalentDomains != null) {\r\n eqDomains = eqDomains.concat(response.equivalentDomains);\r\n }\r\n\r\n if (response != null && response.globalEquivalentDomains != null) {\r\n response.globalEquivalentDomains.forEach((global) => {\r\n if (global.domains.length > 0) {\r\n eqDomains.push(global.domains);\r\n }\r\n });\r\n }\r\n\r\n return this.settingsService.setEquivalentDomains(eqDomains);\r\n }\r\n}\r\n","import { ConstantsService } from './constants.service';\n\nimport { StorageService } from '../abstractions/storage.service';\nimport { TokenService as TokenServiceAbstraction } from '../abstractions/token.service';\n\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n accessToken: 'accessToken',\n refreshToken: 'refreshToken',\n twoFactorTokenPrefix: 'twoFactorToken_',\n};\n\nexport class TokenService implements TokenServiceAbstraction {\n token: string;\n decodedToken: any;\n refreshToken: string;\n\n constructor(private storageService: StorageService) {\n }\n\n setTokens(accessToken: string, refreshToken: string): Promise {\n return Promise.all([\n this.setToken(accessToken),\n this.setRefreshToken(refreshToken),\n ]);\n }\n\n setToken(token: string): Promise {\n this.token = token;\n this.decodedToken = null;\n return this.storageService.save(Keys.accessToken, token);\n }\n\n async getToken(): Promise {\n if (this.token != null) {\n return this.token;\n }\n\n this.token = await this.storageService.get(Keys.accessToken);\n return this.token;\n }\n\n setRefreshToken(refreshToken: string): Promise {\n this.refreshToken = refreshToken;\n return this.storageService.save(Keys.refreshToken, refreshToken);\n }\n\n async getRefreshToken(): Promise {\n if (this.refreshToken != null) {\n return this.refreshToken;\n }\n\n this.refreshToken = await this.storageService.get(Keys.refreshToken);\n return this.refreshToken;\n }\n\n setTwoFactorToken(token: string, email: string): Promise {\n return this.storageService.save(Keys.twoFactorTokenPrefix + email, token);\n }\n\n getTwoFactorToken(email: string): Promise {\n return this.storageService.get(Keys.twoFactorTokenPrefix + email);\n }\n\n clearTwoFactorToken(email: string): Promise {\n return this.storageService.remove(Keys.twoFactorTokenPrefix + email);\n }\n\n clearToken(): Promise {\n this.token = null;\n this.decodedToken = null;\n this.refreshToken = null;\n\n return Promise.all([\n this.storageService.remove(Keys.accessToken),\n this.storageService.remove(Keys.refreshToken),\n ]);\n }\n\n // jwthelper methods\n // ref https://github.com/auth0/angular-jwt/blob/master/src/angularJwt/services/jwt.js\n\n decodeToken(): any {\n if (this.decodedToken) {\n return this.decodedToken;\n }\n\n if (this.token == null) {\n throw new Error('Token not found.');\n }\n\n const parts = this.token.split('.');\n if (parts.length !== 3) {\n throw new Error('JWT must have 3 parts');\n }\n\n const decoded = Utils.fromUrlB64ToUtf8(parts[1]);\n if (decoded == null) {\n throw new Error('Cannot decode the token');\n }\n\n this.decodedToken = JSON.parse(decoded);\n return this.decodedToken;\n }\n\n getTokenExpirationDate(): Date {\n const decoded = this.decodeToken();\n if (typeof decoded.exp === 'undefined') {\n return null;\n }\n\n const d = new Date(0); // The 0 here is the key, which sets the date to the epoch\n d.setUTCSeconds(decoded.exp);\n return d;\n }\n\n tokenSecondsRemaining(offsetSeconds: number = 0): number {\n const d = this.getTokenExpirationDate();\n if (d == null) {\n return 0;\n }\n\n const msRemaining = d.valueOf() - (new Date().valueOf() + (offsetSeconds * 1000));\n return Math.round(msRemaining / 1000);\n }\n\n tokenNeedsRefresh(minutes: number = 5): boolean {\n const sRemaining = this.tokenSecondsRemaining();\n return sRemaining < (60 * minutes);\n }\n\n getUserId(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.sub === 'undefined') {\n throw new Error('No user id found');\n }\n\n return decoded.sub as string;\n }\n\n getEmail(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.email === 'undefined') {\n throw new Error('No email found');\n }\n\n return decoded.email as string;\n }\n\n getEmailVerified(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.email_verified === 'undefined') {\n throw new Error('No email verification found');\n }\n\n return decoded.email_verified as boolean;\n }\n\n getName(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.name === 'undefined') {\n return null;\n }\n\n return decoded.name as string;\n }\n\n getPremium(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.premium === 'undefined') {\n return false;\n }\n\n return decoded.premium as boolean;\n }\n\n getIssuer(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.iss === 'undefined') {\n throw new Error('No issuer found');\n }\n\n return decoded.iss as string;\n }\n}\n","import { ConstantsService } from './constants.service';\n\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { TotpService as TotpServiceAbstraction } from '../abstractions/totp.service';\n\nimport { Utils } from '../misc/utils';\n\nconst B32Chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';\nconst SteamChars = '23456789BCDFGHJKMNPQRTVWXY';\n\nexport class TotpService implements TotpServiceAbstraction {\n constructor(private storageService: StorageService, private cryptoFunctionService: CryptoFunctionService) { }\n\n async getCode(key: string): Promise {\n if (key == null) {\n return null;\n }\n let period = 30;\n let alg: 'sha1' | 'sha256' | 'sha512' = 'sha1';\n let digits = 6;\n let keyB32 = key;\n const isOtpAuth = key.toLowerCase().indexOf('otpauth://') === 0;\n const isSteamAuth = !isOtpAuth && key.toLowerCase().indexOf('steam://') === 0;\n if (isOtpAuth) {\n const params = Utils.getQueryParams(key);\n if (params.has('digits') && params.get('digits') != null) {\n try {\n const digitParams = parseInt(params.get('digits').trim(), null);\n if (digitParams > 10) {\n digits = 10;\n } else if (digitParams > 0) {\n digits = digitParams;\n }\n } catch { }\n }\n if (params.has('period') && params.get('period') != null) {\n try {\n const periodParam = parseInt(params.get('period').trim(), null);\n if (periodParam > 0) {\n period = periodParam;\n }\n } catch { }\n }\n if (params.has('secret') && params.get('secret') != null) {\n keyB32 = params.get('secret');\n }\n if (params.has('algorithm') && params.get('algorithm') != null) {\n const algParam = params.get('algorithm').toLowerCase();\n if (algParam === 'sha1' || algParam === 'sha256' || algParam === 'sha512') {\n alg = algParam;\n }\n }\n } else if (isSteamAuth) {\n keyB32 = key.substr('steam://'.length);\n digits = 5;\n }\n\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const timeHex = this.leftPad(this.decToHex(Math.floor(epoch / period)), 16, '0');\n const timeBytes = Utils.fromHexToArray(timeHex);\n const keyBytes = this.b32ToBytes(keyB32);\n\n if (!keyBytes.length || !timeBytes.length) {\n return null;\n }\n\n const hash = await this.sign(keyBytes, timeBytes, alg);\n if (hash.length === 0) {\n return null;\n }\n\n /* tslint:disable */\n const offset = (hash[hash.length - 1] & 0xf);\n const binary = ((hash[offset] & 0x7f) << 24) | ((hash[offset + 1] & 0xff) << 16) |\n ((hash[offset + 2] & 0xff) << 8) | (hash[offset + 3] & 0xff);\n /* tslint:enable */\n\n let otp = '';\n if (isSteamAuth) {\n // tslint:disable-next-line\n let fullCode = binary & 0x7fffffff;\n for (let i = 0; i < digits; i++) {\n otp += SteamChars[fullCode % SteamChars.length];\n fullCode = Math.trunc(fullCode / SteamChars.length);\n }\n } else {\n otp = (binary % Math.pow(10, digits)).toString();\n otp = this.leftPad(otp, digits, '0');\n }\n\n return otp;\n }\n\n getTimeInterval(key: string): number {\n let period = 30;\n if (key != null && key.toLowerCase().indexOf('otpauth://') === 0) {\n const params = Utils.getQueryParams(key);\n if (params.has('period') && params.get('period') != null) {\n try {\n period = parseInt(params.get('period').trim(), null);\n } catch { }\n }\n }\n return period;\n }\n\n async isAutoCopyEnabled(): Promise {\n return !(await this.storageService.get(ConstantsService.disableAutoTotpCopyKey));\n }\n\n // Helpers\n\n private leftPad(s: string, l: number, p: string): string {\n if (l + 1 >= s.length) {\n s = Array(l + 1 - s.length).join(p) + s;\n }\n return s;\n }\n\n private decToHex(d: number): string {\n return (d < 15.5 ? '0' : '') + Math.round(d).toString(16);\n }\n\n private b32ToHex(s: string): string {\n s = s.toUpperCase();\n let cleanedInput = '';\n\n for (let i = 0; i < s.length; i++) {\n if (B32Chars.indexOf(s[i]) < 0) {\n continue;\n }\n\n cleanedInput += s[i];\n }\n s = cleanedInput;\n\n let bits = '';\n let hex = '';\n for (let i = 0; i < s.length; i++) {\n const byteIndex = B32Chars.indexOf(s.charAt(i));\n if (byteIndex < 0) {\n continue;\n }\n bits += this.leftPad(byteIndex.toString(2), 5, '0');\n }\n for (let i = 0; i + 4 <= bits.length; i += 4) {\n const chunk = bits.substr(i, 4);\n hex = hex + parseInt(chunk, 2).toString(16);\n }\n return hex;\n }\n\n private b32ToBytes(s: string): Uint8Array {\n return Utils.fromHexToArray(this.b32ToHex(s));\n }\n\n private async sign(keyBytes: Uint8Array, timeBytes: Uint8Array, alg: 'sha1' | 'sha256' | 'sha512') {\n const signature = await this.cryptoFunctionService.hmac(timeBytes.buffer, keyBytes.buffer, alg);\n return new Uint8Array(signature);\n }\n}\n","import { StorageService } from '../abstractions/storage.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService as UserServiceAbstraction } from '../abstractions/user.service';\n\nimport { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nconst Keys = {\n userId: 'userId',\n userEmail: 'userEmail',\n stamp: 'securityStamp',\n kdf: 'kdf',\n kdfIterations: 'kdfIterations',\n organizationsPrefix: 'organizations_',\n};\n\nexport class UserService implements UserServiceAbstraction {\n private userId: string;\n private email: string;\n private stamp: string;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private tokenService: TokenService, private storageService: StorageService) { }\n\n setInformation(userId: string, email: string, kdf: KdfType, kdfIterations: number): Promise {\n this.email = email;\n this.userId = userId;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n\n return Promise.all([\n this.storageService.save(Keys.userEmail, email),\n this.storageService.save(Keys.userId, userId),\n this.storageService.save(Keys.kdf, kdf),\n this.storageService.save(Keys.kdfIterations, kdfIterations),\n ]);\n }\n\n setSecurityStamp(stamp: string): Promise {\n this.stamp = stamp;\n return this.storageService.save(Keys.stamp, stamp);\n }\n\n async getUserId(): Promise {\n if (this.userId != null) {\n return this.userId;\n }\n\n this.userId = await this.storageService.get(Keys.userId);\n return this.userId;\n }\n\n async getEmail(): Promise {\n if (this.email != null) {\n return this.email;\n }\n\n this.email = await this.storageService.get(Keys.userEmail);\n return this.email;\n }\n\n async getSecurityStamp(): Promise {\n if (this.stamp != null) {\n return this.stamp;\n }\n\n this.stamp = await this.storageService.get(Keys.stamp);\n return this.stamp;\n }\n\n async getKdf(): Promise {\n if (this.kdf != null) {\n return this.kdf;\n }\n\n this.kdf = await this.storageService.get(Keys.kdf);\n return this.kdf;\n }\n\n async getKdfIterations(): Promise {\n if (this.kdfIterations != null) {\n return this.kdfIterations;\n }\n\n this.kdfIterations = await this.storageService.get(Keys.kdfIterations);\n return this.kdfIterations;\n }\n\n async clear(): Promise {\n const userId = await this.getUserId();\n\n await Promise.all([\n this.storageService.remove(Keys.userId),\n this.storageService.remove(Keys.userEmail),\n this.storageService.remove(Keys.stamp),\n this.storageService.remove(Keys.kdf),\n this.storageService.remove(Keys.kdfIterations),\n this.clearOrganizations(userId),\n ]);\n\n this.userId = this.email = this.stamp = null;\n this.kdf = null;\n this.kdfIterations = null;\n }\n\n async isAuthenticated(): Promise {\n const token = await this.tokenService.getToken();\n if (token == null) {\n return false;\n }\n\n const userId = await this.getUserId();\n return userId != null;\n }\n\n async canAccessPremium(): Promise {\n const tokenPremium = await this.tokenService.getPremium();\n if (tokenPremium) {\n return true;\n }\n\n const orgs = await this.getAllOrganizations();\n for (let i = 0; i < orgs.length; i++) {\n if (orgs[i].usersGetPremium && orgs[i].enabled) {\n return true;\n }\n }\n return false;\n }\n\n async getOrganization(id: string): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n if (organizations == null || !organizations.hasOwnProperty(id)) {\n return null;\n }\n\n return new Organization(organizations[id]);\n }\n\n async getAllOrganizations(): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n const response: Organization[] = [];\n for (const id in organizations) {\n if (organizations.hasOwnProperty(id)) {\n response.push(new Organization(organizations[id]));\n }\n }\n return response;\n }\n\n async replaceOrganizations(organizations: { [id: string]: OrganizationData; }): Promise {\n const userId = await this.getUserId();\n await this.storageService.save(Keys.organizationsPrefix + userId, organizations);\n }\n\n async clearOrganizations(userId: string): Promise {\n await this.storageService.remove(Keys.organizationsPrefix + userId);\n }\n}\n","import { Cipher } from './cipher';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nexport class CipherWithIds extends Cipher {\r\n id: string;\r\n collectionIds: string[];\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.id = o.id;\r\n super.build(o);\r\n this.collectionIds = o.collectionIds;\r\n }\r\n}\r\n","import { Collection } from './collection';\r\n\r\nimport { CollectionView } from '../view/collectionView';\r\n\r\nexport class CollectionWithId extends Collection {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","import { Folder } from './folder';\r\n\r\nimport { FolderView } from '../view/folderView';\r\n\r\nexport class FolderWithId extends Folder {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","export enum NotificationType {\n SyncCipherUpdate = 0,\n SyncCipherCreate = 1,\n SyncLoginDelete = 2,\n SyncFolderDelete = 3,\n SyncCiphers = 4,\n\n SyncVault = 5,\n SyncOrgKeys = 6,\n SyncFolderCreate = 7,\n SyncFolderUpdate = 8,\n SyncCipherDelete = 9,\n SyncSettings = 10,\n\n LogOut = 11,\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { LockService } from '../../abstractions/lock.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { UserService } from '../../abstractions/user.service';\n\n@Injectable()\nexport class AuthGuardService implements CanActivate {\n constructor(private lockService: LockService, 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 locked = await this.lockService.isLocked();\n if (locked) {\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';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Injectable()\nexport class UnauthGuardService implements CanActivate {\n constructor(private lockService: LockService, private userService: UserService,\n private router: Router) { }\n\n async canActivate() {\n const isAuthed = await this.userService.isAuthenticated();\n if (isAuthed) {\n const locked = await this.lockService.isLocked();\n if (locked) {\n this.router.navigate(['lock']);\n } else {\n this.router.navigate(['vault']);\n }\n return false;\n }\n\n return true;\n }\n}\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport 'bootstrap';\nimport 'jquery';\nimport 'popper.js';\n\n// tslint:disable-next-line\nrequire('../scss/styles.scss');\n\nimport { AppModule } from './app.module';\n\nif (process.env.ENV === 'production') {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: true });\n","import 'core-js';\n\nimport { ToasterModule } from 'angular2-toaster';\nimport { Angulartics2Module } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport { AppRoutingModule } from './app-routing.module';\n\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { ServicesModule } from './services/services.module';\n\nimport { AppComponent } from './app.component';\nimport { ModalComponent } from './modal.component';\n\nimport { AvatarComponent } from './components/avatar.component';\nimport { CalloutComponent } from './components/callout.component';\nimport { PasswordStrengthComponent } from './components/password-strength.component';\n\nimport { FooterComponent } from './layouts/footer.component';\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { NavbarComponent } from './layouts/navbar.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport {\n CollectionAddEditComponent as OrgCollectionAddEditComponent,\n} from './organizations/manage/collection-add-edit.component';\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EntityEventsComponent as OrgEntityEventsComponent } from './organizations/manage/entity-events.component';\nimport { EntityUsersComponent as OrgEntityUsersComponent } from './organizations/manage/entity-users.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupAddEditComponent as OrgGroupAddEditComponent } from './organizations/manage/group-add-edit.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\nimport { UserAddEditComponent as OrgUserAddEditComponent } from './organizations/manage/user-add-edit.component';\nimport { UserConfirmComponent as OrgUserConfirmComponent } from './organizations/manage/user-confirm.component';\nimport { UserGroupsComponent as OrgUserGroupsComponent } from './organizations/manage/user-groups.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { AdjustSeatsComponent } from './organizations/settings/adjust-seats.component';\nimport { DeleteOrganizationComponent } from './organizations/settings/delete-organization.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { AddEditComponent as OrgAddEditComponent } from './organizations/vault/add-edit.component';\nimport { AttachmentsComponent as OrgAttachmentsComponent } from './organizations/vault/attachments.component';\nimport { CiphersComponent as OrgCiphersComponent } from './organizations/vault/ciphers.component';\nimport { CollectionsComponent as OrgCollectionsComponent } from './organizations/vault/collections.component';\nimport { GroupingsComponent as OrgGroupingsComponent } from './organizations/vault/groupings.component';\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { AdjustPaymentComponent } from './settings/adjust-payment.component';\nimport { AdjustStorageComponent } from './settings/adjust-storage.component';\nimport { ChangeEmailComponent } from './settings/change-email.component';\nimport { ChangeKdfComponent } from './settings/change-kdf.component';\nimport { ChangePasswordComponent } from './settings/change-password.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DeauthorizeSessionsComponent } from './settings/deauthorize-sessions.component';\nimport { DeleteAccountComponent } from './settings/delete-account.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PaymentComponent } from './settings/payment.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { ProfileComponent } from './settings/profile.component';\nimport { PurgeVaultComponent } from './settings/purge-vault.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorAuthenticatorComponent } from './settings/two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './settings/two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './settings/two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './settings/two-factor-recovery.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { TwoFactorU2fComponent } from './settings/two-factor-u2f.component';\nimport { TwoFactorVerifyComponent } from './settings/two-factor-verify.component';\nimport { TwoFactorYubiKeyComponent } from './settings/two-factor-yubikey.component';\nimport { UpdateKeyComponent } from './settings/update-key.component';\nimport { UpdateLicenseComponent } from './settings/update-license.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\nimport { VerifyEmailComponent } from './settings/verify-email.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { AddEditComponent } from './vault/add-edit.component';\nimport { AttachmentsComponent } from './vault/attachments.component';\nimport { BulkDeleteComponent } from './vault/bulk-delete.component';\nimport { BulkMoveComponent } from './vault/bulk-move.component';\nimport { BulkShareComponent } from './vault/bulk-share.component';\nimport { CiphersComponent } from './vault/ciphers.component';\nimport { CollectionsComponent } from './vault/collections.component';\nimport { FolderAddEditComponent } from './vault/folder-add-edit.component';\nimport { GroupingsComponent } from './vault/groupings.component';\nimport { ShareComponent } from './vault/share.component';\nimport { VaultComponent } from './vault/vault.component';\n\nimport { IconComponent } from 'jslib/angular/components/icon.component';\n\nimport { ApiActionDirective } from 'jslib/angular/directives/api-action.directive';\nimport { AutofocusDirective } from 'jslib/angular/directives/autofocus.directive';\nimport { BlurClickDirective } from 'jslib/angular/directives/blur-click.directive';\nimport { BoxRowDirective } from 'jslib/angular/directives/box-row.directive';\nimport { FallbackSrcDirective } from 'jslib/angular/directives/fallback-src.directive';\nimport { FlexCopyDirective } from 'jslib/angular/directives/flex-copy.directive';\nimport { InputVerbatimDirective } from 'jslib/angular/directives/input-verbatim.directive';\nimport { StopClickDirective } from 'jslib/angular/directives/stop-click.directive';\nimport { StopPropDirective } from 'jslib/angular/directives/stop-prop.directive';\nimport { TrueFalseValueDirective } from 'jslib/angular/directives/true-false-value.directive';\n\nimport { ColorPasswordPipe } from 'jslib/angular/pipes/color-password.pipe';\nimport { I18nPipe } from 'jslib/angular/pipes/i18n.pipe';\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\nimport { SearchPipe } from 'jslib/angular/pipes/search.pipe';\n\nimport { registerLocaleData } from '@angular/common';\nimport localeCa from '@angular/common/locales/ca';\nimport localeCs from '@angular/common/locales/cs';\nimport localeDa from '@angular/common/locales/da';\nimport localeDe from '@angular/common/locales/de';\nimport localeEnGb from '@angular/common/locales/en-GB';\nimport localeEs from '@angular/common/locales/es';\nimport localeEt from '@angular/common/locales/et';\nimport localeFr from '@angular/common/locales/fr';\nimport localeIt from '@angular/common/locales/it';\nimport localeJa from '@angular/common/locales/ja';\nimport localeNb from '@angular/common/locales/nb';\nimport localeNl from '@angular/common/locales/nl';\nimport localePl from '@angular/common/locales/pl';\nimport localePtBr from '@angular/common/locales/pt';\nimport localePtPt from '@angular/common/locales/pt-PT';\nimport localeRu from '@angular/common/locales/ru';\nimport localeSk from '@angular/common/locales/sk';\nimport localeSv from '@angular/common/locales/sv';\nimport localeUk from '@angular/common/locales/uk';\nimport localeZhCn from '@angular/common/locales/zh-Hans';\nimport localeZhTw from '@angular/common/locales/zh-Hant';\n\nregisterLocaleData(localeCa, 'ca');\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEnGb, 'en-GB');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\nregisterLocaleData(localeJa, 'ja');\nregisterLocaleData(localeNb, 'nb');\nregisterLocaleData(localeNl, 'nl');\nregisterLocaleData(localePl, 'pl');\nregisterLocaleData(localePtBr, 'pt-BR');\nregisterLocaleData(localePtPt, 'pt-PT');\nregisterLocaleData(localeRu, 'ru');\nregisterLocaleData(localeSk, 'sk');\nregisterLocaleData(localeSv, 'sv');\nregisterLocaleData(localeUk, 'uk');\nregisterLocaleData(localeZhCn, 'zh-CN');\nregisterLocaleData(localeZhTw, 'zh-TW');\n\n@NgModule({\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n AppRoutingModule,\n ServicesModule,\n Angulartics2Module.forRoot([Angulartics2GoogleAnalytics], {\n pageTracking: {\n clearQueryParams: true,\n },\n }),\n ToasterModule.forRoot(),\n ],\n declarations: [\n AcceptOrganizationComponent,\n AccountComponent,\n AddEditComponent,\n AdjustPaymentComponent,\n AdjustSeatsComponent,\n AdjustStorageComponent,\n ApiActionDirective,\n AppComponent,\n AttachmentsComponent,\n AutofocusDirective,\n AvatarComponent,\n BlurClickDirective,\n BoxRowDirective,\n BreachReportComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CalloutComponent,\n ChangeEmailComponent,\n ChangeKdfComponent,\n ChangePasswordComponent,\n CiphersComponent,\n CollectionsComponent,\n ColorPasswordPipe,\n CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n ExposedPasswordsReportComponent,\n FallbackSrcDirective,\n FlexCopyDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n I18nPipe,\n IconComponent,\n ImportComponent,\n InactiveTwoFactorReportComponent,\n InputVerbatimDirective,\n LockComponent,\n LoginComponent,\n ModalComponent,\n NavbarComponent,\n OptionsComponent,\n OrgAccountComponent,\n OrgAddEditComponent,\n OrganizationBillingComponent,\n OrgAttachmentsComponent,\n OrgCiphersComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgEventsComponent,\n OrgExportComponent,\n OrgExposedPasswordsReportComponent,\n OrgImportComponent,\n OrgInactiveTwoFactorReportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgReusedPasswordsReportComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgUnsecuredWebsitesReportComponent,\n OrgVaultComponent,\n OrgWeakPasswordsReportComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PasswordStrengthComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\n ReusedPasswordsReportComponent,\n SearchCiphersPipe,\n SearchPipe,\n SettingsComponent,\n ShareComponent,\n StopClickDirective,\n StopPropDirective,\n ToolsComponent,\n TrueFalseValueDirective,\n TwoFactorAuthenticatorComponent,\n TwoFactorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorSetupComponent,\n TwoFactorU2fComponent,\n TwoFactorVerifyComponent,\n TwoFactorYubiKeyComponent,\n UnsecuredWebsitesReportComponent,\n UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n WeakPasswordsReportComponent,\n ],\n entryComponents: [\n AddEditComponent,\n AttachmentsComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CollectionsComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n FolderAddEditComponent,\n ModalComponent,\n OrgAddEditComponent,\n OrgAttachmentsComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgGroupAddEditComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n PasswordGeneratorHistoryComponent,\n PurgeVaultComponent,\n ShareComponent,\n TwoFactorAuthenticatorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorU2fComponent,\n TwoFactorYubiKeyComponent,\n UpdateKeyComponent,\n ],\n providers: [],\n bootstrap: [AppComponent],\n})\nexport class AppModule { }\n","import { BroadcasterService as BroadcasterServiceAbstraction } from '../abstractions/broadcaster.service';\r\n\r\nexport class BroadcasterService implements BroadcasterServiceAbstraction {\r\n subscribers: Map any> = new Map any>();\r\n\r\n send(message: any, id?: string) {\r\n if (id != null) {\r\n if (this.subscribers.has(id)) {\r\n this.subscribers.get(id)(message);\r\n }\r\n return;\r\n }\r\n\r\n this.subscribers.forEach((value) => {\r\n value(message);\r\n });\r\n }\r\n\r\n subscribe(id: string, messageCallback: (message: any) => any) {\r\n if (this.subscribers.has(id)) {\r\n return;\r\n }\r\n\r\n this.subscribers.set(id, messageCallback);\r\n }\r\n\r\n unsubscribe(id: string) {\r\n if (this.subscribers.has(id)) {\r\n this.subscribers.delete(id);\r\n }\r\n }\r\n}\r\n","\n
\n © {{year}}, 8bit Solutions LLC\n
{{'versionNumber' | i18n : version}}\n
\n","
\n
\n
\n \n

{{'loginOrCreateNewAccount' | i18n}}

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

{{title}}

\n
\n
\n \n

{{'enterVerificationCodeApp' | i18n}}

\n

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

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

{{'insertYubiKey' | i18n}}

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

\n \n

\n \n

{{'insertU2f' | i18n}}

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

{{'noTwoStepProviders' | i18n}}

\n

{{'noTwoStepProviders2' | i18n}}

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

{{'createAccount' | i18n}}

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

{{'passwordHint' | i18n}}

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

\n \n

\n

{{'yourVaultIsLocked' | i18n}}

\n
\n
\n
\n \n
\n \n \n
\n {{'loggedInAsEmail' | i18n : email}}\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n","import { OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from '../../abstractions/crypto.service';\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { LockService } from '../../abstractions/lock.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\nimport { StorageService } from '../../abstractions/storage.service';\nimport { UserService } from '../../abstractions/user.service';\n\nimport { ConstantsService } from '../../services/constants.service';\n\nimport { CipherString } from '../../models/domain/cipherString';\nimport { SymmetricCryptoKey } from '../../models/domain/symmetricCryptoKey';\n\nexport class LockComponent implements OnInit {\n masterPassword: string = '';\n pin: string = '';\n showPassword: boolean = false;\n email: string;\n pinLock: boolean = false;\n\n protected successRoute: string = 'vault';\n protected onSuccessfulSubmit: () => void;\n\n private invalidPinAttempts = 0;\n private pinSet: [boolean, boolean];\n\n constructor(protected router: Router, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected messagingService: MessagingService,\n protected userService: UserService, protected cryptoService: CryptoService,\n protected storageService: StorageService, protected lockService: LockService) { }\n\n async ngOnInit() {\n this.pinSet = await this.lockService.isPinLockSet();\n const hasKey = await this.cryptoService.hasKey();\n this.pinLock = (this.pinSet[0] && hasKey) || this.pinSet[1];\n this.email = await this.userService.getEmail();\n }\n\n async submit() {\n if (this.pinLock && (this.pin == null || this.pin === '')) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('pinRequired'));\n return;\n }\n if (!this.pinLock && (this.masterPassword == null || this.masterPassword === '')) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n\n if (this.pinLock) {\n let failed = true;\n try {\n if (this.pinSet[0]) {\n const protectedPin = await this.storageService.get(ConstantsService.protectedPin);\n const decPin = await this.cryptoService.decryptToUtf8(new CipherString(protectedPin));\n this.lockService.pinLocked = false;\n failed = decPin !== this.pin;\n this.doContinue();\n } else {\n const pinProtectedKey = await this.storageService.get(ConstantsService.pinProtectedKey);\n const protectedKeyCs = new CipherString(pinProtectedKey);\n const pinKey = await this.cryptoService.makePinKey(this.pin, this.email, kdf, kdfIterations);\n const decKey = await this.cryptoService.decryptToBytes(protectedKeyCs, pinKey);\n failed = false;\n await this.setKeyAndContinue(new SymmetricCryptoKey(decKey));\n }\n } catch { }\n\n if (failed) {\n this.invalidPinAttempts++;\n if (this.invalidPinAttempts >= 5) {\n this.messagingService.send('logout');\n return;\n }\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidPin'));\n }\n } else {\n const key = await this.cryptoService.makeKey(this.masterPassword, this.email, kdf, kdfIterations);\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n const storedKeyHash = await this.cryptoService.getKeyHash();\n\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\n this.setKeyAndContinue(key);\n } else {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidMasterPassword'));\n }\n }\n }\n\n async logOut() {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('logOutConfirmation'),\n this.i18nService.t('logOut'), this.i18nService.t('logOut'), this.i18nService.t('cancel'));\n if (confirmed) {\n this.messagingService.send('logout');\n }\n }\n\n togglePassword() {\n this.platformUtilsService.eventTrack('Toggled Master Password on Unlock');\n this.showPassword = !this.showPassword;\n document.getElementById(this.pinLock ? 'pin' : 'masterPassword').focus();\n }\n\n private async setKeyAndContinue(key: SymmetricCryptoKey) {\n await this.cryptoService.setKey(key);\n this.doContinue();\n }\n\n private doContinue() {\n this.messagingService.send('unlocked');\n if (this.onSuccessfulSubmit != null) {\n this.onSuccessfulSubmit();\n } else if (this.router != null) {\n this.router.navigate([this.successRoute]);\n }\n }\n}\n","
\n
\n \"Bitwarden\"\n

\n \n

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

\n \n

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

{{'joinOrganization' | i18n}}

\n
\n
\n

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

\n

{{'joinOrganizationDesc' | i18n}}

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

{{'recoverAccountTwoStep' | i18n}}

\n
\n
\n

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

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

{{'deleteAccount' | i18n}}

\n
\n
\n

{{'deleteRecoverDesc' | i18n}}

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

{{'deleteAccount' | i18n}}

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

\n {{email}}\n

\n

{{'deleteRecoverConfirmDesc' | i18n}}

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

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

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

{{'updateEncryptionKeyShortDesc' | i18n}}

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

{{'updateBrowserDesc' | i18n}}

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

{{'premiumUpgradeUnlockFeatures' | i18n}}

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

{{'verifyEmailDesc' | i18n}}

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

{{'types' | i18n}}

\n \n

\n \n

\n \n \n

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

\n \n
\n \n

{{'collections' | i18n}}

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

{{'noItemsInList' | i18n}}

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

{{'myAccount' | i18n}}

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

{{'changeEmail' | i18n}}

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

{{'changeMasterPassword' | i18n}}

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

{{'encKeySettings' | i18n}}

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

{{'dangerZone' | i18n}}

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

{{'dangerZoneDesc' | i18n}}

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

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

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

{{'changeEmailDesc' | i18n : newEmail}}

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

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

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

{{'options' | i18n}}

\n
\n

{{'optionsDesc' | i18n}}

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

{{'domainRules' | i18n}}

\n
\n

{{'domainRulesDesc' | i18n}}

\n
\n

{{'customEqDomains' | i18n}}

\n

\n \n

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

{{'globalEqDomains' | i18n}}

\n

\n \n

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

{{'twoStepLogin' | i18n}}

\n
\n

{{'twoStepLoginDesc' | i18n}}

\n

{{'twoStepLoginOrganizationDesc' | i18n}}

\n\n

{{'twoStepLoginRecoveryWarning' | i18n}}

\n \n
\n

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

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

{{'goPremium' | i18n}}

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

{{'premiumUpgradeUnlockFeatures' | i18n}}

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

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

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

{{'uploadLicenseFilePremium' | i18n}}

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

{{'addons' | i18n}}

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

{{'summary' | i18n}}

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

{{'paymentInformation' | i18n}}

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

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

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

{{'subscriptionPendingCanceled' | i18n}}

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

{{'updateLicense' | i18n}}

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

{{'storage' | i18n}}

\n

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

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

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n

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

\n \n \n \n

{{'invoices' | i18n}}

\n

{{'noInvoices' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{i.date | date:'mediumDate'}}\n \n \n \n {{'invoiceNumber' | i18n : i.number}}\n {{i.amount | currency:'$'}}\n \n \n {{'paid' | i18n}}\n \n \n \n {{'unpaid' | i18n}}\n \n
\n

{{'transactions' | i18n}}

\n

{{'noTransactions' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{t.createdDate | date:'mediumDate'}}\n {{'chargeNoun' | i18n}}\n {{'chargeRefund' | i18n}}\n \n \n {{t.details}}\n {{t.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","export class StorageRequest {\n storageGbAdjustment: number;\n}\n","export class PaymentRequest {\n paymentToken: string;\n}\n","
\n

{{'newOrganization' | i18n}}

\n
\n

{{'newOrganizationDesc' | i18n}}

\n\n

{{'uploadLicenseFileOrg' | i18n}}

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

{{'generalInformation' | i18n}}

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

{{'chooseYourPlan' | i18n}}

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

{{'users' | i18n}}

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

{{'addons' | i18n}}

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

{{'summary' | i18n}}

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

{{'paymentInformation' | i18n}}

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

{{'importData' | i18n}}

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

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

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

{{'passwordGenerator' | i18n}}

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

{{'dataBreachReport' | i18n}}

\r\n
\r\n

{{'breachDesc' | i18n}}

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

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

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

    {{a.title}}

    \r\n

    \r\n

    {{'compromisedData' | i18n}}:

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

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

\n
\n

{{'reusedPasswordsReportDesc' | i18n}}

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

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

\n
\n

{{'unsecuredWebsitesReportDesc' | i18n}}

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

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

\n
\n

{{'weakPasswordsReportDesc' | i18n}}

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

{{'exposedPasswordsReport' | i18n}}

\n
\n

{{'exposedPasswordsReportDesc' | i18n}}

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

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

\n
\n

{{'inactive2faReportDesc' | i18n}}

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

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

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

{{'collections' | i18n}}

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

{{'noCollectionsInList' | i18n}}

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

{{'eventLogs' | i18n}}

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

{{'noEventsInList' | i18n}}

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

{{'groups' | i18n}}

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

{{'noGroupsInList' | i18n}}

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

{{'people' | i18n}}

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

{{'noUsersInList' | i18n}}

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

{{'myOrganization' | i18n}}

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

{{'taxInformation' | i18n}}

\n
\n

{{'taxInformationDesc' | i18n}}

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

{{'dangerZone' | i18n}}

\n
\n
\n
\n

{{'dangerZoneDesc' | i18n}}

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

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

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

{{'subscriptionPendingCanceled' | i18n}}

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

{{'updateLicense' | i18n}}

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

{{'userSeats' | i18n}}

\n

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

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

{{'storage' | i18n}}

\n

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

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

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n \n \n

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

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

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

\n
\n \n \n \n

{{'invoices' | i18n}}

\n

{{'noInvoices' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{i.date | date:'mediumDate'}}\n \n \n \n {{'invoiceNumber' | i18n : i.number}}\n {{i.amount | currency:'$'}}\n \n \n {{'paid' | i18n}}\n \n \n \n {{'unpaid' | i18n}}\n \n
\n

{{'transactions' | i18n}}

\n

{{'noTransactions' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{t.createdDate | date:'mediumDate'}}\n {{'chargeNoun' | i18n}}\n {{'chargeRefund' | i18n}}\n \n \n {{t.details}}\n {{t.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","
\r\n
\r\n
\r\n
\r\n

{{title}}

\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
\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 {{totpSec}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{totpCodeFormatted}}\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 {{'newUri' | 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
\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
\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 \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
\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

{{'customFields' | 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
\r\n
\r\n
\r\n
\r\n \r\n {{'newCustomField' | i18n}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n 1\">\r\n

{{'ownership' | i18n}}

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

{{'collections' | i18n}}

\r\n
\r\n {{'noCollectionsInList' | 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 {{'dateUpdated' | i18n}}:\r\n {{cipher.revisionDate | date:'medium'}}\r\n
\r\n
\r\n {{'datePasswordUpdated' | i18n}}:\r\n {{cipher.passwordRevisionDisplayDate | date:'medium'}}\r\n
\r\n
\r\n {{'passwordHistory' | i18n}}:\r\n \r\n {{cipher.passwordHistory.length}}\r\n \r\n
\r\n
\r\n
\r\n {{ph.lastUsedDate | date:'short'}} -\r\n {{ph.password}}\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","
\n
\n
\n
\n

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

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

{{'newAttachment' | i18n}}

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

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

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

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

\n \n
\n
\n

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

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

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

\n \n
\n
\n

{{'shareManyDesc' | i18n}}

\n

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

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

{{'collections' | i18n}}

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

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

\n \n
\n
\n

{{'collectionsDesc' | i18n}}

\n
\n

{{'collections' | i18n}}

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

{{'deauthorizeSessions' | i18n}}

\n \n
\n
\n

{{'deauthorizeSessionsDesc' | i18n}}

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

{{'deleteAccount' | i18n}}

\n \n
\n
\n

{{'deleteAccountDesc' | i18n}}

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

{{'deleteOrganization' | i18n}}

\n \n
\n
\n

{{'deleteOrganizationDesc' | i18n}}

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

{{title}}

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

{{title}}

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

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

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

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

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

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

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

{{title}}

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

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

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

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

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

{{'inviteUserDesc' | i18n}}

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

{{'userType' | i18n}}

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

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

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

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

\n \n
\n
\n

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

\n

{{fingerprint}}

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

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

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

{{'groupAccessUserDesc' | i18n}}

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

{{'passwordHistory' | i18n}}

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

{{'purgeVault' | i18n}}

\n \n
\n
\n

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

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

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

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

{{'shareDesc' | i18n}}

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

{{'collections' | i18n}}

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

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

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

{{'twoStepAuthenticatorDesc' | i18n}}

\n

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

\n
\n \n \n

{{'twoStepLoginProviderEnabled' | i18n}}

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

{{'twoStepAuthenticatorNeedApp' | i18n}}

\n
\n \n

{{'twoStepAuthenticatorAppsRecommended' | i18n}}

\n

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

\n
\n

\n
\n {{key}}\n

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

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

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

{{'twoFactorDuoDesc' | i18n}}

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

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

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

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

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

{{'twoStepOptions' | i18n}}

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

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

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

{{'twoFactorRecoveryYourCode' | i18n}}:

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

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

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

{{'twoFactorU2fWarning' | i18n}}

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

{{'twoFactorU2fAdd' | i18n}}:

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

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

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

{{'twoFactorYubikeyWarning' | i18n}}

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

{{'twoFactorYubikeyAdd' | i18n}}:

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

{{'updateEncryptionKey' | i18n}}

\n \n
\n
\n

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

\n {{'updateEncryptionKeyWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","\r\n\r\n","import {\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, lockService, 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 BreachAccountResponse {\r\n addedDate: string;\r\n breachDate: string;\r\n dataClasses: string[];\r\n description: string;\r\n domain: string;\r\n isActive: boolean;\r\n isVerified: boolean;\r\n logoPath: string;\r\n modifiedDate: string;\r\n name: string;\r\n pwnCount: number;\r\n title: string;\r\n\r\n constructor(response: any) {\r\n this.addedDate = response.AddedDate;\r\n this.breachDate = response.BreachDate;\r\n this.dataClasses = response.DataClasses;\r\n this.description = response.Description;\r\n this.domain = response.Domain;\r\n this.isActive = response.IsActive;\r\n this.isVerified = response.IsVerified;\r\n this.logoPath = response.LogoPath;\r\n this.modifiedDate = response.ModifiedDate;\r\n this.name = response.Name;\r\n this.pwnCount = response.PwnCount;\r\n this.title = response.Title;\r\n }\r\n}\r\n","export class 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 == null) {\n return this.message;\n }\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 return this.message;\n }\n\n getAllMessages(): string[] {\n const messages: string[] = [];\n if (this.validationErrors == null) {\n return messages;\n }\n for (const key in this.validationErrors) {\n if (!this.validationErrors.hasOwnProperty(key)) {\n continue;\n }\n this.validationErrors[key].forEach((item: string) => {\n let prefix = '';\n if (key.indexOf('[') > -1 && key.indexOf(']') > -1) {\n const lastSep = key.lastIndexOf('.');\n prefix = key.substr(0, lastSep > -1 ? lastSep : key.length) + ': ';\n }\n messages.push(prefix + item);\n });\n }\n return messages;\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 {\n BillingChargeResponse,\n BillingInvoiceInfoResponse,\n BillingInvoiceResponse,\n BillingSourceResponse,\n BillingSubscriptionResponse,\n BillingTransactionResponse,\n} from './billingResponse';\nimport { OrganizationResponse } from './organizationResponse';\n\nexport class OrganizationBillingResponse extends OrganizationResponse {\n storageName: string;\n storageGb: number;\n paymentSource: BillingSourceResponse;\n subscription: BillingSubscriptionResponse;\n upcomingInvoice: BillingInvoiceInfoResponse;\n charges: BillingChargeResponse[] = [];\n invoices: BillingInvoiceResponse[] = [];\n transactions: BillingTransactionResponse[] = [];\n expiration: string;\n\n constructor(response: any) {\n super(response);\n this.storageName = response.StorageName;\n this.storageGb = response.StorageGb;\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\n this.subscription = response.Subscription == null ?\n null : new BillingSubscriptionResponse(response.Subscription);\n this.upcomingInvoice = response.UpcomingInvoice == null ?\n null : new BillingInvoiceInfoResponse(response.UpcomingInvoice);\n if (response.Charges != null) {\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\n }\n if (response.Transactions != null) {\n this.transactions = response.Transactions.map((t: any) => new BillingTransactionResponse(t));\n }\n if (response.Invoices != null) {\n this.invoices = response.Invoices.map((i: any) => new BillingInvoiceResponse(i));\n }\n this.expiration = response.Expiration;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\r\n\r\nexport class OrganizationUserResponse {\r\n id: string;\r\n userId: string;\r\n type: OrganizationUserType;\r\n status: OrganizationUserStatusType;\r\n accessAll: boolean;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.userId = response.UserId;\r\n this.type = response.Type;\r\n this.status = response.Status;\r\n this.accessAll = response.AccessAll;\r\n }\r\n}\r\n\r\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\r\n name: string;\r\n email: string;\r\n twoFactorEnabled: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n }\r\n}\r\n\r\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\r\n collections: SelectionReadOnlyResponse[] = [];\r\n\r\n constructor(response: any) {\r\n super(response);\r\n if (response.Collections != null) {\r\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\r\n }\r\n }\r\n}\r\n","import { KdfType } from '../../enums/kdfType';\n\nexport class PreloginResponse {\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(response: any) {\n this.kdf = response.Kdf;\n this.kdfIterations = response.KdfIterations;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class ProfileOrganizationResponse {\n id: string;\n name: string;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n key: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n this.selfHost = response.SelfHost;\n this.usersGetPremium = response.UsersGetPremium;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.key = response.Key;\n this.status = response.Status;\n this.type = response.Type;\n this.enabled = response.Enabled;\n }\n}\n","import { CipherResponse } from './cipherResponse';\nimport { CollectionDetailsResponse } from './collectionResponse';\nimport { DomainsResponse } from './domainsResponse';\nimport { FolderResponse } from './folderResponse';\nimport { ProfileResponse } from './profileResponse';\n\nexport class SyncResponse {\n profile?: ProfileResponse;\n folders: FolderResponse[] = [];\n collections: CollectionDetailsResponse[] = [];\n ciphers: CipherResponse[] = [];\n domains?: DomainsResponse;\n\n constructor(response: any) {\n if (response.Profile) {\n this.profile = new ProfileResponse(response.Profile);\n }\n\n if (response.Folders) {\n response.Folders.forEach((folder: any) => {\n this.folders.push(new FolderResponse(folder));\n });\n }\n\n if (response.Collections) {\n response.Collections.forEach((collection: any) => {\n this.collections.push(new CollectionDetailsResponse(collection));\n });\n }\n\n if (response.Ciphers) {\n response.Ciphers.forEach((cipher: any) => {\n this.ciphers.push(new CipherResponse(cipher));\n });\n }\n\n if (response.Domains) {\n this.domains = new DomainsResponse(response.Domains);\n }\n }\n}\n","export class TwoFactorAuthenticatorResponse {\n enabled: boolean;\n key: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key = response.Key;\n }\n}\n","export class TwoFactorDuoResponse {\n enabled: boolean;\n host: string;\n secretKey: string;\n integrationKey: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.host = response.Host;\n this.secretKey = response.SecretKey;\n this.integrationKey = response.IntegrationKey;\n }\n}\n","export class TwoFactorEmailResponse {\n enabled: boolean;\n email: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.email = response.Email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderResponse {\n enabled: boolean;\n type: TwoFactorProviderType;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.type = response.Type;\n }\n}\n","export class TwoFactorRecoverResponse {\n code: string;\n\n constructor(response: any) {\n this.code = response.Code;\n }\n}\n","export class TwoFactorU2fResponse {\n enabled: boolean;\n keys: KeyResponse[];\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.keys = response.Keys == null ? null : response.Keys.map((k: any) => new KeyResponse(k));\n }\n}\n\nexport class KeyResponse {\n name: string;\n id: number;\n compromised: boolean;\n\n constructor(response: any) {\n this.name = response.Name;\n this.id = response.Id;\n this.compromised = response.Compromised;\n }\n}\n\nexport class ChallengeResponse {\n userId: string;\n appId: string;\n challenge: string;\n version: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.appId = response.AppId;\n this.challenge = response.Challenge;\n this.version = response.Version;\n }\n}\n","export class TwoFactorYubiKeyResponse {\n enabled: boolean;\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key1 = response.Key1;\n this.key2 = response.Key2;\n this.key3 = response.Key3;\n this.key4 = response.Key4;\n this.key5 = response.Key5;\n this.nfc = response.Nfc;\n }\n}\n","export class UserKeyResponse {\n userId: string;\n publicKey: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.publicKey = response.PublicKey;\n }\n}\n","/**\n * Use as a Decorator on async functions, it will limit how many times the function can be\n * in-flight at a time.\n *\n * Calls beyond the limit will be queued, and run when one of the active calls finishes\n */\nexport function throttle(limit: number, throttleKey: (args: any[]) => string) {\n return (target: any, propertyKey: string | symbol,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise>) => {\n const originalMethod: () => Promise = descriptor.value;\n const allThrottles = new Map void>>>();\n\n const getThrottles = (obj: any) => {\n let throttles = allThrottles.get(obj);\n if (throttles != null) {\n return throttles;\n }\n throttles = new Map void>>();\n allThrottles.set(obj, throttles);\n return throttles;\n };\n\n return {\n value: function(...args: any[]) {\n const throttles = getThrottles(this);\n const argsThrottleKey = throttleKey(args);\n let queue = throttles.get(argsThrottleKey);\n if (queue == null) {\n queue = [];\n throttles.set(argsThrottleKey, queue);\n }\n\n return new Promise((resolve, reject) => {\n const exec = () => {\n originalMethod.apply(this, args).finally(() => {\n queue.splice(queue.indexOf(exec), 1);\n if (queue.length >= limit) {\n queue[limit - 1]();\n } else if (queue.length === 0) {\n throttles.delete(argsThrottleKey);\n if (throttles.size === 0) {\n allThrottles.delete(this);\n }\n }\n }).then(resolve, reject);\n };\n queue.push(exec);\n if (queue.length <= limit) {\n exec();\n }\n });\n },\n };\n };\n}\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', 'ca', 'cs', 'da', 'de', 'en-GB', 'es', 'et', 'fr', 'it', 'ja', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'uk', 'zh-CN', 'zh-TW',\n ];\n }\n}\n","import { StorageService } from 'jslib/abstractions/storage.service';\r\n\r\nexport class MemoryStorageService implements StorageService {\r\n private store = new Map();\r\n\r\n get(key: string): Promise {\r\n if (this.store.has(key)) {\r\n const obj = this.store.get(key);\r\n return Promise.resolve(obj as T);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n if (obj == null) {\r\n return this.remove(key);\r\n }\r\n this.store.set(key, obj);\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n this.store.delete(key);\r\n return Promise.resolve();\r\n }\r\n}\r\n","import * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\n\nexport class WebPlatformUtilsService implements PlatformUtilsService {\n identityClientId: string = 'web';\n\n private browserCache: DeviceType = null;\n\n constructor(private i18nService: I18nService, private messagingService: MessagingService) { }\n\n getDevice(): DeviceType {\n if (this.browserCache != null) {\n return this.browserCache;\n }\n\n if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) {\n this.browserCache = DeviceType.FirefoxBrowser;\n } else if (navigator.userAgent.indexOf(' OPR/') >= 0) {\n this.browserCache = DeviceType.OperaBrowser;\n } else if (navigator.userAgent.indexOf(' Edge/') !== -1) {\n this.browserCache = DeviceType.EdgeBrowser;\n } else if (navigator.userAgent.indexOf(' Vivaldi/') !== -1) {\n this.browserCache = DeviceType.VivaldiBrowser;\n } else if (navigator.userAgent.indexOf(' Safari/') !== -1 && navigator.userAgent.indexOf('Chrome') === -1) {\n this.browserCache = DeviceType.SafariBrowser;\n } else if ((window as any).chrome && navigator.userAgent.indexOf(' Chrome/') !== -1) {\n this.browserCache = DeviceType.ChromeBrowser;\n } else if (navigator.userAgent.indexOf(' Trident/') !== -1) {\n this.browserCache = DeviceType.IEBrowser;\n } else {\n this.browserCache = DeviceType.UnknownBrowser;\n }\n\n return this.browserCache;\n }\n\n getDeviceString(): string {\n const device = DeviceType[this.getDevice()].toLowerCase();\n return device.replace('browser', '');\n }\n\n isFirefox(): boolean {\n return this.getDevice() === DeviceType.FirefoxBrowser;\n }\n\n isChrome(): boolean {\n return this.getDevice() === DeviceType.ChromeBrowser;\n }\n\n isEdge(): boolean {\n return this.getDevice() === DeviceType.EdgeBrowser;\n }\n\n isOpera(): boolean {\n return this.getDevice() === DeviceType.OperaBrowser;\n }\n\n isVivaldi(): boolean {\n return this.getDevice() === DeviceType.VivaldiBrowser;\n }\n\n isSafari(): boolean {\n return this.getDevice() === DeviceType.SafariBrowser;\n }\n\n isIE(): boolean {\n return this.getDevice() === DeviceType.IEBrowser;\n }\n\n isMacAppStore(): boolean {\n return false;\n }\n\n analyticsId(): string {\n return 'UA-81915606-3';\n }\n\n isViewOpen(): boolean {\n return false;\n }\n\n lockTimeout(): number {\n return null;\n }\n\n launchUri(uri: string, options?: any): void {\n const a = document.createElement('a');\n a.href = uri;\n a.target = '_blank';\n a.rel = 'noreferrer noopener';\n a.classList.add('d-none');\n document.body.appendChild(a);\n a.click();\n document.body.removeChild(a);\n }\n\n saveFile(win: Window, blobData: any, blobOptions: any, fileName: string): void {\n let blob: Blob = null;\n let type: string = null;\n const fileNameLower = fileName.toLowerCase();\n let doDownload = true;\n if (fileNameLower.endsWith('.pdf')) {\n type = 'application/pdf';\n doDownload = false;\n } else if (fileNameLower.endsWith('.xlsx')) {\n type = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\n } else if (fileNameLower.endsWith('.docx')) {\n type = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';\n } else if (fileNameLower.endsWith('.pptx')) {\n type = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';\n } else if (fileNameLower.endsWith('.csv')) {\n type = 'text/csv';\n } else if (fileNameLower.endsWith('.png')) {\n type = 'image/png';\n } else if (fileNameLower.endsWith('.jpg') || fileNameLower.endsWith('.jpeg')) {\n type = 'image/jpeg';\n } else if (fileNameLower.endsWith('.gif')) {\n type = 'image/gif';\n }\n if (type != null) {\n blobOptions = blobOptions || {};\n if (blobOptions.type == null) {\n blobOptions.type = type;\n }\n }\n if (blobOptions != null && !this.isIE()) {\n blob = new Blob([blobData], blobOptions);\n } else {\n blob = new Blob([blobData]);\n }\n if (navigator.msSaveOrOpenBlob) {\n navigator.msSaveBlob(blob, fileName);\n } else {\n const a = win.document.createElement('a');\n if (doDownload) {\n a.download = fileName;\n } else {\n a.target = '_blank';\n }\n a.href = win.URL.createObjectURL(blob);\n a.style.position = 'fixed';\n win.document.body.appendChild(a);\n a.click();\n win.document.body.removeChild(a);\n }\n }\n\n getApplicationVersion(): string {\n return process.env.APPLICATION_VERSION || '-';\n }\n\n supportsU2f(win: Window): boolean {\n if (win != null && (win as any).u2f != null) {\n return true;\n }\n return this.isChrome() || ((this.isOpera() || this.isVivaldi()) && !Utils.isMobileBrowser);\n }\n\n supportsDuo(): boolean {\n return true;\n }\n\n showToast(type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\n options?: any): void {\n this.messagingService.send('showToast', {\n text: text,\n title: title,\n type: type,\n options: options,\n });\n }\n\n async showDialog(text: string, title?: string, confirmText?: string, cancelText?: string, type?: string) {\n const buttons = [confirmText == null ? this.i18nService.t('ok') : confirmText];\n if (cancelText != null) {\n buttons.unshift(cancelText);\n }\n\n const contentDiv = document.createElement('div');\n if (type != null) {\n const icon = document.createElement('i');\n icon.classList.add('swal-custom-icon');\n switch (type) {\n case 'success':\n icon.classList.add('fa', 'fa-check', 'text-success');\n break;\n case 'warning':\n icon.classList.add('fa', 'fa-warning', 'text-warning');\n break;\n case 'error':\n icon.classList.add('fa', 'fa-bolt', 'text-danger');\n break;\n case 'info':\n icon.classList.add('fa', 'fa-info-circle', 'text-info');\n break;\n default:\n break;\n }\n if (icon.classList.contains('fa')) {\n contentDiv.appendChild(icon);\n }\n }\n\n if (title != null) {\n const titleDiv = document.createElement('div');\n titleDiv.classList.add('swal-title');\n titleDiv.appendChild(document.createTextNode(title));\n contentDiv.appendChild(titleDiv);\n }\n\n if (text != null) {\n const textDiv = document.createElement('div');\n textDiv.classList.add('swal-text');\n textDiv.appendChild(document.createTextNode(text));\n contentDiv.appendChild(textDiv);\n }\n\n const confirmed = buttons.length > 1 ? await swal({\n content: { element: contentDiv },\n buttons: buttons,\n }) : await (swal as any)({\n content: { element: contentDiv },\n button: buttons[0],\n });\n return confirmed;\n }\n\n eventTrack(action: string, label?: string, options?: any) {\n this.messagingService.send('analyticsEventTrack', {\n action: action,\n label: label,\n options: options,\n });\n }\n\n isDev(): boolean {\n return process.env.ENV === 'development';\n }\n\n isSelfHost(): boolean {\n return process.env.SELF_HOST.toString() === 'true';\n }\n\n copyToClipboard(text: string, options?: any): void {\n let win = window;\n let doc = window.document;\n if (options && (options.window || options.win)) {\n win = options.window || options.win;\n doc = win.document;\n } else if (options && options.doc) {\n doc = options.doc;\n }\n if ((win as any).clipboardData && (win as any).clipboardData.setData) {\n // IE specific code path to prevent textarea being shown while dialog is visible.\n (win as any).clipboardData.setData('Text', text);\n } else if (doc.queryCommandSupported && doc.queryCommandSupported('copy')) {\n const textarea = doc.createElement('textarea');\n textarea.textContent = text;\n // Prevent scrolling to bottom of page in MS Edge.\n textarea.style.position = 'fixed';\n let copyEl = doc.body;\n // For some reason copy command won't work in Firefox when modal is open if appending to body\n if (this.isFirefox() && doc.body.classList.contains('modal-open')) {\n copyEl = doc.body.querySelector('.modal');\n }\n copyEl.appendChild(textarea);\n textarea.select();\n try {\n // Security exception may be thrown by some browsers.\n doc.execCommand('copy');\n } catch (e) {\n // tslint:disable-next-line\n console.warn('Copy to clipboard failed.', e);\n } finally {\n copyEl.removeChild(textarea);\n }\n }\n }\n}\n","import { AppIdService } from '../abstractions/appId.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from '../services/constants.service';\r\n\r\nimport { DeviceType } from '../enums/deviceType';\r\n\r\nconst GaObj = 'ga';\r\n\r\nexport const AnalyticsIds = {\r\n [DeviceType.ChromeExtension]: 'UA-81915606-6',\r\n [DeviceType.FirefoxExtension]: 'UA-81915606-7',\r\n [DeviceType.OperaExtension]: 'UA-81915606-8',\r\n [DeviceType.EdgeExtension]: 'UA-81915606-9',\r\n [DeviceType.VivaldiExtension]: 'UA-81915606-15',\r\n [DeviceType.SafariExtension]: 'UA-81915606-16',\r\n [DeviceType.WindowsDesktop]: 'UA-81915606-17',\r\n [DeviceType.LinuxDesktop]: 'UA-81915606-19',\r\n [DeviceType.MacOsDesktop]: 'UA-81915606-18',\r\n};\r\n\r\nexport class Analytics {\r\n private gaTrackingId: string = null;\r\n private defaultDisabled = false;\r\n private appVersion: string;\r\n\r\n constructor(win: Window, private gaFilter?: () => boolean,\r\n private platformUtilsService?: PlatformUtilsService, private storageService?: StorageService,\r\n private appIdService?: AppIdService, private dependencyResolver?: () => any) {\r\n if (dependencyResolver != null) {\r\n const deps = dependencyResolver();\r\n if (platformUtilsService == null && deps.platformUtilsService) {\r\n this.platformUtilsService = deps.platformUtilsService as PlatformUtilsService;\r\n }\r\n if (storageService == null && deps.storageService) {\r\n this.storageService = deps.storageService as StorageService;\r\n }\r\n if (appIdService == null && deps.appIdService) {\r\n this.appIdService = deps.appIdService as AppIdService;\r\n }\r\n }\r\n\r\n this.appVersion = this.platformUtilsService.getApplicationVersion();\r\n this.defaultDisabled = this.platformUtilsService.getDevice() === DeviceType.FirefoxExtension ||\r\n this.platformUtilsService.isMacAppStore();\r\n this.gaTrackingId = this.platformUtilsService.analyticsId();\r\n\r\n (win as any).GoogleAnalyticsObject = GaObj;\r\n (win as any)[GaObj] = async (action: string, param1: any, param2?: any) => {\r\n await this.ga(action, param1, param2);\r\n };\r\n }\r\n\r\n async ga(action: string, param1: any, param2?: any) {\r\n return;\r\n\r\n if (this.gaFilter != null && this.gaFilter()) {\r\n return;\r\n }\r\n\r\n const disabled = await this.storageService.get(ConstantsService.disableGaKey);\r\n if ((this.defaultDisabled && disabled == null) || disabled != null && disabled) {\r\n return;\r\n }\r\n\r\n if (action !== 'send' || !param1) {\r\n return;\r\n }\r\n\r\n const gaAnonAppId = await this.appIdService.getAnonymousAppId();\r\n const version = encodeURIComponent(this.appVersion);\r\n let message = 'v=1&tid=' + this.gaTrackingId + '&cid=' + gaAnonAppId + '&cd1=' + version;\r\n\r\n if (param1 === 'pageview' && param2) {\r\n message += this.gaTrackPageView(param2);\r\n } else if (typeof param1 === 'object' && param1.hitType === 'pageview') {\r\n message += this.gaTrackPageView(param1.page);\r\n } else if (param1 === 'event' && param2) {\r\n message += this.gaTrackEvent(param2);\r\n } else if (typeof param1 === 'object' && param1.hitType === 'event') {\r\n message += this.gaTrackEvent(param1);\r\n }\r\n\r\n const request = new XMLHttpRequest();\r\n request.open('POST', 'https://www.google-analytics.com/collect', true);\r\n request.send(message);\r\n }\r\n\r\n private gaTrackEvent(options: any) {\r\n return '&t=event&ec=' + (options.eventCategory ? encodeURIComponent(options.eventCategory) : 'Event') +\r\n '&ea=' + encodeURIComponent(options.eventAction) +\r\n (options.eventLabel ? '&el=' + encodeURIComponent(options.eventLabel) : '') +\r\n (options.eventValue ? '&ev=' + encodeURIComponent(options.eventValue) : '') +\r\n (options.page ? '&dp=' + this.cleanPagePath(options.page) : '');\r\n }\r\n\r\n private gaTrackPageView(pagePath: string) {\r\n return '&t=pageview&dp=' + this.cleanPagePath(pagePath);\r\n }\r\n\r\n private cleanPagePath(pagePath: string) {\r\n const paramIndex = pagePath.indexOf('?');\r\n if (paramIndex > -1) {\r\n pagePath = pagePath.substring(0, paramIndex);\r\n }\r\n if (pagePath.indexOf('!/') === 0 || pagePath.indexOf('#/') === 0) {\r\n pagePath = pagePath.substring(1);\r\n }\r\n const pathParts = pagePath.split('/');\r\n const newPathParts: string[] = [];\r\n pathParts.forEach((p) => {\r\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)) {\r\n newPathParts.push('__guid__');\r\n } else {\r\n newPathParts.push(p);\r\n }\r\n });\r\n return encodeURIComponent(newPathParts.join('/'));\r\n }\r\n}\r\n","import * as papa from 'papaparse';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Collection } from '../models/domain/collection';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\n\r\nimport { CipherWithIds as CipherExport } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId as CollectionExport } from '../models/export/collectionWithId';\r\nimport { FolderWithId as FolderExport } from '../models/export/folderWithId';\r\n\r\nexport class ExportService implements ExportServiceAbstraction {\r\n constructor(private folderService: FolderService, private cipherService: CipherService,\r\n private apiService: ApiService) { }\r\n\r\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\r\n let decFolders: FolderView[] = [];\r\n let decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\r\n decFolders = folders;\r\n }));\r\n\r\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\r\n decCiphers = ciphers;\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const foldersMap = new Map();\r\n decFolders.forEach((f) => {\r\n foldersMap.set(f.id, f);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ?\r\n foldersMap.get(c.folderId).name : null;\r\n cipher.favorite = c.favorite ? 1 : null;\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n folders: [],\r\n items: [],\r\n };\r\n\r\n decFolders.forEach((f) => {\r\n if (f.id == null) {\r\n return;\r\n }\r\n const folder = new FolderExport();\r\n folder.build(f);\r\n jsonDoc.folders.push(folder);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n cipher.collectionIds = null;\r\n jsonDoc.items.push(cipher);\r\n });\r\n\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\r\n const decCollections: CollectionView[] = [];\r\n const decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\r\n const collectionPromises: any = [];\r\n if (collections != null && collections.data != null && collections.data.length > 0) {\r\n collections.data.forEach((c) => {\r\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\r\n collectionPromises.push(collection.decrypt().then((decCol) => {\r\n decCollections.push(decCol);\r\n }));\r\n });\r\n }\r\n return Promise.all(collectionPromises);\r\n }));\r\n\r\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\r\n const cipherPromises: any = [];\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\r\n ciphers.data.forEach((c) => {\r\n const cipher = new Cipher(new CipherData(c));\r\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\r\n decCiphers.push(decCipher);\r\n }));\r\n });\r\n }\r\n return Promise.all(cipherPromises);\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const collectionsMap = new Map();\r\n decCollections.forEach((c) => {\r\n collectionsMap.set(c.id, c);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.collections = [];\r\n if (c.collectionIds != null) {\r\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\r\n .map((id) => collectionsMap.get(id).name);\r\n }\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n collections: [],\r\n items: [],\r\n };\r\n\r\n decCollections.forEach((c) => {\r\n const collection = new CollectionExport();\r\n collection.build(c);\r\n jsonDoc.collections.push(collection);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n jsonDoc.items.push(cipher);\r\n });\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n getFileName(prefix: string = null, extension: string = 'csv'): string {\r\n const now = new Date();\r\n const dateString =\r\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\r\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\r\n this.padNumber(now.getSeconds(), 2);\r\n\r\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.' + extension;\r\n }\r\n\r\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\r\n const numString = num.toString();\r\n return numString.length >= width ? numString :\r\n new Array(width - numString.length + 1).join(padCharacter) + numString;\r\n }\r\n\r\n private buildCommonCipher(cipher: any, c: CipherView) {\r\n cipher.type = null;\r\n cipher.name = c.name;\r\n cipher.notes = c.notes;\r\n cipher.fields = null;\r\n // Login props\r\n cipher.login_uri = null;\r\n cipher.login_username = null;\r\n cipher.login_password = null;\r\n cipher.login_totp = null;\r\n\r\n if (c.fields) {\r\n c.fields.forEach((f: any) => {\r\n if (!cipher.fields) {\r\n cipher.fields = '';\r\n } else {\r\n cipher.fields += '\\n';\r\n }\r\n\r\n cipher.fields += ((f.name || '') + ': ' + f.value);\r\n });\r\n }\r\n\r\n switch (c.type) {\r\n case CipherType.Login:\r\n cipher.type = 'login';\r\n cipher.login_username = c.login.username;\r\n cipher.login_password = c.login.password;\r\n cipher.login_totp = c.login.totp;\r\n\r\n if (c.login.uris) {\r\n cipher.login_uri = [];\r\n c.login.uris.forEach((u) => {\r\n cipher.login_uri.push(u.uri);\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n cipher.type = 'note';\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n return cipher;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nimport { Card } from './card';\r\nimport { Field } from './field';\r\nimport { Identity } from './identity';\r\nimport { Login } from './login';\r\nimport { SecureNote } from './secureNote';\r\n\r\nexport class Cipher {\r\n static template(): Cipher {\r\n const req = new Cipher();\r\n req.organizationId = null;\r\n req.folderId = null;\r\n req.type = CipherType.Login;\r\n req.name = 'Item name';\r\n req.notes = 'Some notes about this item.';\r\n req.favorite = false;\r\n req.fields = [];\r\n req.login = null;\r\n req.secureNote = null;\r\n req.card = null;\r\n req.identity = null;\r\n return req;\r\n }\r\n\r\n static toView(req: Cipher, view = new CipherView()) {\r\n view.type = req.type;\r\n view.folderId = req.folderId;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n view.name = req.name;\r\n view.notes = req.notes;\r\n view.favorite = req.favorite;\r\n\r\n if (req.fields != null) {\r\n view.fields = req.fields.map((f) => Field.toView(f));\r\n }\r\n\r\n switch (req.type) {\r\n case CipherType.Login:\r\n view.login = Login.toView(req.login);\r\n break;\r\n case CipherType.SecureNote:\r\n view.secureNote = SecureNote.toView(req.secureNote);\r\n break;\r\n case CipherType.Card:\r\n view.card = Card.toView(req.card);\r\n break;\r\n case CipherType.Identity:\r\n view.identity = Identity.toView(req.identity);\r\n break;\r\n }\r\n\r\n return view;\r\n }\r\n\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n fields: Field[];\r\n login: Login;\r\n secureNote: SecureNote;\r\n card: Card;\r\n identity: Identity;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.organizationId = o.organizationId;\r\n this.folderId = o.folderId;\r\n this.type = o.type;\r\n this.name = o.name;\r\n this.notes = o.notes;\r\n this.favorite = o.favorite;\r\n\r\n if (o.fields != null) {\r\n this.fields = o.fields.map((f) => new Field(f));\r\n }\r\n\r\n switch (o.type) {\r\n case CipherType.Login:\r\n this.login = new Login(o.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNote(o.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new Card(o.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new Identity(o.identity);\r\n break;\r\n }\r\n }\r\n}\r\n","import { CardView } from '../view/cardView';\r\n\r\nexport class Card {\r\n static template(): Card {\r\n const req = new Card();\r\n req.cardholderName = 'John Doe';\r\n req.brand = 'visa';\r\n req.number = '4242424242424242';\r\n req.expMonth = '04';\r\n req.expYear = '2023';\r\n req.code = '123';\r\n return req;\r\n }\r\n\r\n static toView(req: Card, view = new CardView()) {\r\n view.cardholderName = req.cardholderName;\r\n view.brand = req.brand;\r\n view.number = req.number;\r\n view.expMonth = req.expMonth;\r\n view.expYear = req.expYear;\r\n view.code = req.code;\r\n return view;\r\n }\r\n\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(o?: CardView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.cardholderName = o.cardholderName;\r\n this.brand = o.brand;\r\n this.number = o.number;\r\n this.expMonth = o.expMonth;\r\n this.expYear = o.expYear;\r\n this.code = o.code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { FieldView } from '../view/fieldView';\r\n\r\nexport class Field {\r\n static template(): Field {\r\n const req = new Field();\r\n req.name = 'Field name';\r\n req.value = 'Some value';\r\n req.type = FieldType.Text;\r\n return req;\r\n }\r\n\r\n static toView(req: Field, view = new FieldView()) {\r\n view.type = req.type;\r\n view.value = req.value;\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(o?: FieldView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.name = o.name;\r\n this.value = o.value;\r\n this.type = o.type;\r\n }\r\n}\r\n","import { IdentityView } from '../view/identityView';\r\n\r\nexport class Identity {\r\n static template(): Identity {\r\n const req = new Identity();\r\n req.title = 'Mr';\r\n req.firstName = 'John';\r\n req.middleName = 'William';\r\n req.lastName = 'Doe';\r\n req.address1 = '123 Any St';\r\n req.address2 = 'Apt #123';\r\n req.address3 = null;\r\n req.city = 'New York';\r\n req.state = 'NY';\r\n req.postalCode = '10001';\r\n req.country = 'US';\r\n req.company = 'Acme Inc.';\r\n req.email = 'john@company.com';\r\n req.phone = '5555551234';\r\n req.ssn = '000-123-4567';\r\n req.username = 'jdoe';\r\n req.passportNumber = 'US-123456789';\r\n req.licenseNumber = 'D123-12-123-12333';\r\n return req;\r\n }\r\n\r\n static toView(req: Identity, view = new IdentityView()) {\r\n view.title = req.title;\r\n view.firstName = req.firstName;\r\n view.middleName = req.middleName;\r\n view.lastName = req.lastName;\r\n view.address1 = req.address1;\r\n view.address2 = req.address2;\r\n view.address3 = req.address3;\r\n view.city = req.city;\r\n view.state = req.state;\r\n view.postalCode = req.postalCode;\r\n view.country = req.country;\r\n view.company = req.company;\r\n view.email = req.email;\r\n view.phone = req.phone;\r\n view.ssn = req.ssn;\r\n view.username = req.username;\r\n view.passportNumber = req.passportNumber;\r\n view.licenseNumber = req.licenseNumber;\r\n return view;\r\n }\r\n\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(o?: IdentityView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.title = o.title;\r\n this.firstName = o.firstName;\r\n this.middleName = o.middleName;\r\n this.lastName = o.lastName;\r\n this.address1 = o.address1;\r\n this.address2 = o.address2;\r\n this.address3 = o.address3;\r\n this.city = o.city;\r\n this.state = o.state;\r\n this.postalCode = o.postalCode;\r\n this.country = o.country;\r\n this.company = o.company;\r\n this.email = o.email;\r\n this.phone = o.phone;\r\n this.ssn = o.ssn;\r\n this.username = o.username;\r\n this.passportNumber = o.passportNumber;\r\n this.licenseNumber = o.licenseNumber;\r\n }\r\n}\r\n","import { LoginUri } from './loginUri';\r\n\r\nimport { LoginView } from '../view/loginView';\r\n\r\nexport class Login {\r\n static template(): Login {\r\n const req = new Login();\r\n req.uris = [];\r\n req.username = 'jdoe';\r\n req.password = 'myp@ssword123';\r\n req.totp = 'JBSWY3DPEHPK3PXP';\r\n return req;\r\n }\r\n\r\n static toView(req: Login, view = new LoginView()) {\r\n if (req.uris != null) {\r\n view.uris = req.uris.map((u) => LoginUri.toView(u));\r\n }\r\n view.username = req.username;\r\n view.password = req.password;\r\n view.totp = req.totp;\r\n return view;\r\n }\r\n\r\n uris: LoginUri[];\r\n username: string;\r\n password: string;\r\n totp: string;\r\n\r\n constructor(o?: LoginView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n if (o.uris != null) {\r\n this.uris = o.uris.map((u) => new LoginUri(u));\r\n }\r\n\r\n this.username = o.username;\r\n this.password = o.password;\r\n this.totp = o.totp;\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { LoginUriView } from '../view/loginUriView';\r\n\r\nexport class LoginUri {\r\n static template(): LoginUri {\r\n const req = new LoginUri();\r\n req.uri = 'https://google.com';\r\n req.match = null;\r\n return req;\r\n }\r\n\r\n static toView(req: LoginUri, view = new LoginUriView()) {\r\n view.uri = req.uri;\r\n view.match = req.match;\r\n return view;\r\n }\r\n\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(o?: LoginUriView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.uri = o.uri;\r\n this.match = o.match;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { SecureNoteView } from '../view/secureNoteView';\r\n\r\nexport class SecureNote {\r\n static template(): SecureNote {\r\n const req = new SecureNote();\r\n req.type = SecureNoteType.Generic;\r\n return req;\r\n }\r\n\r\n static toView(req: SecureNote, view = new SecureNoteView()) {\r\n view.type = req.type;\r\n return view;\r\n }\r\n\r\n type: SecureNoteType;\r\n\r\n constructor(o?: SecureNoteView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.type = o.type;\r\n }\r\n}\r\n","import { CollectionView } from '../view/collectionView';\r\n\r\nexport class Collection {\r\n static template(): Collection {\r\n const req = new Collection();\r\n req.organizationId = '00000000-0000-0000-0000-000000000000';\r\n req.name = 'Collection name';\r\n return req;\r\n }\r\n\r\n static toView(req: Collection, view = new CollectionView()) {\r\n view.name = req.name;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n return view;\r\n }\r\n\r\n organizationId: string;\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.organizationId = o.organizationId;\r\n this.name = o.name;\r\n }\r\n}\r\n","import { FolderView } from '../view/folderView';\r\n\r\nexport class Folder {\r\n static template(): Folder {\r\n const req = new Folder();\r\n req.name = 'Folder name';\r\n return req;\r\n }\r\n\r\n static toView(req: Folder, view = new FolderView()) {\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.name = o.name;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport {\n ImportOption,\n ImportService as ImportServiceAbstraction,\n} from '../abstractions/import.service';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { Utils } from '../misc/utils';\n\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KvpRequest } from '../models/request/kvpRequest';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { AscendoCsvImporter } from '../importers/ascendoCsvImporter';\nimport { AvastCsvImporter } from '../importers/avastCsvImporter';\nimport { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BitwardenJsonImporter } from '../importers/bitwardenJsonImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneJsonImporter } from '../importers/dashlaneJsonImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\nimport { EnpassJsonImporter } from '../importers/enpassJsonImporter';\nimport { FirefoxCsvImporter } from '../importers/firefoxCsvImporter';\nimport { FSecureFskImporter } from '../importers/fsecureFskImporter';\nimport { GnomeJsonImporter } from '../importers/gnomeJsonImporter';\nimport { Importer } from '../importers/importer';\nimport { KasperskyTxtImporter } from '../importers/kasperskyTxtImporter';\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 { RememBearCsvImporter } from '../importers/rememBearCsvImporter';\nimport { RoboFormCsvImporter } from '../importers/roboformCsvImporter';\nimport { SafeInCloudXmlImporter } from '../importers/safeInCloudXmlImporter';\nimport { SaferPassCsvImporter } from '../importers/saferpassCsvImport';\nimport { SplashIdCsvImporter } from '../importers/splashIdCsvImporter';\nimport { StickyPasswordXmlImporter } from '../importers/stickyPasswordXmlImporter';\nimport { TrueKeyCsvImporter } from '../importers/truekeyCsvImporter';\nimport { UpmCsvImporter } from '../importers/upmCsvImporter';\nimport { ZohoVaultCsvImporter } from '../importers/zohoVaultCsvImporter';\n\nexport class ImportService implements ImportServiceAbstraction {\n featuredImportOptions = [\n { id: 'bitwardenjson', name: 'Bitwarden (json)' },\n { id: 'bitwardencsv', name: 'Bitwarden (csv)' },\n { id: 'lastpasscsv', name: 'LastPass (csv)' },\n { id: 'chromecsv', name: 'Chrome (csv)' },\n { id: 'firefoxcsv', name: 'Firefox (csv)' },\n { id: 'keepass2xml', name: 'KeePass 2 (xml)' },\n { id: '1password1pif', name: '1Password (1pif)' },\n { id: 'dashlanejson', name: 'Dashlane (json)' },\n ];\n\n regularImportOptions: ImportOption[] = [\n { id: 'keepassxcsv', name: 'KeePassX (csv)' },\n { id: '1passwordwincsv', name: '1Password 6 and 7 Windows (csv)' },\n { id: 'roboformcsv', name: 'RoboForm (csv)' },\n { id: 'keepercsv', name: 'Keeper (csv)' },\n { id: 'enpasscsv', name: 'Enpass (csv)' },\n { id: 'enpassjson', name: 'Enpass (json)' },\n { id: 'safeincloudxml', name: 'SafeInCloud (xml)' },\n { id: 'pwsafexml', name: 'Password Safe (xml)' },\n { id: 'stickypasswordxml', name: 'Sticky Password (xml)' },\n { id: 'msecurecsv', name: 'mSecure (csv)' },\n { id: 'truekeycsv', name: 'True Key (csv)' },\n { id: 'passwordbossjson', name: 'Password Boss (json)' },\n { id: 'zohovaultcsv', name: 'Zoho Vault (csv)' },\n { id: 'splashidcsv', name: 'SplashID (csv)' },\n { id: 'passworddragonxml', name: 'Password Dragon (xml)' },\n { id: 'padlockcsv', name: 'Padlock (csv)' },\n { id: 'passboltcsv', name: 'Passbolt (csv)' },\n { id: 'clipperzhtml', name: 'Clipperz (html)' },\n { id: 'aviracsv', name: 'Avira (csv)' },\n { id: 'saferpasscsv', name: 'SaferPass (csv)' },\n { id: 'upmcsv', name: 'Universal Password Manager (csv)' },\n { id: 'ascendocsv', name: 'Ascendo DataVault (csv)' },\n { id: 'meldiumcsv', name: 'Meldium (csv)' },\n { id: 'passkeepcsv', name: 'PassKeep (csv)' },\n { id: 'operacsv', name: 'Opera (csv)' },\n { id: 'vivaldicsv', name: 'Vivaldi (csv)' },\n { id: 'gnomejson', name: 'GNOME Passwords and Keys/Seahorse (json)' },\n { id: 'blurcsv', name: 'Blur (csv)' },\n { id: 'passwordagentcsv', name: 'Password Agent (csv)' },\n { id: 'passpackcsv', name: 'Passpack (csv)' },\n { id: 'passmanjson', name: 'Passman (json)' },\n { id: 'avastcsv', name: 'Avast Passwords (csv)' },\n { id: 'fsecurefsk', name: 'F-Secure KEY (fsk)' },\n { id: 'kasperskytxt', name: 'Kaspersky Password Manager (txt)' },\n { id: 'remembearcsv', name: 'RememBear (csv)' },\n ];\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private apiService: ApiService, private i18nService: I18nService,\n private collectionService: CollectionService) { }\n\n getImportOptions(): ImportOption[] {\n return this.featuredImportOptions.concat(this.regularImportOptions);\n }\n\n async import(importer: Importer, fileContents: string, organizationId: string = null): Promise {\n const importResult = await importer.parse(fileContents);\n if (importResult.success) {\n if (importResult.folders.length === 0 && importResult.ciphers.length === 0) {\n return new Error(this.i18nService.t('importNothingError'));\n } else if (importResult.ciphers.length > 0) {\n const halfway = Math.floor(importResult.ciphers.length / 2);\n const last = importResult.ciphers.length - 1;\n\n if (this.badData(importResult.ciphers[0]) &&\n this.badData(importResult.ciphers[halfway]) &&\n this.badData(importResult.ciphers[last])) {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n await this.postImport(importResult, organizationId);\n return null;\n } else {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n\n getImporter(format: string, organization = false): Importer {\n const importer = this.getImporterInstance(format);\n if (importer == null) {\n return null;\n }\n importer.organization = organization;\n return importer;\n }\n\n private getImporterInstance(format: string) {\n if (format == null || format === '') {\n return null;\n }\n\n switch (format) {\n case 'bitwardencsv':\n return new BitwardenCsvImporter();\n case 'bitwardenjson':\n return new BitwardenJsonImporter();\n case 'lastpasscsv':\n case 'passboltcsv':\n return new LastPassCsvImporter();\n case 'keepassxcsv':\n return new KeePassXCsvImporter();\n case 'aviracsv':\n return new AviraCsvImporter();\n case 'blurcsv':\n return new BlurCsvImporter();\n case 'safeincloudxml':\n return new SafeInCloudXmlImporter();\n case 'padlockcsv':\n return new PadlockCsvImporter();\n case 'keepass2xml':\n return new KeePass2XmlImporter();\n case 'chromecsv':\n case 'operacsv':\n case 'vivaldicsv':\n return new ChromeCsvImporter();\n case 'firefoxcsv':\n return new FirefoxCsvImporter();\n case 'upmcsv':\n return new UpmCsvImporter();\n case 'saferpasscsv':\n return new SaferPassCsvImporter();\n case 'meldiumcsv':\n return new MeldiumCsvImporter();\n case '1password1pif':\n return new OnePassword1PifImporter();\n case '1passwordwincsv':\n return new OnePasswordWinCsvImporter();\n case 'keepercsv':\n return new KeeperCsvImporter();\n case 'passworddragonxml':\n return new PasswordDragonXmlImporter();\n case 'enpasscsv':\n return new EnpassCsvImporter();\n case 'enpassjson':\n return new EnpassJsonImporter();\n case 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanejson':\n return new DashlaneJsonImporter();\n case 'msecurecsv':\n return new MSecureCsvImporter();\n case 'stickypasswordxml':\n return new StickyPasswordXmlImporter();\n case 'truekeycsv':\n return new TrueKeyCsvImporter();\n case 'clipperzhtml':\n return new ClipperzHtmlImporter();\n case 'roboformcsv':\n return new RoboFormCsvImporter();\n case 'ascendocsv':\n return new AscendoCsvImporter();\n case 'passwordbossjson':\n return new PasswordBossJsonImporter();\n case 'zohovaultcsv':\n return new ZohoVaultCsvImporter();\n case 'splashidcsv':\n return new SplashIdCsvImporter();\n case 'passkeepcsv':\n return new PassKeepCsvImporter();\n case 'gnomejson':\n return new GnomeJsonImporter();\n case 'passwordagentcsv':\n return new PasswordAgentCsvImporter();\n case 'passpackcsv':\n return new PasspackCsvImporter();\n case 'passmanjson':\n return new PassmanJsonImporter();\n case 'avastcsv':\n return new AvastCsvImporter();\n case 'fsecurefsk':\n return new FSecureFskImporter();\n case 'kasperskytxt':\n return new KasperskyTxtImporter();\n case 'remembearcsv':\n return new RememBearCsvImporter();\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.type === CipherType.Login && c.login != null && Utils.isNullOrWhitespace(c.login.password));\n }\n}\n","import { CipherRequest } from './cipherRequest';\nimport { FolderRequest } from './folderRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportCiphersRequest {\n ciphers: CipherRequest[] = [];\n folders: FolderRequest[] = [];\n folderRelationships: Array> = [];\n}\n","import { CipherRequest } from './cipherRequest';\nimport { CollectionRequest } from './collectionRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportOrganizationCiphersRequest {\n ciphers: CipherRequest[] = [];\n collections: CollectionRequest[] = [];\n collectionRelationships: Array> = [];\n}\n","export class KvpRequest {\n key: TK;\n value: TV;\n\n constructor(key: TK, value: TV) {\n this.key = key;\n this.value = value;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class AscendoCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 2) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n\r\n if (value.length > 2 && (value.length % 2) === 0) {\r\n for (let i = 0; i < value.length - 2; i += 2) {\r\n const val: string = value[i + 2];\r\n const field: string = value[i + 1];\r\n if (this.isNullOrWhitespace(val) || this.isNullOrWhitespace(field)) {\r\n continue;\r\n }\r\n\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(val);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(val);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n } else {\r\n this.processKvp(cipher, field, val);\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AvastCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.login.uris = this.makeUriArray(value.web);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.login);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AviraCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name,\n this.getValueOrDefault(this.nameFromUrl(value.website), '--'));\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.username) && !this.isNullOrWhitespace(value.secondary_username)) {\n cipher.login.username = value.secondary_username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.notes = this.getValueOrDefault(value.secondary_username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class BitwardenCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.organization && !this.isNullOrWhitespace(value.collections)) {\r\n const collections = (value.collections as string).split(',');\r\n collections.forEach((col) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === col) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = col;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization) {\r\n this.processFolder(result, value.folder);\r\n }\r\n\r\n const cipher = new CipherView();\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.favorite, '0') !== '0' ? true : false;\r\n cipher.type = CipherType.Login;\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n\r\n if (!this.isNullOrWhitespace(value.fields)) {\r\n const fields = this.splitNewLine(value.fields);\r\n for (let i = 0; i < fields.length; i++) {\r\n if (this.isNullOrWhitespace(fields[i])) {\r\n continue;\r\n }\r\n\r\n const delimPosition = fields[i].lastIndexOf(': ');\r\n if (delimPosition === -1) {\r\n continue;\r\n }\r\n\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n\r\n const field = new FieldView();\r\n field.name = fields[i].substr(0, delimPosition);\r\n field.value = null;\r\n field.type = FieldType.Text;\r\n if (fields[i].length > (delimPosition + 2)) {\r\n field.value = fields[i].substr(delimPosition + 2);\r\n }\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n const valueType = value.type != null ? value.type.toLowerCase() : null;\r\n switch (valueType) {\r\n case 'note':\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n break;\r\n default:\r\n cipher.type = CipherType.Login;\r\n cipher.login = new LoginView();\r\n cipher.login.totp = this.getValueOrDefault(value.login_totp || value.totp);\r\n cipher.login.username = this.getValueOrDefault(value.login_username || value.username);\r\n cipher.login.password = this.getValueOrDefault(value.login_password || value.password);\r\n const uris = this.parseSingleRowCsv(value.login_uri || value.uri);\r\n cipher.login.uris = this.makeUriArray(uris);\r\n break;\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherWithIds } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId } from '../models/export/collectionWithId';\r\nimport { FolderWithId } from '../models/export/folderWithId';\r\n\r\nexport class BitwardenJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const groupingsMap = new Map();\r\n if (this.organization && results.collections != null) {\r\n results.collections.forEach((c: CollectionWithId) => {\r\n const collection = CollectionWithId.toView(c);\r\n if (collection != null) {\r\n collection.id = null;\r\n collection.organizationId = null;\r\n groupingsMap.set(c.id, result.collections.length);\r\n result.collections.push(collection);\r\n }\r\n });\r\n } else if (!this.organization && results.folders != null) {\r\n results.folders.forEach((f: FolderWithId) => {\r\n const folder = FolderWithId.toView(f);\r\n if (folder != null) {\r\n folder.id = null;\r\n groupingsMap.set(f.id, result.folders.length);\r\n result.folders.push(folder);\r\n }\r\n });\r\n }\r\n\r\n results.items.forEach((c: CipherWithIds) => {\r\n const cipher = CipherWithIds.toView(c);\r\n // reset ids incase they were set for some reason\r\n cipher.id = null;\r\n cipher.folderId = null;\r\n cipher.organizationId = null;\r\n cipher.collectionIds = null;\r\n\r\n if (!this.organization && c.folderId != null && groupingsMap.has(c.folderId)) {\r\n result.folderRelationships.push([result.ciphers.length, groupingsMap.get(c.folderId)]);\r\n } else if (this.organization && c.collectionIds != null) {\r\n c.collectionIds.forEach((cId) => {\r\n if (groupingsMap.has(cId)) {\r\n result.collectionRelationships.push([result.ciphers.length, groupingsMap.get(cId)]);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class BlurCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.label === 'null') {\n value.label = null;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.label,\n this.getValueOrDefault(this.nameFromUrl(value.domain), '--'));\n cipher.login.uris = this.makeUriArray(value.domain);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.email) && !this.isNullOrWhitespace(value.username)) {\n cipher.login.username = value.username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.email);\n cipher.notes = this.getValueOrDefault(value.username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class ChromeCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class ClipperzHtmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const textarea = doc.querySelector('textarea');\r\n if (textarea == null || this.isNullOrWhitespace(textarea.textContent)) {\r\n result.errorMessage = 'Missing textarea.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const entries = JSON.parse(textarea.textContent);\r\n entries.forEach((entry: any) => {\r\n const cipher = this.initLoginCipher();\r\n if (!this.isNullOrWhitespace(entry.label)) {\r\n cipher.name = entry.label.split(' ')[0];\r\n }\r\n if (entry.data != null && !this.isNullOrWhitespace(entry.data.notes)) {\r\n cipher.notes = entry.data.notes.split('\\\\n').join('\\n');\r\n }\r\n\r\n if (entry.currentVersion != null && entry.currentVersion.fields != null) {\r\n for (const property in entry.currentVersion.fields) {\r\n if (!entry.currentVersion.fields.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n\r\n const field = entry.currentVersion.fields[property];\r\n const actionType = field.actionType != null ? field.actionType.toLowerCase() : null;\r\n switch (actionType) {\r\n case 'password':\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n break;\r\n case 'email':\r\n case 'username':\r\n case 'user':\r\n case 'name':\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n break;\r\n case 'url':\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n break;\r\n default:\r\n const labelLower = field.label != null ? field.label.toLowerCase() : null;\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\nimport { IdentityView } from '../models/view/identityView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nconst HandledResults = new Set(['ADDRESS', 'AUTHENTIFIANT', 'BANKSTATEMENT', 'IDCARD', 'IDENTITY',\n 'PAYMENTMEANS_CREDITCARD', 'PAYMENTMEAN_PAYPAL', 'EMAIL']);\n\nexport class DashlaneJsonImporter extends BaseImporter implements Importer {\n private result: ImportResult;\n\n parse(data: string): ImportResult {\n this.result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.length === 0) {\n this.result.success = false;\n return this.result;\n }\n\n if (results.ADDRESS != null) {\n this.processAddress(results.ADDRESS);\n }\n if (results.AUTHENTIFIANT != null) {\n this.processAuth(results.AUTHENTIFIANT);\n }\n if (results.BANKSTATEMENT != null) {\n this.processNote(results.BANKSTATEMENT, 'BankAccountName');\n }\n if (results.IDCARD != null) {\n this.processNote(results.IDCARD, 'Fullname');\n }\n if (results.PAYMENTMEANS_CREDITCARD != null) {\n this.processCard(results.PAYMENTMEANS_CREDITCARD);\n }\n if (results.IDENTITY != null) {\n this.processIdentity(results.IDENTITY);\n }\n\n for (const key in results) {\n if (results.hasOwnProperty(key) && !HandledResults.has(key)) {\n this.processNote(results[key], null, 'Generic Note');\n }\n }\n\n this.result.success = true;\n return this.result;\n }\n\n private processAuth(results: any[]) {\n results.forEach((credential: any) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(credential.title);\n\n cipher.login.username = this.getValueOrDefault(credential.login,\n this.getValueOrDefault(credential.secondaryLogin));\n if (this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = this.getValueOrDefault(credential.email);\n } else if (!this.isNullOrWhitespace(credential.email)) {\n cipher.notes = ('Email: ' + credential.email + '\\n');\n }\n\n cipher.login.password = this.getValueOrDefault(credential.password);\n cipher.login.uris = this.makeUriArray(credential.domain);\n cipher.notes += this.getValueOrDefault(credential.note, '');\n\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processIdentity(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.identity = new IdentityView();\n cipher.type = CipherType.Identity;\n cipher.name = this.getValueOrDefault(obj.fullName, '');\n const nameParts = cipher.name.split(' ');\n if (nameParts.length > 0) {\n cipher.identity.firstName = this.getValueOrDefault(nameParts[0]);\n }\n if (nameParts.length === 2) {\n cipher.identity.lastName = this.getValueOrDefault(nameParts[1]);\n } else if (nameParts.length === 3) {\n cipher.identity.middleName = this.getValueOrDefault(nameParts[1]);\n cipher.identity.lastName = this.getValueOrDefault(nameParts[2]);\n }\n cipher.identity.username = this.getValueOrDefault(obj.pseudo);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processAddress(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.identity = new IdentityView();\n cipher.type = CipherType.Identity;\n cipher.name = this.getValueOrDefault(obj.addressName);\n cipher.identity.address1 = this.getValueOrDefault(obj.addressFull);\n cipher.identity.city = this.getValueOrDefault(obj.city);\n cipher.identity.state = this.getValueOrDefault(obj.state);\n cipher.identity.postalCode = this.getValueOrDefault(obj.zipcode);\n cipher.identity.country = this.getValueOrDefault(obj.country);\n if (cipher.identity.country != null) {\n cipher.identity.country = cipher.identity.country.toUpperCase();\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processCard(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.card = new CardView();\n cipher.type = CipherType.Card;\n cipher.name = this.getValueOrDefault(obj.bank);\n cipher.card.number = this.getValueOrDefault(obj.cardNumber);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n cipher.card.cardholderName = this.getValueOrDefault(obj.owner);\n if (!this.isNullOrWhitespace(cipher.card.brand)) {\n if (this.isNullOrWhitespace(cipher.name)) {\n cipher.name = cipher.card.brand;\n } else {\n cipher.name += (' - ' + cipher.card.brand);\n }\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processNote(results: any[], nameProperty: string, name: string = null) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.secureNote = new SecureNoteView();\n cipher.type = CipherType.SecureNote;\n cipher.secureNote.type = SecureNoteType.Generic;\n if (name != null) {\n cipher.name = name;\n } else {\n cipher.name = this.getValueOrDefault(obj[nameProperty]);\n }\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && key !== nameProperty) {\n this.processKvp(cipher, key, obj[key].toString());\n }\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\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 if (this.setCardExpiration(cipher, fieldValue)) {\n continue;\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\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\n\nimport { CipherType } from '../enums/cipherType';\n\nexport class EnpassJsonImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.items == null || results.items.length === 0) {\n result.success = false;\n return result;\n }\n\n results.items.forEach((item: any) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(item.title);\n cipher.favorite = item.favorite > 0;\n\n if (item.template_type != null && item.fields != null && item.fields.length > 0) {\n if (item.template_type.indexOf('login.') === 0 || item.template_type.indexOf('password.') === 0) {\n this.processLogin(cipher, item.fields);\n } else if (item.template_type.indexOf('creditcard.') === 0) {\n this.processCard(cipher, item.fields);\n } else if (item.template_type.indexOf('identity.') < 0 &&\n item.fields.some((f: any) => f.type === 'password' && !this.isNullOrWhitespace(f.value))) {\n this.processLogin(cipher, item.fields);\n } else {\n this.processNote(cipher, item.fields);\n }\n }\n\n cipher.notes += ('\\n' + this.getValueOrDefault(item.note, ''));\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private processLogin(cipher: CipherView, fields: any[]) {\n const urls: string[] = [];\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\n return;\n }\n\n if ((field.type === 'username' || field.type === 'email') &&\n this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = field.value;\n } else if (field.type === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = field.value;\n } else if (field.type === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\n cipher.login.totp = field.value;\n } else if (field.type === 'url') {\n urls.push(field.value);\n } else {\n this.processKvp(cipher, field.label, field.value);\n }\n });\n cipher.login.uris = this.makeUriArray(urls);\n }\n\n private processCard(cipher: CipherView, fields: any[]) {\n cipher.card = new CardView();\n cipher.type = CipherType.Card;\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section' || field.type === 'ccType') {\n return;\n }\n\n if (field.type === 'ccName' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\n cipher.card.cardholderName = field.value;\n } else if (field.type === 'ccNumber' && this.isNullOrWhitespace(cipher.card.number)) {\n cipher.card.number = field.value;\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n } else if (field.type === 'ccCvc' && this.isNullOrWhitespace(cipher.card.code)) {\n cipher.card.code = field.value;\n } else if (field.type === 'ccExpiry' && this.isNullOrWhitespace(cipher.card.expYear)) {\n if (!this.setCardExpiration(cipher, field.value)) {\n this.processKvp(cipher, field.label, field.value);\n }\n } else {\n this.processKvp(cipher, field.label, field.value);\n }\n });\n }\n\n private processNote(cipher: CipherView, fields: any[]) {\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\n return;\n }\n this.processKvp(cipher, field.label, field.value);\n });\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\n\nimport { CipherType } from '../enums/cipherType';\n\nexport class FSecureFskImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.data == null) {\n result.success = false;\n return result;\n }\n\n for (const key in results.data) {\n if (!results.data.hasOwnProperty(key)) {\n continue;\n }\n\n const value = results.data[key];\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.service);\n cipher.notes = this.getValueOrDefault(value.notes);\n\n if (value.style === 'website') {\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 } else if (value.style === 'creditcard') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n cipher.card.cardholderName = this.getValueOrDefault(value.username);\n cipher.card.number = this.getValueOrDefault(value.creditNumber);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n cipher.card.code = this.getValueOrDefault(value.creditCvv);\n if (!this.isNullOrWhitespace(value.creditExpiry)) {\n if (!this.setCardExpiration(cipher, value.creditExpiry)) {\n this.processKvp(cipher, 'Expiration', value.creditExpiry);\n }\n }\n if (!this.isNullOrWhitespace(value.password)) {\n this.processKvp(cipher, 'PIN', value.password);\n }\n } else {\n continue;\n }\n\n this.convertToNoteIfNeeded(cipher);\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nconst NotesHeader = 'Notes\\n\\n';\nconst ApplicationsHeader = 'Applications\\n\\n';\nconst WebsitesHeader = 'Websites\\n\\n';\nconst Delimiter = '\\n---\\n';\n\nexport class KasperskyTxtImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n\n let notesData: string;\n let applicationsData: string;\n let websitesData: string;\n let workingData = this.splitNewLine(data).join('\\n');\n\n if (workingData.indexOf(NotesHeader) !== -1) {\n const parts = workingData.split(NotesHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n notesData = parts[1];\n }\n }\n if (workingData.indexOf(ApplicationsHeader) !== -1) {\n const parts = workingData.split(ApplicationsHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n applicationsData = parts[1];\n }\n }\n if (workingData.indexOf(WebsitesHeader) === 0) {\n const parts = workingData.split(WebsitesHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n websitesData = parts[1];\n }\n }\n\n const notes = this.parseDataCategory(notesData);\n const applications = this.parseDataCategory(applicationsData);\n const websites = this.parseDataCategory(websitesData);\n\n notes.forEach((n) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(n.get('Name'));\n cipher.notes = this.getValueOrDefault(n.get('Text'));\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n websites.concat(applications).forEach((w) => {\n const cipher = this.initLoginCipher();\n const nameKey = w.has('Website name') ? 'Website name' : 'Application';\n cipher.name = this.getValueOrDefault(w.get(nameKey), '');\n if (!this.isNullOrWhitespace(w.get('Login name'))) {\n if (!this.isNullOrWhitespace(cipher.name)) {\n cipher.name += ': ';\n }\n cipher.name += w.get('Login name');\n }\n cipher.notes = this.getValueOrDefault(w.get('Comment'));\n if (w.has('Website URL')) {\n cipher.login.uris = this.makeUriArray(w.get('Website URL'));\n }\n cipher.login.username = this.getValueOrDefault(w.get('Login'));\n cipher.login.password = this.getValueOrDefault(w.get('Password'));\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private parseDataCategory(data: string): Array> {\n if (this.isNullOrWhitespace(data) || data.indexOf(Delimiter) === -1) {\n return [];\n }\n const items: Array> = [];\n data.split(Delimiter).forEach((p) => {\n if (p.indexOf('\\n') === -1) {\n return;\n }\n const item = new Map();\n let itemComment: string;\n let itemCommentKey: string;\n p.split('\\n').forEach((l) => {\n if (itemComment != null) {\n itemComment += ('\\n' + l);\n return;\n }\n const colonIndex = l.indexOf(':');\n let key: string;\n let val: string;\n if (colonIndex === -1) {\n return;\n } else {\n key = l.substring(0, colonIndex);\n if (l.length > colonIndex + 1) {\n val = l.substring(colonIndex + 2);\n }\n }\n if (key != null) {\n item.set(key, val);\n }\n if (key === 'Comment' || key === 'Text') {\n itemComment = val;\n itemCommentKey = key;\n }\n });\n if (itemComment != null && itemCommentKey != null) {\n item.set(itemCommentKey, itemComment);\n }\n if (item.size === 0) {\n return;\n }\n items.push(item);\n });\n return items;\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 { 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 let grouping = value.grouping;\r\n if (grouping != null) {\r\n grouping = grouping.replace(/\\\\/g, '/');\r\n }\r\n const hasFolder = this.getValueOrDefault(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 === 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 = 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 if (this.isNullOrWhitespace(extraPart)) {\r\n return;\r\n }\r\n let key: string = null;\r\n let val: string = null;\r\n const colonIndex = extraPart.indexOf(':');\r\n if (colonIndex === -1) {\r\n key = extraPart;\r\n } else {\r\n key = extraPart.substring(0, colonIndex);\r\n if (extraPart.length > colonIndex) {\r\n val = extraPart.substring(colonIndex + 1);\r\n }\r\n }\r\n if (this.isNullOrWhitespace(key) || this.isNullOrWhitespace(val) || key === 'NoteType') {\r\n return;\r\n }\r\n\r\n if (key === 'Notes') {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += ('\\n' + val);\r\n } else {\r\n notes = val;\r\n }\r\n } else if (map.hasOwnProperty(key)) {\r\n dataObj[map[key]] = val;\r\n } else {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += '\\n';\r\n } else {\r\n notes = '';\r\n }\r\n notes += (key + ': ' + val);\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nexport class OnePassword1PifImporter extends BaseImporter implements Importer {\n result = new ImportResult();\n\n parse(data: string): ImportResult {\n data.split(this.newLineRegex).forEach((line) => {\n if (this.isNullOrWhitespace(line) || line[0] !== '{') {\n return;\n }\n const item = JSON.parse(line);\n const cipher = this.initLoginCipher();\n\n if (this.isNullOrWhitespace(item.hmac)) {\n this.processStandardItem(item, cipher);\n } else {\n this.processWinOpVaultItem(item, cipher);\n }\n\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n\n this.result.success = true;\n return this.result;\n }\n\n private processWinOpVaultItem(item: any, cipher: CipherView) {\n if (item.overview != null) {\n cipher.name = this.getValueOrDefault(item.overview.title);\n if (item.overview.URLs != null) {\n const urls: string[] = [];\n item.overview.URLs.forEach((url: any) => {\n if (!this.isNullOrWhitespace(url.u)) {\n urls.push(url.u);\n }\n });\n cipher.login.uris = this.makeUriArray(urls);\n }\n }\n\n if (item.details != null) {\n if (!this.isNullOrWhitespace(item.details.ccnum) || !this.isNullOrWhitespace(item.details.cvv)) {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n }\n if (cipher.type === CipherType.Login && !this.isNullOrWhitespace(item.details.password)) {\n cipher.login.password = item.details.password;\n }\n if (!this.isNullOrWhitespace(item.details.notesPlain)) {\n cipher.notes = item.details.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\n }\n if (item.details.fields != null) {\n this.parseFields(item.details.fields, cipher, 'designation', 'value', 'name');\n }\n if (item.details.sections != null) {\n item.details.sections.forEach((section: any) => {\n if (section.fields != null) {\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\n }\n });\n }\n }\n }\n\n private processStandardItem(item: any, cipher: CipherView) {\n cipher.favorite = item.openContents && item.openContents.faveIndex ? true : false;\n cipher.name = this.getValueOrDefault(item.title);\n\n if (item.typeName === 'securenotes.SecureNote') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n } else if (item.typeName === 'wallet.financial.CreditCard') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n } else {\n cipher.login.uris = this.makeUriArray(item.location);\n }\n\n if (item.secureContents != null) {\n if (!this.isNullOrWhitespace(item.secureContents.notesPlain)) {\n cipher.notes = item.secureContents.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\n }\n if (cipher.type === CipherType.Login) {\n if (!this.isNullOrWhitespace(item.secureContents.password)) {\n cipher.login.password = item.secureContents.password;\n }\n if (item.secureContents.URLs != null) {\n const urls: string[] = [];\n item.secureContents.URLs.forEach((u: any) => {\n if (!this.isNullOrWhitespace(u.url)) {\n urls.push(u.url);\n }\n });\n if (urls.length > 0) {\n cipher.login.uris = this.makeUriArray(urls);\n }\n }\n }\n if (item.secureContents.fields != null) {\n this.parseFields(item.secureContents.fields, cipher, 'designation', 'value', 'name');\n }\n if (item.secureContents.sections != null) {\n item.secureContents.sections.forEach((section: any) => {\n if (section.fields != null) {\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\n }\n });\n }\n }\n }\n\n private parseFields(fields: any[], cipher: CipherView, designationKey: string, valueKey: string, nameKey: string) {\n fields.forEach((field: any) => {\n if (field[valueKey] == null || field[valueKey].toString().trim() === '') {\n return;\n }\n\n const fieldValue = field[valueKey].toString();\n const fieldDesignation = field[designationKey] != null ? field[designationKey].toString() : null;\n\n if (cipher.type === CipherType.Login) {\n if (this.isNullOrWhitespace(cipher.login.username) && fieldDesignation === 'username') {\n cipher.login.username = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.login.password) && fieldDesignation === 'password') {\n cipher.login.password = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.login.totp) && fieldDesignation != null &&\n fieldDesignation.startsWith('TOTP_')) {\n cipher.login.totp = fieldValue;\n return;\n }\n } else if (cipher.type === CipherType.Card) {\n if (this.isNullOrWhitespace(cipher.card.number) && fieldDesignation === 'ccnum') {\n cipher.card.number = fieldValue;\n cipher.card.brand = this.getCardBrand(fieldValue);\n return;\n } else if (this.isNullOrWhitespace(cipher.card.code) && fieldDesignation === 'cvv') {\n cipher.card.code = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && fieldDesignation === 'cardholder') {\n cipher.card.cardholderName = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && fieldDesignation === 'expiry' &&\n fieldValue.length === 6) {\n cipher.card.expMonth = (fieldValue as string).substr(4, 2);\n if (cipher.card.expMonth[0] === '0') {\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\n }\n cipher.card.expYear = (fieldValue as string).substr(0, 4);\n return;\n } else if (fieldDesignation === 'type') {\n // Skip since brand was determined from number above\n return;\n }\n }\n\n const fieldName = this.isNullOrWhitespace(field[nameKey]) ? 'no_name' : field[nameKey];\n this.processKvp(cipher, fieldName, fieldValue);\n });\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 { 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';\nimport { Importer } from './importer';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\n\nexport class RememBearCsvImporter 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.trash === 'true') {\n return;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.notes = this.getValueOrDefault(value.notes);\n if (value.type === 'LoginItem') {\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.username);\n } else if (value.type === 'CreditCardItem') {\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 cipher.card.code = this.getValueOrDefault(value.verification);\n\n try {\n const expMonth = this.getValueOrDefault(value.expiryMonth);\n if (expMonth != null) {\n const expMonthNumber = parseInt(expMonth, null);\n if (expMonthNumber != null && expMonthNumber >= 1 && expMonthNumber <= 12) {\n cipher.card.expMonth = expMonthNumber.toString();\n }\n }\n } catch { }\n try {\n const expYear = this.getValueOrDefault(value.expiryYear);\n if (expYear != null) {\n const expYearNumber = parseInt(expYear, null);\n if (expYearNumber != null) {\n cipher.card.expYear = expYearNumber.toString();\n }\n }\n } catch { }\n\n const pin = this.getValueOrDefault(value.pin);\n if (pin != null) {\n this.processKvp(cipher, 'PIN', pin);\n }\n const zip = this.getValueOrDefault(value.zipCode);\n if (zip != null) {\n this.processKvp(cipher, 'Zip Code', zip);\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 RoboFormCsvImporter 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 let i = 1;\n results.forEach((value) => {\n const folder = !this.isNullOrWhitespace(value.Folder) && value.Folder.startsWith('/') ?\n value.Folder.replace('/', '') : value.Folder;\n const folderName = !this.isNullOrWhitespace(folder) ? folder : null;\n this.processFolder(result, folderName);\n\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value.Note);\n cipher.name = this.getValueOrDefault(value.Name, '--');\n cipher.login.username = this.getValueOrDefault(value.Login);\n cipher.login.password = this.getValueOrDefault(value.Pwd);\n cipher.login.uris = this.makeUriArray(value.Url);\n\n if (!this.isNullOrWhitespace(value.Rf_fields)) {\n let fields: string[] = [value.Rf_fields];\n if (value.__parsed_extra != null && value.__parsed_extra.length > 0) {\n fields = fields.concat(value.__parsed_extra);\n }\n fields.forEach((field: string) => {\n const parts = field.split(':');\n if (parts.length < 3) {\n return;\n }\n const key = parts[0] === '-no-name-' ? null : parts[0];\n const val = parts.length === 4 && parts[2] === 'rck' ? parts[1] : parts[2];\n this.processKvp(cipher, key, val);\n });\n }\n\n this.cleanupCipher(cipher);\n\n if (i === results.length && cipher.name === '--' && this.isNullOrWhitespace(cipher.login.password)) {\n return;\n }\n\n result.ciphers.push(cipher);\n i++;\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\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';\nimport * as signalRMsgPack from '@aspnet/signalr-protocol-msgpack';\n\nimport { NotificationType } from '../enums/notificationType';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { EnvironmentService } from '../abstractions/environment.service';\nimport { LockService } from '../abstractions/lock.service';\nimport { NotificationsService as NotificationsServiceAbstraction } from '../abstractions/notifications.service';\nimport { SyncService } from '../abstractions/sync.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport {\n NotificationResponse,\n SyncCipherNotification,\n SyncFolderNotification,\n} from '../models/response/notificationResponse';\n\nexport class NotificationsService implements NotificationsServiceAbstraction {\n private signalrConnection: signalR.HubConnection;\n private url: string;\n private connected = false;\n private inited = false;\n private inactive = false;\n private reconnectTimer: any = null;\n\n constructor(private userService: UserService, private syncService: SyncService,\n private appIdService: AppIdService, private apiService: ApiService,\n private lockService: LockService, private logoutCallback: () => Promise) { }\n\n async init(environmentService: EnvironmentService): Promise {\n this.inited = false;\n this.url = 'https://notifications.bitwarden.com';\n if (environmentService.notificationsUrl != null) {\n this.url = environmentService.notificationsUrl;\n } else if (environmentService.baseUrl != null) {\n this.url = environmentService.baseUrl + '/notifications';\n }\n\n // Set notifications server URL to `https://-` to effectively disable communication\n // with the notifications server from the client app\n if (this.url === 'https://-') {\n return;\n }\n\n if (this.signalrConnection != null) {\n this.signalrConnection.off('ReceiveMessage');\n await this.signalrConnection.stop();\n this.connected = false;\n this.signalrConnection = null;\n }\n\n this.signalrConnection = new signalR.HubConnectionBuilder()\n .withUrl(this.url + '/hub', {\n accessTokenFactory: () => this.apiService.getActiveBearerToken(),\n })\n .withHubProtocol(new signalRMsgPack.MessagePackHubProtocol())\n // .configureLogging(signalR.LogLevel.Trace)\n .build();\n\n this.signalrConnection.on('ReceiveMessage',\n (data: any) => this.processNotification(new NotificationResponse(data)));\n this.signalrConnection.onclose(() => {\n this.connected = false;\n this.reconnect(true);\n });\n this.inited = true;\n if (await this.isAuthedAndUnlocked()) {\n await this.reconnect(false);\n }\n }\n\n async updateConnection(sync = false): Promise {\n if (!this.inited) {\n return;\n }\n try {\n if (await this.isAuthedAndUnlocked()) {\n await this.reconnect(sync);\n } else {\n await this.signalrConnection.stop();\n }\n } catch (e) {\n // tslint:disable-next-line\n console.error(e.toString());\n }\n }\n\n async reconnectFromActivity(): Promise {\n this.inactive = false;\n if (this.inited && !this.connected) {\n await this.reconnect(true);\n }\n }\n\n async disconnectFromInactivity(): Promise {\n this.inactive = true;\n if (this.inited && this.connected) {\n await this.signalrConnection.stop();\n }\n }\n\n private async processNotification(notification: NotificationResponse) {\n const appId = await this.appIdService.getAppId();\n if (notification == null || notification.contextId === appId) {\n return;\n }\n\n const isAuthenticated = await this.userService.isAuthenticated();\n const payloadUserId = notification.payload.userId || notification.payload.UserId;\n const myUserId = await this.userService.getUserId();\n if (isAuthenticated && payloadUserId != null && payloadUserId !== myUserId) {\n return;\n }\n\n switch (notification.type) {\n case NotificationType.SyncCipherCreate:\n case NotificationType.SyncCipherUpdate:\n await this.syncService.syncUpsertCipher(notification.payload as SyncCipherNotification,\n notification.type === NotificationType.SyncCipherUpdate);\n break;\n case NotificationType.SyncCipherDelete:\n case NotificationType.SyncLoginDelete:\n await this.syncService.syncDeleteCipher(notification.payload as SyncCipherNotification);\n break;\n case NotificationType.SyncFolderCreate:\n case NotificationType.SyncFolderUpdate:\n await this.syncService.syncUpsertFolder(notification.payload as SyncFolderNotification,\n notification.type === NotificationType.SyncFolderUpdate);\n break;\n case NotificationType.SyncFolderDelete:\n await this.syncService.syncDeleteFolder(notification.payload as SyncFolderNotification);\n break;\n case NotificationType.SyncVault:\n case NotificationType.SyncCiphers:\n case NotificationType.SyncSettings:\n if (isAuthenticated) {\n await this.syncService.fullSync(false);\n }\n break;\n case NotificationType.SyncOrgKeys:\n if (isAuthenticated) {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n // Stop so a reconnect can be made\n await this.signalrConnection.stop();\n }\n break;\n case NotificationType.LogOut:\n if (isAuthenticated) {\n this.logoutCallback();\n }\n break;\n default:\n break;\n }\n }\n\n private async reconnect(sync: boolean) {\n if (this.reconnectTimer != null) {\n clearTimeout(this.reconnectTimer);\n this.reconnectTimer = null;\n }\n if (this.connected || !this.inited || this.inactive) {\n return;\n }\n const authedAndUnlocked = await this.isAuthedAndUnlocked();\n if (!authedAndUnlocked) {\n return;\n }\n\n try {\n await this.signalrConnection.start();\n this.connected = true;\n if (sync) {\n await this.syncService.fullSync(false);\n }\n } catch { }\n\n if (!this.connected) {\n this.reconnectTimer = setTimeout(() => this.reconnect(sync), this.random(120000, 300000));\n }\n }\n\n private async isAuthedAndUnlocked() {\n if (await this.userService.isAuthenticated()) {\n return this.lockService.isLocked();\n }\n return false;\n }\n\n private random(min: number, max: number) {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1)) + min;\n }\n}\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';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { CipherService } from '../abstractions/cipher.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { SearchService as SearchServiceAbstraction } from '../abstractions/search.service';\n\nimport { CipherType } from '../enums/cipherType';\nimport { DeviceType } from '../enums/deviceType';\nimport { FieldType } from '../enums/fieldType';\nimport { UriMatchType } from '../enums/uriMatchType';\n\nexport class SearchService implements SearchServiceAbstraction {\n private indexing = false;\n private index: lunr.Index = null;\n private onlySearchName = false;\n\n constructor(private cipherService: CipherService, platformUtilsService: PlatformUtilsService) {\n this.onlySearchName = platformUtilsService == null ||\n platformUtilsService.getDevice() === DeviceType.EdgeExtension;\n }\n\n clearIndex(): void {\n this.index = null;\n }\n\n isSearchable(query: string): boolean {\n const notSearchable = query == null || (this.index == null && query.length < 2) ||\n (this.index != null && query.length < 2 && query.indexOf('>') !== 0);\n return !notSearchable;\n }\n\n async indexCiphers(): Promise {\n if (this.indexing) {\n return;\n }\n // tslint:disable-next-line\n console.time('search indexing');\n this.indexing = true;\n this.index = null;\n const builder = new lunr.Builder();\n builder.ref('id');\n (builder as any).field('shortid', { boost: 100, extractor: (c: CipherView) => c.id.substr(0, 8) });\n (builder as any).field('name', { boost: 10 });\n (builder as any).field('subtitle', {\n boost: 5,\n extractor: (c: CipherView) => {\n if (c.subTitle != null && c.type === CipherType.Card) {\n return c.subTitle.replace(/\\*/g, '');\n }\n return c.subTitle;\n },\n });\n builder.field('notes');\n (builder as any).field('login.username', {\n extractor: (c: CipherView) => c.type === CipherType.Login && c.login != null ? c.login.username : null,\n });\n (builder as any).field('login.uris', { boost: 2, extractor: (c: CipherView) => this.uriExtractor(c) });\n (builder as any).field('fields', { extractor: (c: CipherView) => this.fieldExtractor(c, false) });\n (builder as any).field('fields_joined', { extractor: (c: CipherView) => this.fieldExtractor(c, true) });\n (builder as any).field('attachments', { extractor: (c: CipherView) => this.attachmentExtractor(c, false) });\n (builder as any).field('attachments_joined',\n { extractor: (c: CipherView) => this.attachmentExtractor(c, true) });\n (builder as any).field('organizationid', { extractor: (c: CipherView) => c.organizationId });\n const ciphers = await this.cipherService.getAllDecrypted();\n ciphers.forEach((c) => builder.add(c));\n this.index = builder.build();\n this.indexing = false;\n // tslint:disable-next-line\n console.timeEnd('search indexing');\n }\n\n async searchCiphers(query: string, filter: (cipher: CipherView) => boolean = null, ciphers: CipherView[] = null):\n Promise {\n const results: CipherView[] = [];\n if (query != null) {\n query = query.trim().toLowerCase();\n }\n if (query === '') {\n query = null;\n }\n\n if (ciphers == null) {\n ciphers = await this.cipherService.getAllDecrypted();\n }\n if (filter != null) {\n ciphers = ciphers.filter(filter);\n }\n\n if (!this.isSearchable(query)) {\n return ciphers;\n }\n\n const index = this.getIndexForSearch();\n if (index == null) {\n // Fall back to basic search if index is not available\n return this.searchCiphersBasic(ciphers, query);\n }\n\n const ciphersMap = new Map();\n ciphers.forEach((c) => ciphersMap.set(c.id, c));\n\n let searchResults: lunr.Index.Result[] = null;\n const isQueryString = query != null && query.length > 1 && query.indexOf('>') === 0;\n if (isQueryString) {\n try {\n searchResults = index.search(query.substr(1).trim());\n } catch { }\n } else {\n // tslint:disable-next-line\n const soWild = lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING;\n searchResults = index.query((q) => {\n lunr.tokenizer(query).forEach((token) => {\n const t = token.toString();\n q.term(t, { fields: ['name'], wildcard: soWild });\n q.term(t, { fields: ['subtitle'], wildcard: soWild });\n q.term(t, { fields: ['login.uris'], wildcard: soWild });\n q.term(t, {});\n });\n });\n }\n\n if (searchResults != null) {\n searchResults.forEach((r) => {\n if (ciphersMap.has(r.ref)) {\n results.push(ciphersMap.get(r.ref));\n }\n });\n }\n return results;\n }\n\n searchCiphersBasic(ciphers: CipherView[], query: string) {\n query = query.trim().toLowerCase();\n return ciphers.filter((c) => {\n if (c.name != null && c.name.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n if (this.onlySearchName) {\n return false;\n }\n if (query.length >= 8 && c.id.startsWith(query)) {\n return true;\n }\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n return false;\n });\n }\n\n getIndexForSearch(): lunr.Index {\n return this.index;\n }\n\n private fieldExtractor(c: CipherView, joined: boolean) {\n if (!c.hasFields) {\n return null;\n }\n let fields: string[] = [];\n c.fields.forEach((f) => {\n if (f.name != null) {\n fields.push(f.name);\n }\n if (f.type === FieldType.Text && f.value != null) {\n fields.push(f.value);\n }\n });\n fields = fields.filter((f) => f.trim() !== '');\n if (fields.length === 0) {\n return null;\n }\n return joined ? fields.join(' ') : fields;\n }\n\n private attachmentExtractor(c: CipherView, joined: boolean) {\n if (!c.hasAttachments) {\n return null;\n }\n let attachments: string[] = [];\n c.attachments.forEach((a) => {\n if (a != null && a.fileName != null) {\n if (joined && a.fileName.indexOf('.') > -1) {\n attachments.push(a.fileName.substr(0, a.fileName.lastIndexOf('.')));\n } else {\n attachments.push(a.fileName);\n }\n }\n });\n attachments = attachments.filter((f) => f.trim() !== '');\n if (attachments.length === 0) {\n return null;\n }\n return joined ? attachments.join(' ') : attachments;\n }\n\n private uriExtractor(c: CipherView) {\n if (c.type !== CipherType.Login || c.login == null || !c.login.hasUris) {\n return null;\n }\n const uris: string[] = [];\n c.login.uris.forEach((u) => {\n if (u.uri == null || u.uri === '') {\n return;\n }\n if (u.hostname != null) {\n uris.push(u.hostname);\n return;\n }\n let uri = u.uri;\n if (u.match !== UriMatchType.RegularExpression) {\n const protocolIndex = uri.indexOf('://');\n if (protocolIndex > -1) {\n uri = uri.substr(protocolIndex + 3);\n }\n const queryIndex = uri.search(/\\?|&|#/);\n if (queryIndex > -1) {\n uri = uri.substring(0, queryIndex);\n }\n }\n uris.push(uri);\n });\n return uris.length > 0 ? uris : null;\n }\n}\n","import * as forge from 'node-forge';\r\n\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { DecryptParameters } from '../models/domain/decryptParameters';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nexport class WebCryptoFunctionService implements CryptoFunctionService {\r\n private crypto: Crypto;\r\n private subtle: SubtleCrypto;\r\n private isEdge: boolean;\r\n private isIE: boolean;\r\n private isOldSafari: boolean;\r\n\r\n constructor(private win: Window, private platformUtilsService: PlatformUtilsService) {\r\n this.crypto = typeof win.crypto !== 'undefined' ? win.crypto : null;\r\n this.subtle = (!!this.crypto && typeof win.crypto.subtle !== 'undefined') ? win.crypto.subtle : null;\r\n this.isEdge = platformUtilsService.isEdge();\r\n this.isIE = platformUtilsService.isIE();\r\n const ua = win.navigator.userAgent;\r\n this.isOldSafari = platformUtilsService.isSafari() &&\r\n (ua.indexOf(' Version/10.') > -1 || ua.indexOf(' Version/9.') > -1);\r\n }\r\n\r\n async pbkdf2(password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\r\n iterations: number): Promise {\r\n if (this.isEdge || this.isIE || this.isOldSafari) {\r\n const forgeLen = algorithm === 'sha256' ? 32 : 64;\r\n const passwordBytes = this.toByteString(password);\r\n const saltBytes = this.toByteString(salt);\r\n const derivedKeyBytes = (forge as any).pbkdf2(passwordBytes, saltBytes, iterations, forgeLen, algorithm);\r\n return Utils.fromByteStringToArray(derivedKeyBytes).buffer;\r\n }\r\n\r\n const wcLen = algorithm === 'sha256' ? 256 : 512;\r\n const passwordBuf = this.toBuf(password);\r\n const saltBuf = this.toBuf(salt);\r\n\r\n const pbkdf2Params: Pbkdf2Params = {\r\n name: 'PBKDF2',\r\n salt: saltBuf,\r\n iterations: iterations,\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', passwordBuf, { name: 'PBKDF2' } as any,\r\n false, ['deriveBits']);\r\n return await this.subtle.deriveBits(pbkdf2Params, impKey, wcLen);\r\n }\r\n\r\n async hash(value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): Promise {\r\n if (((this.isEdge || this.isIE) && algorithm === 'sha1') || algorithm === 'md5') {\r\n const md = algorithm === 'md5' ? forge.md.md5.create() : forge.md.sha1.create();\r\n const valueBytes = this.toByteString(value);\r\n md.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(md.digest().data).buffer;\r\n }\r\n\r\n const valueBuf = this.toBuf(value);\r\n return await this.subtle.digest({ name: this.toWebCryptoAlgorithm(algorithm) }, valueBuf);\r\n }\r\n\r\n async hmac(value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n if (this.isIE && algorithm === 'sha512') {\r\n const hmac = (forge as any).hmac.create();\r\n const keyBytes = this.toByteString(key);\r\n const valueBytes = this.toByteString(value);\r\n hmac.start(algorithm, keyBytes);\r\n hmac.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(hmac.digest().data).buffer;\r\n }\r\n\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', key, signingAlgorithm, false, ['sign']);\r\n return await this.subtle.sign(signingAlgorithm, impKey, value);\r\n }\r\n\r\n // Safely compare two values in a way that protects against timing attacks (Double HMAC Verification).\r\n // ref: https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/february/double-hmac-verification/\r\n // ref: https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-string-comparison-with-double-hmac-strategy\r\n async compare(a: ArrayBuffer, b: ArrayBuffer): Promise {\r\n const macKey = await this.randomBytes(32);\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: 'SHA-256' },\r\n };\r\n const impKey = await this.subtle.importKey('raw', macKey, signingAlgorithm, false, ['sign']);\r\n const mac1 = await this.subtle.sign(signingAlgorithm, impKey, a);\r\n const mac2 = await this.subtle.sign(signingAlgorithm, impKey, b);\r\n\r\n if (mac1.byteLength !== mac2.byteLength) {\r\n return false;\r\n }\r\n\r\n const arr1 = new Uint8Array(mac1);\r\n const arr2 = new Uint8Array(mac2);\r\n for (let i = 0; i < arr2.length; i++) {\r\n if (arr1[i] !== arr2[i]) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n hmacFast(value: string, key: string, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start(algorithm, key);\r\n hmac.update(value);\r\n const bytes = hmac.digest().getBytes();\r\n return Promise.resolve(bytes);\r\n }\r\n\r\n async compareFast(a: string, b: string): Promise {\r\n const rand = await this.randomBytes(32);\r\n const bytes = new Uint32Array(rand);\r\n const buffer = forge.util.createBuffer();\r\n for (let i = 0; i < bytes.length; i++) {\r\n buffer.putInt32(bytes[i]);\r\n }\r\n const macKey = buffer.getBytes();\r\n\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start('sha256', macKey);\r\n hmac.update(a);\r\n const mac1 = hmac.digest().getBytes();\r\n\r\n hmac.start(null, null);\r\n hmac.update(b);\r\n const mac2 = hmac.digest().getBytes();\r\n\r\n const equals = mac1 === mac2;\r\n return equals;\r\n }\r\n\r\n async aesEncrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['encrypt']);\r\n return await this.subtle.encrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n aesDecryptFastParameters(data: string, iv: string, mac: string, key: SymmetricCryptoKey):\r\n DecryptParameters {\r\n const p = new DecryptParameters();\r\n if (key.meta != null) {\r\n p.encKey = key.meta.encKeyByteString;\r\n p.macKey = key.meta.macKeyByteString;\r\n }\r\n\r\n if (p.encKey == null) {\r\n p.encKey = forge.util.decode64(key.encKeyB64);\r\n }\r\n p.data = forge.util.decode64(data);\r\n p.iv = forge.util.decode64(iv);\r\n p.macData = p.iv + p.data;\r\n if (p.macKey == null && key.macKeyB64 != null) {\r\n p.macKey = forge.util.decode64(key.macKeyB64);\r\n }\r\n if (mac != null) {\r\n p.mac = forge.util.decode64(mac);\r\n }\r\n\r\n // cache byte string keys for later\r\n if (key.meta == null) {\r\n key.meta = {};\r\n }\r\n if (key.meta.encKeyByteString == null) {\r\n key.meta.encKeyByteString = p.encKey;\r\n }\r\n if (p.macKey != null && key.meta.macKeyByteString == null) {\r\n key.meta.macKeyByteString = p.macKey;\r\n }\r\n\r\n return p;\r\n }\r\n\r\n aesDecryptFast(parameters: DecryptParameters): Promise {\r\n const dataBuffer = (forge as any).util.createBuffer(parameters.data);\r\n const decipher = (forge as any).cipher.createDecipher('AES-CBC', parameters.encKey);\r\n decipher.start({ iv: parameters.iv });\r\n decipher.update(dataBuffer);\r\n decipher.finish();\r\n const val = decipher.output.toString('utf8');\r\n return Promise.resolve(val);\r\n }\r\n\r\n async aesDecrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['decrypt']);\r\n return await this.subtle.decrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('spki', publicKey, rsaParams, false, ['encrypt']);\r\n return await this.subtle.encrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaDecrypt(data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, false, ['decrypt']);\r\n return await this.subtle.decrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaExtractPublicKey(privateKey: ArrayBuffer): Promise {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const impPrivateKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, true, ['decrypt']);\r\n const jwkPrivateKey = await this.subtle.exportKey('jwk', impPrivateKey);\r\n const jwkPublicKeyParams = {\r\n kty: 'RSA',\r\n e: jwkPrivateKey.e,\r\n n: jwkPrivateKey.n,\r\n alg: 'RSA-OAEP',\r\n ext: true,\r\n };\r\n const impPublicKey = await this.subtle.importKey('jwk', jwkPublicKeyParams, rsaParams, true, ['encrypt']);\r\n return await this.subtle.exportKey('spki', impPublicKey);\r\n }\r\n\r\n async rsaGenerateKeyPair(length: 1024 | 2048 | 4096): Promise<[ArrayBuffer, ArrayBuffer]> {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n modulusLength: length,\r\n publicExponent: new Uint8Array([0x01, 0x00, 0x01]), // 65537\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const keyPair = await this.subtle.generateKey(rsaParams, true, ['encrypt', 'decrypt']);\r\n const publicKey = await this.subtle.exportKey('spki', keyPair.publicKey);\r\n const privateKey = await this.subtle.exportKey('pkcs8', keyPair.privateKey);\r\n return [publicKey, privateKey];\r\n }\r\n\r\n randomBytes(length: number): Promise {\r\n const arr = new Uint8Array(length);\r\n this.crypto.getRandomValues(arr);\r\n return Promise.resolve(arr.buffer);\r\n }\r\n\r\n private toBuf(value: string | ArrayBuffer): ArrayBuffer {\r\n let buf: ArrayBuffer;\r\n if (typeof (value) === 'string') {\r\n buf = Utils.fromUtf8ToArray(value).buffer;\r\n } else {\r\n buf = value;\r\n }\r\n return buf;\r\n }\r\n\r\n private toByteString(value: string | ArrayBuffer): string {\r\n let bytes: string;\r\n if (typeof (value) === 'string') {\r\n bytes = forge.util.encodeUtf8(value);\r\n } else {\r\n bytes = Utils.fromBufferToByteString(value);\r\n }\r\n return bytes;\r\n }\r\n\r\n private toWebCryptoAlgorithm(algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): string {\r\n if (algorithm === 'md5') {\r\n throw new Error('MD5 is not supported in WebCrypto.');\r\n }\r\n return algorithm === 'sha1' ? 'SHA-1' : algorithm === 'sha256' ? 'SHA-256' : 'SHA-512';\r\n }\r\n}\r\n","export class DecryptParameters {\n encKey: T;\n data: T;\n iv: T;\n macKey: T;\n mac: T;\n macData: T;\n}\n","import { NgModule } from '@angular/core';\nimport {\n RouterModule,\n Routes,\n} from '@angular/router';\n\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingsComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { VaultComponent } from './vault/vault.component';\n\nimport { OrganizationGuardService } from './services/organization-guard.service';\nimport { OrganizationTypeGuardService } from './services/organization-type-guard.service';\nimport { UnauthGuardService } from './services/unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\n\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nconst routes: Routes = [\n {\n path: '',\n component: FrontendLayoutComponent,\n children: [\n { path: '', pathMatch: 'full', component: LoginComponent, canActivate: [UnauthGuardService] },\n { path: '2fa', component: TwoFactorComponent, canActivate: [UnauthGuardService] },\n {\n path: 'register', component: RegisterComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'createAccount' },\n },\n {\n path: 'hint', component: HintComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'passwordHint' },\n },\n { path: 'lock', component: LockComponent },\n { path: 'verify-email', component: VerifyEmailTokenComponent },\n {\n path: 'accept-organization',\n component: AcceptOrganizationComponent,\n data: { titleId: 'joinOrganization' },\n },\n { path: 'recover', pathMatch: 'full', redirectTo: 'recover-2fa' },\n {\n path: 'recover-2fa',\n component: RecoverTwoFactorComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'recoverAccountTwoStep' },\n },\n {\n path: 'recover-delete',\n component: RecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n {\n path: 'verify-recover-delete',\n component: VerifyRecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n ],\n },\n {\n path: '',\n component: UserLayoutComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: 'vault', component: VaultComponent, data: { titleId: 'myVault' } },\n {\n path: 'settings',\n component: SettingsComponent,\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: AccountComponent, data: { titleId: 'myAccount' } },\n { path: 'options', component: OptionsComponent, data: { titleId: 'options' } },\n { path: 'domain-rules', component: DomainRulesComponent, data: { titleId: 'domainRules' } },\n { path: 'two-factor', component: TwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n { path: 'premium', component: PremiumComponent, data: { titleId: 'goPremium' } },\n { path: 'billing', component: UserBillingComponent, data: { titleId: 'billingAndLicensing' } },\n { path: 'organizations', component: OrganizationsComponent, data: { titleId: 'organizations' } },\n {\n path: 'create-organization',\n component: CreateOrganizationComponent,\n data: { titleId: 'newOrganization' },\n },\n ],\n },\n {\n path: 'tools',\n component: ToolsComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'generator' },\n { path: 'import', component: ImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: ExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'generator',\n component: PasswordGeneratorComponent,\n data: { titleId: 'passwordGenerator' },\n },\n { path: 'breach-report', component: BreachReportComponent, data: { titleId: 'dataBreachReport' } },\n {\n path: 'reused-passwords-report',\n component: ReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: UnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: WeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n {\n path: 'exposed-passwords-report',\n component: ExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: InactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n ],\n },\n ],\n },\n {\n path: 'organizations/:organizationId',\n component: OrganizationLayoutComponent,\n canActivate: [AuthGuardService, OrganizationGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'vault' },\n { path: 'vault', component: OrgVaultComponent, data: { titleId: 'vault' } },\n {\n path: 'tools',\n component: OrgToolsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner, OrganizationUserType.Admin] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'import' },\n { path: 'import', component: OrgImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: OrgExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'exposed-passwords-report',\n component: OrgExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: OrgInactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n {\n path: 'reused-passwords-report',\n component: OrgReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: OrgUnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: OrgWeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n ],\n },\n {\n path: 'manage',\n component: OrgManageComponent,\n canActivate: [OrganizationTypeGuardService],\n data: {\n allowedTypes: [\n OrganizationUserType.Owner,\n OrganizationUserType.Admin,\n OrganizationUserType.Manager,\n ],\n },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'people' },\n { path: 'collections', component: OrgManageCollectionsComponent, data: { titleId: 'collections' } },\n { path: 'events', component: OrgEventsComponent, data: { titleId: 'eventLogs' } },\n { path: 'groups', component: OrgGroupsComponent, data: { titleId: 'groups' } },\n { path: 'people', component: OrgPeopleComponent, data: { titleId: 'people' } },\n ],\n },\n {\n path: 'settings',\n component: OrgSettingsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: OrgAccountComponent, data: { titleId: 'myOrganization' } },\n { path: 'two-factor', component: OrgTwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n {\n path: 'billing',\n component: OrganizationBillingComponent,\n data: { titleId: 'billingAndLicensing' },\n },\n ],\n },\n ],\n },\n { path: '**', redirectTo: '' },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {\n useHash: true,\n /*enableTracing: true,*/\n })],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n"],"sourceRoot":""} \ No newline at end of file diff --git a/app/main.24b12cf2806f2044ae5c.css b/app/main.f2c043f2c68a31a9eee7.css similarity index 99% rename from app/main.24b12cf2806f2044ae5c.css rename to app/main.f2c043f2c68a31a9eee7.css index 6cc9c458..9a2c66c4 100644 --- a/app/main.24b12cf2806f2044ae5c.css +++ b/app/main.f2c043f2c68a31a9eee7.css @@ -9746,4 +9746,4 @@ img.logo { .overflow-hidden { overflow: hidden; } -/*# sourceMappingURL=main.24b12cf2806f2044ae5c.css.map*/ \ No newline at end of file +/*# sourceMappingURL=main.f2c043f2c68a31a9eee7.css.map*/ \ No newline at end of file diff --git a/app/main.24b12cf2806f2044ae5c.css.map b/app/main.f2c043f2c68a31a9eee7.css.map similarity index 58% rename from app/main.24b12cf2806f2044ae5c.css.map rename to app/main.f2c043f2c68a31a9eee7.css.map index 6b82a767..64550903 100644 --- a/app/main.24b12cf2806f2044ae5c.css.map +++ b/app/main.f2c043f2c68a31a9eee7.css.map @@ -1 +1 @@ -{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.24b12cf2806f2044ae5c.css","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.f2c043f2c68a31a9eee7.css","sourceRoot":""} \ No newline at end of file diff --git a/app/main.24b12cf2806f2044ae5c.js b/app/main.f2c043f2c68a31a9eee7.js similarity index 51% rename from app/main.24b12cf2806f2044ae5c.js rename to app/main.f2c043f2c68a31a9eee7.js index db1bdd11..20f55e1f 100644 --- a/app/main.24b12cf2806f2044ae5c.js +++ b/app/main.f2c043f2c68a31a9eee7.js @@ -1,2 +1,2 @@ -!function(n){function l(l){for(var t,o,i=l[0],a=l[1],s=l[2],c=0,p=[];c1&&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});var t=function(){return function(){}}();l.MessagingService=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.CipherService=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=e(637),u=e(135),r=e(147),o=e(234),i=e(37),a=e(195),s=e(146),d=e(145),c=e(89),p=e(38),f=e(194),v=e(108),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 o.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 o.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 i.Utils.isNullOrWhitespace(n)},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.setCardExpiration=function(n,l){if(!this.isNullOrWhitespace(l)){var e=l.split("/");if(2===e.length){var t=null,u=null;if(1!==e[0].length&&2!==e[0].length||2===(t=e[0]).length&&"0"===t[0]&&(t=t.substr(1,1)),2!==e[1].length&&4!==e[1].length||(u=2===t.length?"20"+e[1]:e[1]),null!=t&&null!=u)return n.card.expMonth=t,n.card.expYear=u,!0}}return!1},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 r.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 r=0;r-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!=o)return o.URL?new o.URL(n):o.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.tldEndingRegex=/.*\.(com|net|org|edu|uk|gov|ca|de|jp|fr|au|ru|ch|io|es|us|co|xyz|info|ly|mil)$/,l}();l.Utils=i,i.init()}).call(this,e(132),e(95),e(116).Buffer)},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Login=1]="Login",n[n.SecureNote=2]="SecureNote",n[n.Card=3]="Card",n[n.Identity=4]="Identity"}(l.CipherType||(l.CipherType={}))},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){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.CollectionService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n,l){this.el=n,this.renderer=l}return Object.defineProperty(n.prototype,"appInputVerbatim",{set:function(n){this.disableComplete=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){this.disableComplete&&!this.el.nativeElement.hasAttribute("autocomplete")&&this.renderer.setAttribute(this.el.nativeElement,"autocomplete","off"),this.el.nativeElement.hasAttribute("autocapitalize")||this.renderer.setAttribute(this.el.nativeElement,"autocapitalize","none"),this.el.nativeElement.hasAttribute("autocorrect")||this.renderer.setAttribute(this.el.nativeElement,"autocorrect","none"),this.el.nativeElement.hasAttribute("spellcheck")||this.renderer.setAttribute(this.el.nativeElement,"spellcheck","false"),this.el.nativeElement.hasAttribute("inputmode")||this.renderer.setAttribute(this.el.nativeElement,"inputmode","verbatim")},n}();l.InputVerbatimDirective=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.FolderService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordGenerationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SyncService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.TokenService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordVerificationRequest=t},,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){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,this.defaultUriMatch=n.defaultUriMatch,this.pinProtectedKey=n.pinProtectedKey,this.protectedPin=n.protectedPin}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.defaultUriMatch="defaultUriMatch",n.pinProtectedKey="pinProtectedKey",n.protectedPin="protectedPin",n}();l.ConstantsService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){this.cardholderName=null,this.expMonth=null,this.expYear=null,this.code=null,this._brand=null,this._number=null,this._subTitle=null}return Object.defineProperty(n.prototype,"maskedCode",{get:function(){return null!=this.code?"•".repeat(this.code.length):null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"brand",{get:function(){return this._brand},set:function(n){this._brand=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"number",{get:function(){return this._number},set:function(n){this._number=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){if(null==this._subTitle&&(this._subTitle=this.brand,null!=this.number&&this.number.length>=4)){null!=this._subTitle&&""!==this._subTitle?this._subTitle+=", ":this._subTitle="";var n=this.number.length>=5&&null!=this.number.match(new RegExp("^3[47]"))?5:4;this._subTitle+="*"+this.number.substr(this.number.length-n)}return 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=function(){function n(n){this.type=null,n&&(this.type=n.type)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){return null},enumerable:!0,configurable:!0}),n}();l.SecureNoteView=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuthService=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(765).BroadcasterService);l.BroadcasterService=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=e(37),u=function(){function n(n){this.el=n}return Object.defineProperty(n.prototype,"appAutofocus",{set:function(n){this.autofocus=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){!t.Utils.isMobileBrowser&&this.autofocus&&this.el.nativeElement.focus()},n}();l.AutofocusDirective=u},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(253),o=(e(0),e(781)),i=e(37),a=function(n){function l(l){var e=n.call(this,l)||this;return e.el=null,e}return u(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 u=this.componentFactoryResolver.resolveComponentFactory(n),o=this.container.createComponent(u),a=Array.from(document.querySelectorAll(".modal"));return a.length>0&&(this.el=r(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(),i.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()})),o.instance},l.prototype.close=function(){null!=this.el&&this.el.modal("hide")},l}(o.ModalComponent);l.ModalComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Authenticator=0]="Authenticator",n[n.Email=1]="Email",n[n.Duo=2]="Duo",n[n.Yubikey=3]="Yubikey",n[n.U2f=4]="U2f",n[n.Remember=5]="Remember",n[n.OrganizationDuo=6]="OrganizationDuo"}(l.TwoFactorProviderType||(l.TwoFactorProviderType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){}return n.prototype.onClick=function(n){n.stopPropagation()},n}();l.StopPropDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(812),r=e(4),o=e(97),i=e(72),a=e(32),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"img",[["alt",""]],[[8,"src",4]],[[null,"error"]],function(n,l,e){var u=!0;"error"===l&&(u=!1!==t.ɵnov(n,1).onError()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.FallbackSrcDirective,[t.ElementRef],{appFallbackSrc:[0,"appFallbackSrc"]},null)],function(n,l){var e=l.component;n(l,1,0,t.ɵinlineInterpolate(1,"",e.fallbackImage,""))},function(n,l){n(l,0,0,l.component.image)})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa fa-fw fa-lg ",e.icon,""))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,d)),t.ɵdid(3,16384,null,0,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(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"]))],function(n,l){var e=l.component;n(l,3,0,e.imageEnabled&&e.image),n(l,6,0,!e.imageEnabled||!e.image)},null)}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-icon",[],null,null,null,p,s)),t.ɵdid(1,573440,null,0,o.IconComponent,[i.EnvironmentService,a.StateService],null,null)],null,null)}l.RenderType_IconComponent=s,l.View_IconComponent_0=p,l.View_IconComponent_Host_0=f;var v=t.ɵccf("app-vault-icon",o.IconComponent,f,{cipher:"cipher"},{},[]);l.IconComponentNgFactory=v},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoFunctionService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuditService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Generic=0]="Generic"}(l.SecureNoteType||(l.SecureNoteType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1?n[o]=i||null:n[o]=i?new r.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 r=n[e[u]||u];t.indexOf(u)>-1?l[u]=null!=r?r:null:l[u]=null!=r?r.encryptedString:null}},n.prototype.decryptObj=function(n,l,e){return t(this,void 0,void 0,function(){var t,r,o;return u(this,function(u){switch(u.label){case 0:for(o in t=[],r=this,l)l.hasOwnProperty(o)&&function(u){var o=Promise.resolve().then(function(){var n=l[u]||u;return r[n]?r[n].decrypt(e):null}).then(function(l){n[u]=l});t.push(o)}(o);return[4,Promise.all(t)];case 1:return u.sent(),[2,n]}})})},n}();l.default=o},,,,,,,,,,,,,,,,,,,,,,,,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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SearchService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(88),r=e(170),o=e(145),i=e(89),a=function(){function n(n){this.id=null,this.organizationId=null,this.folderId=null,this.name=null,this.notes=null,this.type=null,this.favorite=!1,this.organizationUseTotp=!1,this.edit=!1,this.login=new o.LoginView,this.identity=new r.IdentityView,this.card=new u.CardView,this.secureNote=new i.SecureNoteView,this.attachments=null,this.fields=null,this.passwordHistory=null,this.collectionIds=null,this.revisionDate=null,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 this.type!==t.CipherType.Login||null==this.login?null:null==this.login.password||""===this.login.password?null:this.login.passwordRevisionDate},enumerable:!0,configurable:!0}),n}();l.CipherView=a},,,,,,,,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]1&&(e=this.getFirstLetters(t,this.charCount)),null==e&&(e=t.substr(0,this.charCount)),o=this.getCharText(e),i=this.stringToColor(t),(a=this.getSvg(this.size,i)).appendChild(o),s=window.document.createElement("div").appendChild(a).outerHTML,d=window.btoa(unescape(encodeURIComponent(s))),this.src="data:image/svg+xml;base64,"+d,u.label=4;case 4:return[2]}})})},n.prototype.stringToColor=function(n){for(var l=0,e=0;e>8*e&255).toString(16)).substr(-2)}return t},n.prototype.getFirstLetters=function(n,l){var e=n.split(" ");if(e.length>1){for(var t="",u=0;u0},enumerable:!0,configurable:!0}),n}();l.LoginView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=null,this.name=null,this.revisionDate=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});var t=function(){return function(n){this.id=null,this.organizationId=null,this.name=null,this.readOnly=null,n&&(this.id=n.id,this.organizationId=n.organizationId,this.readOnly=n.readOnly)}}();l.CollectionView=t},,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(144),o=e(42),i=e(106),a=e(32),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){var e=n(l,2,0,l.component.circle);n(l,1,0,e)},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,r.AvatarComponent,[o.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",r.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(37),u=function(){function n(n){this.title=null,this.middleName=null,this.address1=null,this.address2=null,this.address3=null,this.city=null,this.state=null,this.postalCode=null,this.country=null,this.company=null,this.email=null,this.phone=null,this.ssn=null,this.username=null,this.passportNumber=null,this.licenseNumber=null,this._firstName=null,this._lastName=null,this._subTitle=null}return Object.defineProperty(n.prototype,"firstName",{get:function(){return this._firstName},set:function(n){this._firstName=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"lastName",{get:function(){return this._lastName},set:function(n){this._lastName=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){return null!=this._subTitle||null==this.firstName&&null==this.lastName||(this._subTitle="",null!=this.firstName&&(this._subTitle=this.firstName),null!=this.lastName&&(""!==this._subTitle&&(this._subTitle+=" "),this._subTitle+=this.lastName)),this._subTitle},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"fullName",{get:function(){if(null!=this.title||null!=this.firstName||null!=this.middleName||null!=this.lastName){var n="";return null!=this.title&&(n+=this.title+" "),null!=this.firstName&&(n+=this.firstName+" "),null!=this.middleName&&(n+=this.middleName+" "),null!=this.lastName&&(n+=this.lastName),n.trim()}return null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"fullAddress",{get:function(){var n=this.address1;return t.Utils.isNullOrWhitespace(this.address2)&&(t.Utils.isNullOrWhitespace(n)&&(n+=", "),n+=this.address2),t.Utils.isNullOrWhitespace(this.address3)&&(t.Utils.isNullOrWhitespace(n)&&(n+=", "),n+=this.address3),n},enumerable:!0,configurable:!0}),n}();l.IdentityView=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(8);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:"",exp_year:"",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:""},{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:""}];for(var u=(new Date).getFullYear(),r=u;r-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,u=t?window.Stripe.card:window.Stripe.bankAccount,r=t?n.card:n.bank;u.createToken(r,function(n,t){200===n&&null!=t.id?l(t.id):null!=t.error?e(t.error.message):e()})}})},n.prototype.getCountry=function(){return this.card.address_country},n}();l.PaymentComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(574),r=e(575),o=e(576),i=e(577),a=e(578),s=e(580),d=e(581),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 r.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 o.FieldData(n))})),null!=n.attachments&&(this.attachments=[],n.attachments.forEach(function(n){c.attachments.push(new u.AttachmentData(n))})),null!=n.passwordHistory&&(this.passwordHistory=[],n.passwordHistory.forEach(function(n){c.passwordHistory.push(new s.PasswordHistoryData(n))}))}}}();l.CipherData=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.id,this.organizationId=n.organizationId,this.name=n.name,this.readOnly=n.readOnly}}();l.CollectionData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?(a=[],[4,this.attachments.reduce(function(n,l){return n.then(function(){return l.decrypt(r)}).then(function(n){a.push(n)})},Promise.resolve())]):[3,13];case 12:o.sent(),n.attachments=a,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(r)}).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(r)}).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 a.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 i.CipherType.Login:l.login=this.login.toLoginData();break;case i.CipherType.SecureNote:l.secureNote=this.secureNote.toSecureNoteData();break;case i.CipherType.Card:l.card=this.card.toCardData();break;case i.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}(p.default);l.Cipher=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(3);var t=e(192),u=e(863),r=function(){function n(n){this.i18nService=n}return n.prototype.getDefaultDateFilters=function(){var n=new Date,l=new Date(n.getFullYear(),n.getMonth(),n.getDate(),23,59);n.setDate(n.getDate()-30);var e=new Date(n.getFullYear(),n.getMonth(),n.getDate(),0,0);return[this.toDateTimeLocalString(e),this.toDateTimeLocalString(l)]},n.prototype.formatDateFilters=function(n,l){var e=new Date(n),t=new Date(l+":59.999");if(isNaN(e.getTime())||isNaN(t.getTime())||t"+e+"";var t=this.makeAnchor(e);return t.setAttribute("href","#/organizations/"+n.organizationId+"/vault?search="+e+"&viewEvents="+n.cipherId),t.outerHTML},n.prototype.formatGroupId=function(n){var l=this.getShortId(n.groupId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/groups?search="+l),e.outerHTML},n.prototype.formatCollectionId=function(n){var l=this.getShortId(n.collectionId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/collections?search="+l),e.outerHTML},n.prototype.formatOrgUserId=function(n){var l=this.getShortId(n.organizationUserId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/people?search="+l+"&viewEvents="+n.organizationUserId),e.outerHTML},n.prototype.makeAnchor=function(n){var l=document.createElement("a");return l.title=this.i18nService.t("view"),l.innerHTML=""+n+"",l},n.prototype.getShortId=function(n){return n.substring(0,8)},n.prototype.toDateTimeLocalString=function(n){return n.getFullYear()+"-"+this.pad(n.getMonth()+1)+"-"+this.pad(n.getDate())+"T"+this.pad(n.getHours())+":"+this.pad(n.getMinutes())},n.prototype.pad=function(n){var l=Math.floor(Math.abs(n));return(l<10?"0":"")+l},n}();l.EventService=r;var o=function(){return function(){}}();l.EventInfo=o;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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]t){if(r===o.TwoFactorProviderType.U2f&&!n)return;e=r,t=i.priority}}),e},n.prototype.makePreloginKey=function(n,l){return u(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:l=l.trim().toLowerCase(),this.kdf=null,this.kdfIterations=null,u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.apiService.postPrelogin(new d.PreloginRequest(l))];case 2:return null!=(e=u.sent())&&(this.kdf=e.kdf,this.kdfIterations=e.kdfIterations),[3,4];case 3:if(null==(t=u.sent())||404!==t.statusCode)throw t;return[3,4];case 4:return[2,this.cryptoService.makeKey(n,l,this.kdf,this.kdfIterations)]}})})},n.prototype.logInHelper=function(n,l,e,t,d,p){return u(this,void 0,void 0,function(){var u,f,v,h,g,m,y,C,b,w;return r(this,function(r){switch(r.label){case 0:return[4,this.tokenService.getTwoFactorToken(n)];case 1:return u=r.sent(),[4,this.appIdService.getAppId()];case 2:return f=r.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,o.TwoFactorProviderType.Remember,u,!1,v):new c.TokenRequest(n,l,null,null,!1,v),[4,this.apiService.postIdentityToken(h)];case 3:return g=r.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 r.sent(),[4,this.userService.setInformation(this.tokenService.getUserId(),this.tokenService.getEmail(),this.kdf,this.kdfIterations)];case 5:return r.sent(),this.setCryptoKeys?[4,this.cryptoService.setKey(e)]:[3,15];case 6:return r.sent(),[4,this.cryptoService.setKeyHash(l)];case 7:return r.sent(),[4,this.cryptoService.setEncKey(C.key)];case 8:if(r.sent(),null!=C.privateKey)return[3,13];r.label=9;case 9:return r.trys.push([9,12,,13]),[4,this.cryptoService.makeKeyPair()];case 10:return b=r.sent(),[4,this.apiService.postAccountKeys(new s.KeysRequest(b[0],b[1].encryptedString))];case 11:return r.sent(),C.privateKey=b[1].encryptedString,[3,13];case 12:return w=r.sent(),console.error(w),[3,13];case 13:return[4,this.cryptoService.setEncPrivateKey(C.privateKey)];case 14:r.sent(),r.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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(0),o=(e(44),e(57),e(62),e(9),function(n){function l(l,e,t,u){var o=n.call(this,l,e,t,u)||this;return o.onSearchTextChanged=new r.EventEmitter,o.searchText="",o.searchPlaceholder=null,o}return u(l,n),l.prototype.searchTextChanged=function(){this.onSearchTextChanged.emit(this.searchText)},l}(e(810).GroupingsComponent));l.GroupingsComponent=o},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]500?500:this.ciphers.length,e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r(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(815).AddEditComponent));l.AddEditComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Invited=0]="Invited",n[n.Accepted=1]="Accepted",n[n.Confirmed=2]="Confirmed"}(l.OrganizationUserStatusType||(l.OrganizationUserStatusType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Domain=0]="Domain",n[n.Host=1]="Host",n[n.StartsWith=2]="StartsWith",n[n.Exact=3]="Exact",n[n.RegularExpression=4]="RegularExpression",n[n.Never=5]="Never"}(l.UriMatchType||(l.UriMatchType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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!=(r=u.sent())&&(t=r),[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!=(o=u.sent())?(this.error(o),[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 r=(new DOMParser).parseFromString(u.target.result,"text/html").querySelector("pre");return null!=r?void e(r.textContent):void t()}e(u.target.result)},u.onerror=function(){t()}})},n}();l.ImportComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(23),e(237),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return u(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(849).ExportComponent);l.ExportComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]1}),this.ciphers=e,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(238).CipherReportComponent);l.ReusedPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1?r.concat(n.login.username.substr(0,o).trim().toLowerCase().split(/[^A-Za-z0-9]/)).filter(function(n){return n.length>=3}):n.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/).filter(function(n){return n.length>=3})}var a=e.passwordGenerationService.passwordStrength(n.login.password,r.length>0?r:null);e.passwordStrengthCache.set(u,a.score)}var s=e.passwordStrengthCache.get(u);null!=s&&s<=3&&(e.passwordStrengthMap.set(n.id,e.scoreKey(s)),l.push(n))}}),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l.prototype.scoreKey=function(n){switch(n){case 4:return["strong","success"];case 3:return["good","primary"];case 2:return["weak","warning"];default:return["veryWeak","danger"]}},l}(e(238).CipherReportComponent);l.WeakPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(l.push(n),t.exposedPasswordMap.set(n.id,e))});e.push(u)}}),[4,Promise.all(e)];case 2:return u.sent(),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(238).CipherReportComponent);l.ExposedPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?[4,this.getAllCiphers()]:[3,6];case 4:return n=r.sent(),l=[],e=[],t=new Map,n.forEach(function(n){if(n.type===i.CipherType.Login&&(null==n.login.totp||""===n.login.totp)&&n.login.hasUris)for(var e=0;e0?[2]:[4,fetch(new Request("https://twofactorauth.org/data.json"))];case 1:if(200!==(n=o.sent()).status)throw new Error;return[4,n.json()];case 2:for(e in l=o.sent())if(l.hasOwnProperty(e))for(u in t=l[e])t.hasOwnProperty(u)&&(r=t[u]).tfa&&null!=r.url&&null!=(i=a.Utils.getHostname(r.url))&&this.services.set(i,r.doc);return[2]}})})},l}(e(238).CipherReportComponent);l.InactiveTwoFactorReportComponent=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(){}return n.prototype.transform=function(n,l,e,t,u){return null==n||0===n.length?[]:null==l||l.length<2?n:(l=l.trim().toLowerCase(),n.filter(function(n){return null!=e&&null!=n[e]&&n[e].toString().toLowerCase().indexOf(l)>-1||(null!=t&&null!=n[t]&&n[t].toString().toLowerCase().indexOf(l)>-1||null!=u&&null!=n[u]&&n[u].toString().toLowerCase().indexOf(l)>-1)}))},n}();l.SearchPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.id=n,this.readOnly=l}}();l.SelectionReadOnlyRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.readOnly=n.ReadOnly}}();l.SelectionReadOnlyResponse=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.NotificationsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SettingsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(8);var t=function(){function n(n){this.platformUtilsService=n,this.year="2015"}return n.prototype.ngOnInit=function(){this.year=(new Date).getFullYear().toString(),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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(this.email=t.email),null!=t.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=t.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:t.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return e.sent(),null!=l&&l.unsubscribe(),[2]}})})}),[2]})})},l.prototype.goAfterLogIn=function(){return r(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(769).LoginComponent);l.LoginComponent=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(n.email=e.email),null!=e.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}})),null!=l&&l.unsubscribe()})},l}(e(789).RegisterComponent);l.RegisterComponent=r},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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(10),e(5),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u)||this}return u(l,n),l}(e(792).HintComponent);l.HintComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o,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(),o=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent),this.modal=this.attachmentsModalRef.createComponent(o).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(r.ModalComponent);this.modal=this.shareModalRef.createComponent(e).instance;var o=this.modal.show(v.ShareComponent,this.shareModalRef);o.cipherId=n.id,o.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(r.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var o=this.modal.show(p.CollectionsComponent,this.collectionsModalRef);o.cipherId=n.id,o.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(o){return null!=this.modal&&this.modal.close(),n=this.componentFactoryResolver.resolveComponentFactory(r.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,o=this;return u(this,function(i){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(l).instance,(e=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=n,e.onSavedFolder.subscribe(function(){return t(o,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(o,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(){o.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(r.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var o=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return o.cipherId=null==n?null:n.id,o.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]}})})}),o.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}),o},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(r.ModalComponent);this.modal=this.bulkDeleteModalRef.createComponent(e).instance;var o=this.modal.show(s.BulkDeleteComponent,this.bulkDeleteModalRef);o.cipherIds=l,o.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(r.ModalComponent);this.modal=this.bulkShareModalRef.createComponent(e).instance;var o=this.modal.show(c.BulkShareComponent,this.bulkShareModalRef);o.ciphers=l,o.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(r.ModalComponent);this.modal=this.bulkMoveModalRef.createComponent(e).instance;var o=this.modal.show(d.BulkMoveComponent,this.bulkMoveModalRef);o.cipherIds=l,o.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(r.ModalComponent);this.modal=this.updateKeyModalRef.createComponent(l).instance,this.modal.show(o.UpdateKeyComponent,this.updateKeyModalRef),this.modal.onClosed.subscribe(function(){n.modal=null})},n.prototype.clearFilters=function(){this.folderId=null,this.collectionId=null,this.favorites=!1,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={favorites:!!this.favorites||null,type:this.type,folderId:this.folderId,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(l){var e=n.call(this,l)||this;return e.id=l.id,e}return u(l,n),l}(e(193).CipherRequest);l.CipherWithIdRequest=r},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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.viewEvents(r[0]),null!=e&&e.unsubscribe(),[2]}})})}),[2]}})})})},n.prototype.ngOnDestroy=function(){this.broadcasterService.unsubscribe("OrgVaultComponent")},n.prototype.clearGroupingFilters=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchVault"),[4,this.ciphersComponent.applyFilter()];case 1:return n.sent(),this.clearFilters(),this.go(),[2]}})})},n.prototype.filterCipherType=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchType"),e=function(l){return l.type===n},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.type=n,this.go(),[2]}})})},n.prototype.filterCollection=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchCollection"),e=function(l){return"unassigned"===n?null==l.collectionIds||0===l.collectionIds.length:null!=l.collectionIds&&l.collectionIds.indexOf(n)>-1},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){var l=this;if(null!=this.organization.maxStorageGb&&0!==this.organization.maxStorageGb){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.attachmentsModalRef.createComponent(e).instance;var o=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef);o.organization=this.organization,o.cipherId=n.id;var i=!1;o.onUploadedAttachment.subscribe(function(){return i=!0}),o.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(r.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var o=this.modal.show(s.CollectionsComponent,this.collectionsModalRef);this.organization.isAdmin&&(o.collectionIds=n.collectionIds,o.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),o.organization=this.organization,o.cipherId=n.id,o.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(r.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var o=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return o.organization=this.organization,o.cipherId=null==n?null:n.id,o.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]}})})}),o.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}),o},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(r.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(o.EntityEventsComponent,this.eventsModalRef)).name=n.name,e.organizationId=this.organization.id,e.entityId=n.id,e.showUser=!0,e.entity="cipher",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.clearFilters=function(){this.collectionId=null,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={type:this.type,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?this.events=this.events.concat(r):this.events=r,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EntityEventsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?this.events=this.events.concat(r):this.events=r,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EventsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?n.data:[]).sort(r.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(o.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(o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&l[0].status===i.OrganizationUserStatusType.Confirmed&&this.events(l[0]),null!=e&&e.unsubscribe(),[2]})})}),[2]}})})}),[2]})})},n.prototype.load=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return[4,this.apiService.getOrganizationUsers(this.organizationId)];case 1:return n=e.sent(),this.statusMap.clear(),this.allUsers=null!=n.data&&n.data.length>0?n.data:[],this.allUsers.sort(s.Utils.getSortFunction(this.i18nService,"email")),this.allUsers.forEach(function(n){l.statusMap.has(n.status)?l.statusMap.get(n.status).push(n):l.statusMap.set(n.status,[n])}),this.filter(this.status),this.loading=!1,[2]}})})},n.prototype.filter=function(n){this.status=n,null!=this.status?this.users=this.statusMap.get(this.status):this.users=this.allUsers},Object.defineProperty(n.prototype,"invitedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Invited)?this.statusMap.get(i.OrganizationUserStatusType.Invited).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"acceptedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Accepted)?this.statusMap.get(i.OrganizationUserStatusType.Accepted).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"confirmedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Confirmed)?this.statusMap.get(i.OrganizationUserStatusType.Confirmed).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"showConfirmUsers",{get:function(){return null!=this.allUsers&&null!=this.statusMap&&this.allUsers.length>1&&this.confirmedCount>0&&this.confirmedCount<3&&this.acceptedCount>0},enumerable:!0,configurable:!0}),n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(p.UserAddEditComponent,this.addEditModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedUser.subscribe(function(){l.modal.close(),l.removeUser(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.invite=function(){this.edit(null)},n.prototype.groups=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.groupsModalRef.createComponent(e).instance;var t=this.modal.show(v.UserGroupsComponent,this.groupsModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.remove=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),n.name||n.email,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteOrganizationUser(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",n.name||n.email)),this.removeUser(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.reinvite=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return null!=this.actionPromise?[2]:(this.actionPromise=this.apiService.postOrganizationUserReinvite(this.organizationId,n.id),[4,this.actionPromise]);case 1:return l.sent(),this.analytics.eventTrack.next({action:"Reinvited User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenReinvited",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.confirm=function(n){return t(this,void 0,void 0,function(){function l(l){n.status=i.OrganizationUserStatusType.Confirmed;var e=l.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n);e>-1&&(l.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(e,1),l.statusMap.get(i.OrganizationUserStatusType.Confirmed).push(n))}var e,t,o,a=this;return u(this,function(u){switch(u.label){case 0:return null!=this.actionPromise?[2]:[4,this.storageService.get(r.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,(o=this.modal.show(f.UserConfirmComponent,this.confirmModalRef)).name=null!=n?n.name||n.email:null,o.organizationId=this.organizationId,o.organizationUserId=null!=n?n.id:null,o.userId=null!=n?n.userId:null,o.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,r,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=(r=console).log,a="User's fingerprint: ",[4,this.cryptoService.getFingerprint(n.userId,t.buffer)];case 4:return i.apply(r,[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(10),e(96),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return u(l,n),l}(e(780).TwoFactorOptionsComponent);l.TwoFactorOptionsComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(l,e){var t=n.call(this)||this;return t.masterPasswordHash=e,t.email=l,t}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorEmailRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.publicKey=n,this.encryptedPrivateKey=l}}();l.KeysRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(451),o=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,t=n(l,4,0,e.scoreWidth+"%");n(l,3,0,t),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,r.PasswordStrengthComponent,[o.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",r.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(102),r=e(169),o=e(144),i=e(42),a=e(106),s=e(32),d=e(7),c=e(3),p=e(4),f=e(10),v=e(463),h=e(19),g=e(8),m=e(71),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,r.View_AvatarComponent_0,r.RenderType_AvatarComponent)),t.ɵdid(4,638976,null,0,o.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,u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"loggedInAs"));n(l,9,0,u),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,t=n(l,3,0,e.selfHosted);n(l,2,0,"navbar navbar-expand navbar-dark bg-primary",t);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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,7,0,n(l,9,0,t.ɵnov(l,0),"pageTitle","Bitwarden")),"");n(l,7,0,e,t.ɵnov(l,8).target,t.ɵnov(l,8).href),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var u=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"myVault"));n(l,25,0,u),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href);var r=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"tools"));n(l,36,0,r),n(l,45,0,t.ɵnov(l,46).target,t.ɵnov(l,46).href);var o=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"settings"));n(l,47,0,o),n(l,69,0,t.ɵnov(l,70).target,t.ɵnov(l,70).href);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"myAccount"));n(l,73,0,i);var a=t.ɵunv(l,79,0,n(l,80,0,t.ɵnov(l,0),"getHelp"));n(l,79,0,a);var s=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"getApps"));n(l,85,0,s);var d=t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"lockNow"));n(l,93,0,d);var c=t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l,0),"logOut"));n(l,99,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,b,y)),t.ɵdid(1,114688,null,0,v.NavbarComponent,[h.MessagingService,g.PlatformUtilsService,m.TokenService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_NavbarComponent=y,l.View_NavbarComponent_0=b,l.View_NavbarComponent_Host_0=w;var S=t.ɵccf("app-navbar",v.NavbarComponent,w,{},{},[]);l.NavbarComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(464),i=e(8),a=t.ɵcrt({encapsulation:2,styles:[],data:{}});function s(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"versionNumber",e.version));n(l,11,0,u)})}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,o.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",o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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(235).TwoFactorBaseComponent);l.TwoFactorU2fComponent=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r(l,void 0,void 0,function(){var n;return o(this,function(l){switch(l.label){case 0:return this.formPromise=this.apiService.putTwoFactorYubiKey(e),[4,this.formPromise];case 1:return n=l.sent(),[4,this.processResponse(n)];case 2:return l.sent(),this.toasterService.popAsync("success",null,this.i18nService.t("yubikeysUpdated")),[2]}})})})},l.prototype.disable=function(){return n.prototype.disable.call(this,this.disablePromise)},l.prototype.remove=function(n){n.existingKey=null,n.key=null},l.prototype.processResponse=function(n){this.enabled=n.enabled,this.keys=[{key:n.key1,existingKey:this.padRight(n.key1)},{key:n.key2,existingKey:this.padRight(n.key2)},{key:n.key3,existingKey:this.padRight(n.key3)},{key:n.key4,existingKey:this.padRight(n.key4)},{key:n.key5,existingKey:this.padRight(n.key5)}],this.nfc=n.nfc||!n.enabled},l.prototype.padRight=function(n,l,e){if(void 0===l&&(l="•"),void 0===e&&(e=44),null==n||null==l||n.length>=e)return n;for(var t=(e-n.length)/l.length,u=0;u":t=">",u=!0;break;case" ":t=" ",u=!0}var r="letter";u||t.match(/[^\w ]/)?r="special":t.match(/\d/)&&(r="number"),l+=''+t+""}return l},n}();l.ColorPasswordPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(8);var t=function(){function n(n,l){this.el=n,this.platformUtilsService=l}return n.prototype.onCopy=function(){if(null!=window){for(var n="",l=window.getSelection(),e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(n.uris=[],this.uris.forEach(function(l){n.uris.push(l.toLoginUriData())})),n},l}(e(109).default);l.Login=d},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(579),o=e(234),i=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 u(l,n),l.prototype.decrypt=function(n){return this.decryptObj(new o.LoginUriView(this),{uri:null},n)},l.prototype.toLoginUriData=function(){var n=new r.LoginUriData;return this.buildDataModel(this,n,{uri:null},["match"]),n},l}(e(109).default);l.LoginUri=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 h.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 g.IdentityTwoFactorResponse(e)];case 6:return[2,Promise.reject(new c.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 o.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 w.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 f.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 f.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 f.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 a.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 a.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 m.ListResponse(l,a.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 a.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 a.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 a.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 a.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 a.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 a.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 a.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 a.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 s.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 m.ListResponse(n,s.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 m.ListResponse(l,s.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 _.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 s.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 s.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 v.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 m.ListResponse(l,v.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 v.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 v.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 b.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 m.ListResponse(l,b.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 R.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 d.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 d.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 m.ListResponse(n,O.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 m.ListResponse(l,O.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 I.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 A.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 k.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 k.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 T.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 T.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 N.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 I.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 A.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 k.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 k.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 T.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 T.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 O.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 O.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 C.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 y.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 C.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 C.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 C.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 m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsCipher=function(n,l,e,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("/ciphers/"+n+"/events",l,e,r),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsOrganization=function(n,l,e,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+"/events",l,e,r),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsOrganizationUser=function(n,l,e,r,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+"/users/"+l+"/events",e,r,o),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.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 P.UserKeyResponse(l)]}})})},n.prototype.getHibpBreach=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/hibp/breach?username="+n,null,!0,!0)];case 1:return[2,l.sent().map(function(n){return new i.BreachAccountResponse(n)})]}})})},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,r,o){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},r?[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)))),o&&t.set("Accept","application/json"),i.headers=t,[4,this.fetch(new Request(this.apiBaseUrl+l,i))];case 3:return s=u.sent(),o&&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 c.ErrorResponse(e,n.status,l)]}})})},n.prototype.doRefreshToken=function(){return t(this,void 0,void 0,function(){var n,l,e,t,r,o;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(),r=new h.IdentityTokenResponse(t),[4,this.tokenService.setTokens(r.accessToken,r.refreshToken)];case 4:return u.sent(),[2,r];case 5:return[4,this.handleError(e,!0)];case 6:return o=u.sent(),[2,Promise.reject(o)]}})})},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=V},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(){return function(n){this.charges=[],this.invoices=[],this.transactions=[],this.storageName=n.StorageName,this.storageGb=n.StorageGb,this.maxStorageGb=n.MaxStorageGb,this.paymentSource=null==n.PaymentSource?null:new o(n.PaymentSource),this.subscription=null==n.Subscription?null:new i(n.Subscription),this.upcomingInvoice=null==n.UpcomingInvoice?null:new s(n.UpcomingInvoice),null!=n.Charges&&(this.charges=n.Charges.map(function(n){return new d(n)})),null!=n.Transactions&&(this.transactions=n.Transactions.map(function(n){return new p(n)})),null!=n.Invoices&&(this.invoices=n.Invoices.map(function(n){return new c(n)})),this.license=n.License,this.expiration=n.Expiration}}();l.BillingResponse=r;var o=function(){return function(n){this.type=n.Type,this.cardBrand=n.CardBrand,this.description=n.Description,this.needsVerification=n.NeedsVerification}}();l.BillingSourceResponse=o;var i=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 a(n)}))}}();l.BillingSubscriptionResponse=i;var a=function(){return function(n){this.name=n.Name,this.amount=n.Amount,this.quantity=n.Quantity,this.interval=n.Interval}}();l.BillingSubscriptionItemResponse=a;var s=function(){return function(n){this.date=n.Date,this.amount=n.Amount}}();l.BillingInvoiceInfoResponse=s;var d=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.paymentSource=null!=n.PaymentSource?new o(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=d;var c=function(n){function l(l){var e=n.call(this,l)||this;return e.url=l.Url,e.pdfUrl=l.PdfUrl,e.number=l.Number,e.paid=l.Paid,e}return u(l,n),l}(s);l.BillingInvoiceResponse=c;var p=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.refunded=n.Refunded,this.partiallyRefunded=n.PartiallyRefunded,this.refundedAmount=n.RefundedAmount,this.type=n.Type,this.paymentMethodType=n.PaymentMethodType,this.details=n.Details}}();l.BillingTransactionResponse=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(929),u=e(930),r=e(931),o=e(932),i=e(933),a=e(934),s=e(936),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 r.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 o.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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name}}();l.CollectionResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.readOnly=l.ReadOnly||!1,e}return u(l,n),l}(o);l.CollectionDetailsResponse=i;var a=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 r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.CollectionGroupDetailsResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(937),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(947),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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]5&&(n.passwordHistory=n.passwordHistory.slice(0,5)),o.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=o.sent()))throw new Error("Cannot encrypt cipher for organization. No key.");o.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 o.sent(),[2,d]}})})},l.prototype.encryptAttachments=function(n,l){return r(this,void 0,void 0,function(){var e,t,u=this;return o(this,function(i){switch(i.label){case 0:return null==n||0===n.length?[2,null]:(e=[],t=[],n.forEach(function(n){return r(u,void 0,void 0,function(){var u,i,a=this;return o(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 r(a,void 0,void 0,function(){var e;return o(this,function(r){switch(r.label){case 0:return null==n.key?[3,2]:(e=u,[4,this.cryptoService.encrypt(n.key.key,l)]);case 1:e.key=r.sent(),r.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 r(this,void 0,void 0,function(){var e,t;return o(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 r(this,void 0,void 0,function(){var e;return o(this,function(t){switch(t.label){case 0:return(e=new v.Field).type=n.type,n.type===a.FieldType.Boolean&&"true"!==n.value&&(n.value="false"),[4,this.encryptObjProperty(n,e,{name:null,value:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.encryptPasswordHistories=function(n,l){return r(this,void 0,void 0,function(){var e,t;return o(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 r(this,void 0,void 0,function(){var e;return o(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 r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.userService.getUserId()];case 1:return l=u.sent(),[4,this.storageService.get(P)];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 r(this,void 0,void 0,function(){var n,l,e,t,u;return o(this,function(r){switch(r.label){case 0:return[4,this.userService.getUserId()];case 1:return n=r.sent(),[4,this.storageService.get(P)];case 2:return l=r.sent(),[4,this.storageService.get(E+n)];case 3:for(u in e=r.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 r(this,void 0,void 0,function(){var n,l;return o(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),r(this,void 0,void 0,function(){return o(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 r(this,void 0,void 0,function(){var e,t,u,r,a,d;return o(this,function(o){switch(o.label){case 0:return null!=n||l?(e=T.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=o.sent(),r=u[0],a=u[1],[4,this.storageService.get(O.ConstantsService.defaultUriMatch)];case 2:return null==(d=o.sent())&&(d=s.UriMatchType.Domain),[2,a.filter(function(t){if(l&&l.indexOf(t.type)>-1)return!0;if(null!=n&&t.type===i.CipherType.Login&&null!=t.login.uris)for(var u=0;u-1){if(!x.has(o.domain))return!0;var a=T.Utils.getHost(n);if(!x.get(o.domain).has(a))return!0}break;case s.UriMatchType.Host:var c=T.Utils.getHost(n);if(null!=c&&c===T.Utils.getHost(o.uri))return!0;break;case s.UriMatchType.Exact:if(n===o.uri)return!0;break;case s.UriMatchType.StartsWith:if(n.startsWith(o.uri))return!0;break;case s.UriMatchType.RegularExpression:try{if(new RegExp(o.uri,"i").test(n))return!0}catch(n){}break;case s.UriMatchType.Never:}}return!1})]}})})},l.prototype.getAllFromApiForOrganization=function(n){return r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.apiService.getCiphersOrganization(n)];case 1:return null!=(l=u.sent())&&null!=l.data&&l.data.length?(e=[],t=[],l.data.forEach(function(n){var l=new d.CipherData(n),u=new f.Cipher(l);t.push(u.decrypt().then(function(n){return e.push(n)}))}),[4,Promise.all(t)]):[3,3];case 2:return u.sent(),e.sort(this.getLocaleSortingFunction()),[2,e];case 3:return[2,[]]}})})},l.prototype.getLastUsedForUrl=function(n){return r(this,void 0,void 0,function(){var l;return o(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 r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.storageService.get(P)];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(P,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 r=n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u);return 0!==r||l.type!==i.CipherType.Login||e.type!==i.CipherType.Login?r:(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 r(this,void 0,void 0,function(){var u,r,i,a,s,d,c,p,f,v;return o(this,function(o){switch(o.label){case 0:return[4,fetch(new Request(l.url,{cache:"no-cache"}))];case 1:if(200!==(u=o.sent()).status)throw Error("Failed to download attachment: "+u.status.toString());return[4,u.arrayBuffer()];case 2:return r=o.sent(),[4,this.cryptoService.decryptFromBytes(r,null)];case 3:return i=o.sent(),[4,this.cryptoService.getOrgKey(t)];case 4:return a=o.sent(),[4,this.cryptoService.encrypt(l.fileName,a)];case 5:return s=o.sent(),[4,this.cryptoService.makeEncKey(a)];case 6:return d=o.sent(),[4,this.cryptoService.encryptToBytes(i,d[0])];case 7:c=o.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(!T.Utils.isNode||T.Utils.isBrowser)throw l;p.append("key",d[1].encryptedString),p.append("data",n.from(c),{filepath:s.encryptedString,contentType:"application/octet-stream"})}o.label=8;case 8:return o.trys.push([8,10,,11]),[4,this.apiService.postShareCipherAttachment(e,l.id,p,t)];case 9:return o.sent(),[3,11];case 10:throw v=o.sent(),new Error(v.getSingleMessage());case 11:return[2]}})})},l.prototype.encryptObjProperty=function(n,l,e,t){return r(this,void 0,void 0,function(){var u,r,i;return o(this,function(o){switch(o.label){case 0:for(i in u=[],r=this,e)e.hasOwnProperty(i)&&function(l,o){var i=Promise.resolve().then(function(){var u=n[e[l]||l];return u&&""!==u?r.cryptoService.encrypt(u,t):null}).then(function(n){o[l]=n});u.push(i)}(i,l);return[4,Promise.all(u)];case 1:return o.sent(),[2]}})})},l.prototype.encryptCipherData=function(n,l,e){return r(this,void 0,void 0,function(){var t,u;return o(this,function(r){switch(r.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(r.sent(),null==l.login.uris)return[3,6];n.login.uris=[],t=0,r.label=3;case 3:return t0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?[2,this.orgKeys]:[4,this.storageService.get(y)];case 1:if(null==(n=o.sent()))return[2,null];for(u in l=new Map,e=!1,t=[],n)t.push(u);r=0,o.label=2;case 2:return r53)throw new Error("We cannot generate numbers larger than 53 bits.");return r=Math.ceil(u/8),i=Math.pow(2,u)-1,s=Uint8Array.bind,[4,this.cryptoFunctionService.randomBytes(r)];case 1:for(a=new(s.apply(Uint8Array,[void 0,o.sent()])),d=8*(r-1),c=0;c=t?[2,this.randomNumber(n,l)]:[2,n+e]}})})},n.prototype.aesEncrypt=function(n,l){return r(this,void 0,void 0,function(){var e,t,u,r,i,a;return o(this,function(o){switch(o.label){case 0:return e=new c.EncryptedObject,t=e,[4,this.getKeyForEncryption(l)];case 1:return t.key=o.sent(),u=e,[4,this.cryptoFunctionService.randomBytes(16)];case 2:return u.iv=o.sent(),r=e,[4,this.cryptoFunctionService.aesEncrypt(n,e.iv,e.key.encKey)];case 3:return r.data=o.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=o.sent(),o.label=5;case 5:return[2,e]}})})},n.prototype.aesDecryptToUtf8=function(n,l,e,t,u){return r(this,void 0,void 0,function(){var r,i,a,s;return o(this,function(o){switch(o.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return r=o.sent(),null!=(i=this.resolveLegacyKey(n,r)).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=o.sent(),[4,this.cryptoFunctionService.compareFast(a.mac,s)];case 3:if(!o.sent())return console.error("mac failed."),[2,null];o.label=4;case 4:return[2,this.cryptoFunctionService.aesDecryptFast(a)]}})})},n.prototype.aesDecryptToBytes=function(n,l,e,t,u){return r(this,void 0,void 0,function(){var r,i,a,s;return o(this,function(o){switch(o.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return r=o.sent(),null!=(i=this.resolveLegacyKey(n,r)).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=o.sent())?[2,null]:[4,this.cryptoFunctionService.compare(t,s)];case 3:if(!o.sent())return console.error("mac failed."),[2,null];o.label=4;case 4:return[4,this.cryptoFunctionService.aesDecrypt(l,e,i.encKey)];case 5:return[2,o.sent()]}})})},n.prototype.rsaDecrypt=function(n){return r(this,void 0,void 0,function(){var l,e,t,u,r,i;return o(this,function(o){switch(o.label){case 0:if(l=n.split("."),e=null,1===l.length)e=a.EncryptionType.Rsa2048_OaepSha256_B64,t=[l[0]];else if(2===l.length)try{e=parseInt(l[0],null),t=l[1].split("|")}catch(n){}switch(e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}if(null==t||t.length<=0)throw new Error("encPieces unavailable.");return u=h.Utils.fromB64ToArray(t[0]).buffer,[4,this.getPrivateKey()];case 1:if(null==(r=o.sent()))throw new Error("No private key.");switch(i="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:i="sha256";break;case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}return[2,this.cryptoFunctionService.rsaDecrypt(u,r,i)]}})})},n.prototype.getKeyForEncryption=function(n){return r(this,void 0,void 0,function(){var l;return o(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 r(this,void 0,void 0,function(){var l,e,t,u,r;return o(this,function(o){switch(o.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,[o.sent()]),r=(u=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("mac"),32)];case 2:return r.apply(u,[o.sent(),32]),[2,new p.SymmetricCryptoKey(l.buffer)]}})})},n.prototype.hkdfExpand=function(n,l,e){return r(this,void 0,void 0,function(){var t,u,r,i,a,s,d;return o(this,function(o){switch(o.label){case 0:t=32,u=new Uint8Array(e),r=new Uint8Array(0),i=Math.ceil(e/t),a=0,o.label=1;case 1:return ar)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),r(this,void 0,void 0,function(){var e,t;return o(this,function(u){switch(u.label){case 0:return e=null,32!==n.key.byteLength?[3,3]:[4,this.stretchKey(n)];case 1:return t=u.sent(),[4,this.encrypt(l,t)];case 2:return e=u.sent(),[3,6];case 3:return 64!==n.key.byteLength?[3,5]:[4,this.encrypt(l,n)];case 4:return e=u.sent(),[3,6];case 5:throw new Error("Invalid key size.");case 6:return[2,[new p.SymmetricCryptoKey(l),e]]}})})},t([v.sequentialize(S),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getEncKey",null),t([v.sequentialize(_),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getOrgKeys",null),n}();l.CryptoService=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.EEFLongWordList=["abacus","abdomen","abdominal","abide","abiding","ability","ablaze","able","abnormal","abrasion","abrasive","abreast","abridge","abroad","abruptly","absence","absentee","absently","absinthe","absolute","absolve","abstain","abstract","absurd","accent","acclaim","acclimate","accompany","account","accuracy","accurate","accustom","acetone","achiness","aching","acid","acorn","acquaint","acquire","acre","acrobat","acronym","acting","action","activate","activator","active","activism","activist","activity","actress","acts","acutely","acuteness","aeration","aerobics","aerosol","aerospace","afar","affair","affected","affecting","affection","affidavit","affiliate","affirm","affix","afflicted","affluent","afford","affront","aflame","afloat","aflutter","afoot","afraid","afterglow","afterlife","aftermath","aftermost","afternoon","aged","ageless","agency","agenda","agent","aggregate","aghast","agile","agility","aging","agnostic","agonize","agonizing","agony","agreeable","agreeably","agreed","agreeing","agreement","aground","ahead","ahoy","aide","aids","aim","ajar","alabaster","alarm","albatross","album","alfalfa","algebra","algorithm","alias","alibi","alienable","alienate","aliens","alike","alive","alkaline","alkalize","almanac","almighty","almost","aloe","aloft","aloha","alone","alongside","aloof","alphabet","alright","although","altitude","alto","aluminum","alumni","always","amaretto","amaze","amazingly","amber","ambiance","ambiguity","ambiguous","ambition","ambitious","ambulance","ambush","amendable","amendment","amends","amenity","amiable","amicably","amid","amigo","amino","amiss","ammonia","ammonium","amnesty","amniotic","among","amount","amperage","ample","amplifier","amplify","amply","amuck","amulet","amusable","amused","amusement","amuser","amusing","anaconda","anaerobic","anagram","anatomist","anatomy","anchor","anchovy","ancient","android","anemia","anemic","aneurism","anew","angelfish","angelic","anger","angled","angler","angles","angling","angrily","angriness","anguished","angular","animal","animate","animating","animation","animator","anime","animosity","ankle","annex","annotate","announcer","annoying","annually","annuity","anointer","another","answering","antacid","antarctic","anteater","antelope","antennae","anthem","anthill","anthology","antibody","antics","antidote","antihero","antiquely","antiques","antiquity","antirust","antitoxic","antitrust","antiviral","antivirus","antler","antonym","antsy","anvil","anybody","anyhow","anymore","anyone","anyplace","anything","anytime","anyway","anywhere","aorta","apache","apostle","appealing","appear","appease","appeasing","appendage","appendix","appetite","appetizer","applaud","applause","apple","appliance","applicant","applied","apply","appointee","appraisal","appraiser","apprehend","approach","approval","approve","apricot","april","apron","aptitude","aptly","aqua","aqueduct","arbitrary","arbitrate","ardently","area","arena","arguable","arguably","argue","arise","armadillo","armband","armchair","armed","armful","armhole","arming","armless","armoire","armored","armory","armrest","army","aroma","arose","around","arousal","arrange","array","arrest","arrival","arrive","arrogance","arrogant","arson","art","ascend","ascension","ascent","ascertain","ashamed","ashen","ashes","ashy","aside","askew","asleep","asparagus","aspect","aspirate","aspire","aspirin","astonish","astound","astride","astrology","astronaut","astronomy","astute","atlantic","atlas","atom","atonable","atop","atrium","atrocious","atrophy","attach","attain","attempt","attendant","attendee","attention","attentive","attest","attic","attire","attitude","attractor","attribute","atypical","auction","audacious","audacity","audible","audibly","audience","audio","audition","augmented","august","authentic","author","autism","autistic","autograph","automaker","automated","automatic","autopilot","available","avalanche","avatar","avenge","avenging","avenue","average","aversion","avert","aviation","aviator","avid","avoid","await","awaken","award","aware","awhile","awkward","awning","awoke","awry","axis","babble","babbling","babied","baboon","backache","backboard","backboned","backdrop","backed","backer","backfield","backfire","backhand","backing","backlands","backlash","backless","backlight","backlit","backlog","backpack","backpedal","backrest","backroom","backshift","backside","backslid","backspace","backspin","backstab","backstage","backtalk","backtrack","backup","backward","backwash","backwater","backyard","bacon","bacteria","bacterium","badass","badge","badland","badly","badness","baffle","baffling","bagel","bagful","baggage","bagged","baggie","bagginess","bagging","baggy","bagpipe","baguette","baked","bakery","bakeshop","baking","balance","balancing","balcony","balmy","balsamic","bamboo","banana","banish","banister","banjo","bankable","bankbook","banked","banker","banking","banknote","bankroll","banner","bannister","banshee","banter","barbecue","barbed","barbell","barber","barcode","barge","bargraph","barista","baritone","barley","barmaid","barman","barn","barometer","barrack","barracuda","barrel","barrette","barricade","barrier","barstool","bartender","barterer","bash","basically","basics","basil","basin","basis","basket","batboy","batch","bath","baton","bats","battalion","battered","battering","battery","batting","battle","bauble","bazooka","blabber","bladder","blade","blah","blame","blaming","blanching","blandness","blank","blaspheme","blasphemy","blast","blatancy","blatantly","blazer","blazing","bleach","bleak","bleep","blemish","blend","bless","blighted","blimp","bling","blinked","blinker","blinking","blinks","blip","blissful","blitz","blizzard","bloated","bloating","blob","blog","bloomers","blooming","blooper","blot","blouse","blubber","bluff","bluish","blunderer","blunt","blurb","blurred","blurry","blurt","blush","blustery","boaster","boastful","boasting","boat","bobbed","bobbing","bobble","bobcat","bobsled","bobtail","bodacious","body","bogged","boggle","bogus","boil","bok","bolster","bolt","bonanza","bonded","bonding","bondless","boned","bonehead","boneless","bonelike","boney","bonfire","bonnet","bonsai","bonus","bony","boogeyman","boogieman","book","boondocks","booted","booth","bootie","booting","bootlace","bootleg","boots","boozy","borax","boring","borough","borrower","borrowing","boss","botanical","botanist","botany","botch","both","bottle","bottling","bottom","bounce","bouncing","bouncy","bounding","boundless","bountiful","bovine","boxcar","boxer","boxing","boxlike","boxy","breach","breath","breeches","breeching","breeder","breeding","breeze","breezy","brethren","brewery","brewing","briar","bribe","brick","bride","bridged","brigade","bright","brilliant","brim","bring","brink","brisket","briskly","briskness","bristle","brittle","broadband","broadcast","broaden","broadly","broadness","broadside","broadways","broiler","broiling","broken","broker","bronchial","bronco","bronze","bronzing","brook","broom","brought","browbeat","brownnose","browse","browsing","bruising","brunch","brunette","brunt","brush","brussels","brute","brutishly","bubble","bubbling","bubbly","buccaneer","bucked","bucket","buckle","buckshot","buckskin","bucktooth","buckwheat","buddhism","buddhist","budding","buddy","budget","buffalo","buffed","buffer","buffing","buffoon","buggy","bulb","bulge","bulginess","bulgur","bulk","bulldog","bulldozer","bullfight","bullfrog","bullhorn","bullion","bullish","bullpen","bullring","bullseye","bullwhip","bully","bunch","bundle","bungee","bunion","bunkbed","bunkhouse","bunkmate","bunny","bunt","busboy","bush","busily","busload","bust","busybody","buzz","cabana","cabbage","cabbie","cabdriver","cable","caboose","cache","cackle","cacti","cactus","caddie","caddy","cadet","cadillac","cadmium","cage","cahoots","cake","calamari","calamity","calcium","calculate","calculus","caliber","calibrate","calm","caloric","calorie","calzone","camcorder","cameo","camera","camisole","camper","campfire","camping","campsite","campus","canal","canary","cancel","candied","candle","candy","cane","canine","canister","cannabis","canned","canning","cannon","cannot","canola","canon","canopener","canopy","canteen","canyon","capable","capably","capacity","cape","capillary","capital","capitol","capped","capricorn","capsize","capsule","caption","captivate","captive","captivity","capture","caramel","carat","caravan","carbon","cardboard","carded","cardiac","cardigan","cardinal","cardstock","carefully","caregiver","careless","caress","caretaker","cargo","caring","carless","carload","carmaker","carnage","carnation","carnival","carnivore","carol","carpenter","carpentry","carpool","carport","carried","carrot","carrousel","carry","cartel","cartload","carton","cartoon","cartridge","cartwheel","carve","carving","carwash","cascade","case","cash","casing","casino","casket","cassette","casually","casualty","catacomb","catalog","catalyst","catalyze","catapult","cataract","catatonic","catcall","catchable","catcher","catching","catchy","caterer","catering","catfight","catfish","cathedral","cathouse","catlike","catnap","catnip","catsup","cattail","cattishly","cattle","catty","catwalk","caucasian","caucus","causal","causation","cause","causing","cauterize","caution","cautious","cavalier","cavalry","caviar","cavity","cedar","celery","celestial","celibacy","celibate","celtic","cement","census","ceramics","ceremony","certainly","certainty","certified","certify","cesarean","cesspool","chafe","chaffing","chain","chair","chalice","challenge","chamber","chamomile","champion","chance","change","channel","chant","chaos","chaperone","chaplain","chapped","chaps","chapter","character","charbroil","charcoal","charger","charging","chariot","charity","charm","charred","charter","charting","chase","chasing","chaste","chastise","chastity","chatroom","chatter","chatting","chatty","cheating","cheddar","cheek","cheer","cheese","cheesy","chef","chemicals","chemist","chemo","cherisher","cherub","chess","chest","chevron","chevy","chewable","chewer","chewing","chewy","chief","chihuahua","childcare","childhood","childish","childless","childlike","chili","chill","chimp","chip","chirping","chirpy","chitchat","chivalry","chive","chloride","chlorine","choice","chokehold","choking","chomp","chooser","choosing","choosy","chop","chosen","chowder","chowtime","chrome","chubby","chuck","chug","chummy","chump","chunk","churn","chute","cider","cilantro","cinch","cinema","cinnamon","circle","circling","circular","circulate","circus","citable","citadel","citation","citizen","citric","citrus","city","civic","civil","clad","claim","clambake","clammy","clamor","clamp","clamshell","clang","clanking","clapped","clapper","clapping","clarify","clarinet","clarity","clash","clasp","class","clatter","clause","clavicle","claw","clay","clean","clear","cleat","cleaver","cleft","clench","clergyman","clerical","clerk","clever","clicker","client","climate","climatic","cling","clinic","clinking","clip","clique","cloak","clobber","clock","clone","cloning","closable","closure","clothes","clothing","cloud","clover","clubbed","clubbing","clubhouse","clump","clumsily","clumsy","clunky","clustered","clutch","clutter","coach","coagulant","coastal","coaster","coasting","coastland","coastline","coat","coauthor","cobalt","cobbler","cobweb","cocoa","coconut","cod","coeditor","coerce","coexist","coffee","cofounder","cognition","cognitive","cogwheel","coherence","coherent","cohesive","coil","coke","cola","cold","coleslaw","coliseum","collage","collapse","collar","collected","collector","collide","collie","collision","colonial","colonist","colonize","colony","colossal","colt","coma","come","comfort","comfy","comic","coming","comma","commence","commend","comment","commerce","commode","commodity","commodore","common","commotion","commute","commuting","compacted","compacter","compactly","compactor","companion","company","compare","compel","compile","comply","component","composed","composer","composite","compost","composure","compound","compress","comprised","computer","computing","comrade","concave","conceal","conceded","concept","concerned","concert","conch","concierge","concise","conclude","concrete","concur","condense","condiment","condition","condone","conducive","conductor","conduit","cone","confess","confetti","confidant","confident","confider","confiding","configure","confined","confining","confirm","conflict","conform","confound","confront","confused","confusing","confusion","congenial","congested","congrats","congress","conical","conjoined","conjure","conjuror","connected","connector","consensus","consent","console","consoling","consonant","constable","constant","constrain","constrict","construct","consult","consumer","consuming","contact","container","contempt","contend","contented","contently","contents","contest","context","contort","contour","contrite","control","contusion","convene","convent","copartner","cope","copied","copier","copilot","coping","copious","copper","copy","coral","cork","cornball","cornbread","corncob","cornea","corned","corner","cornfield","cornflake","cornhusk","cornmeal","cornstalk","corny","coronary","coroner","corporal","corporate","corral","correct","corridor","corrode","corroding","corrosive","corsage","corset","cortex","cosigner","cosmetics","cosmic","cosmos","cosponsor","cost","cottage","cotton","couch","cough","could","countable","countdown","counting","countless","country","county","courier","covenant","cover","coveted","coveting","coyness","cozily","coziness","cozy","crabbing","crabgrass","crablike","crabmeat","cradle","cradling","crafter","craftily","craftsman","craftwork","crafty","cramp","cranberry","crane","cranial","cranium","crank","crate","crave","craving","crawfish","crawlers","crawling","crayfish","crayon","crazed","crazily","craziness","crazy","creamed","creamer","creamlike","crease","creasing","creatable","create","creation","creative","creature","credible","credibly","credit","creed","creme","creole","crepe","crept","crescent","crested","cresting","crestless","crevice","crewless","crewman","crewmate","crib","cricket","cried","crier","crimp","crimson","cringe","cringing","crinkle","crinkly","crisped","crisping","crisply","crispness","crispy","criteria","critter","croak","crock","crook","croon","crop","cross","crouch","crouton","crowbar","crowd","crown","crucial","crudely","crudeness","cruelly","cruelness","cruelty","crumb","crummiest","crummy","crumpet","crumpled","cruncher","crunching","crunchy","crusader","crushable","crushed","crusher","crushing","crust","crux","crying","cryptic","crystal","cubbyhole","cube","cubical","cubicle","cucumber","cuddle","cuddly","cufflink","culinary","culminate","culpable","culprit","cultivate","cultural","culture","cupbearer","cupcake","cupid","cupped","cupping","curable","curator","curdle","cure","curfew","curing","curled","curler","curliness","curling","curly","curry","curse","cursive","cursor","curtain","curtly","curtsy","curvature","curve","curvy","cushy","cusp","cussed","custard","custodian","custody","customary","customer","customize","customs","cut","cycle","cyclic","cycling","cyclist","cylinder","cymbal","cytoplasm","cytoplast","dab","dad","daffodil","dagger","daily","daintily","dainty","dairy","daisy","dallying","dance","dancing","dandelion","dander","dandruff","dandy","danger","dangle","dangling","daredevil","dares","daringly","darkened","darkening","darkish","darkness","darkroom","darling","darn","dart","darwinism","dash","dastardly","data","datebook","dating","daughter","daunting","dawdler","dawn","daybed","daybreak","daycare","daydream","daylight","daylong","dayroom","daytime","dazzler","dazzling","deacon","deafening","deafness","dealer","dealing","dealmaker","dealt","dean","debatable","debate","debating","debit","debrief","debtless","debtor","debug","debunk","decade","decaf","decal","decathlon","decay","deceased","deceit","deceiver","deceiving","december","decency","decent","deception","deceptive","decibel","decidable","decimal","decimeter","decipher","deck","declared","decline","decode","decompose","decorated","decorator","decoy","decrease","decree","dedicate","dedicator","deduce","deduct","deed","deem","deepen","deeply","deepness","deface","defacing","defame","default","defeat","defection","defective","defendant","defender","defense","defensive","deferral","deferred","defiance","defiant","defile","defiling","define","definite","deflate","deflation","deflator","deflected","deflector","defog","deforest","defraud","defrost","deftly","defuse","defy","degraded","degrading","degrease","degree","dehydrate","deity","dejected","delay","delegate","delegator","delete","deletion","delicacy","delicate","delicious","delighted","delirious","delirium","deliverer","delivery","delouse","delta","deluge","delusion","deluxe","demanding","demeaning","demeanor","demise","democracy","democrat","demote","demotion","demystify","denatured","deniable","denial","denim","denote","dense","density","dental","dentist","denture","deny","deodorant","deodorize","departed","departure","depict","deplete","depletion","deplored","deploy","deport","depose","depraved","depravity","deprecate","depress","deprive","depth","deputize","deputy","derail","deranged","derby","derived","desecrate","deserve","deserving","designate","designed","designer","designing","deskbound","desktop","deskwork","desolate","despair","despise","despite","destiny","destitute","destruct","detached","detail","detection","detective","detector","detention","detergent","detest","detonate","detonator","detoxify","detract","deuce","devalue","deviancy","deviant","deviate","deviation","deviator","device","devious","devotedly","devotee","devotion","devourer","devouring","devoutly","dexterity","dexterous","diabetes","diabetic","diabolic","diagnoses","diagnosis","diagram","dial","diameter","diaper","diaphragm","diary","dice","dicing","dictate","dictation","dictator","difficult","diffused","diffuser","diffusion","diffusive","dig","dilation","diligence","diligent","dill","dilute","dime","diminish","dimly","dimmed","dimmer","dimness","dimple","diner","dingbat","dinghy","dinginess","dingo","dingy","dining","dinner","diocese","dioxide","diploma","dipped","dipper","dipping","directed","direction","directive","directly","directory","direness","dirtiness","disabled","disagree","disallow","disarm","disarray","disaster","disband","disbelief","disburse","discard","discern","discharge","disclose","discolor","discount","discourse","discover","discuss","disdain","disengage","disfigure","disgrace","dish","disinfect","disjoin","disk","dislike","disliking","dislocate","dislodge","disloyal","dismantle","dismay","dismiss","dismount","disobey","disorder","disown","disparate","disparity","dispatch","dispense","dispersal","dispersed","disperser","displace","display","displease","disposal","dispose","disprove","dispute","disregard","disrupt","dissuade","distance","distant","distaste","distill","distinct","distort","distract","distress","district","distrust","ditch","ditto","ditzy","dividable","divided","dividend","dividers","dividing","divinely","diving","divinity","divisible","divisibly","division","divisive","divorcee","dizziness","dizzy","doable","docile","dock","doctrine","document","dodge","dodgy","doily","doing","dole","dollar","dollhouse","dollop","dolly","dolphin","domain","domelike","domestic","dominion","dominoes","donated","donation","donator","donor","donut","doodle","doorbell","doorframe","doorknob","doorman","doormat","doornail","doorpost","doorstep","doorstop","doorway","doozy","dork","dormitory","dorsal","dosage","dose","dotted","doubling","douche","dove","down","dowry","doze","drab","dragging","dragonfly","dragonish","dragster","drainable","drainage","drained","drainer","drainpipe","dramatic","dramatize","drank","drapery","drastic","draw","dreaded","dreadful","dreadlock","dreamboat","dreamily","dreamland","dreamless","dreamlike","dreamt","dreamy","drearily","dreary","drench","dress","drew","dribble","dried","drier","drift","driller","drilling","drinkable","drinking","dripping","drippy","drivable","driven","driver","driveway","driving","drizzle","drizzly","drone","drool","droop","drop-down","dropbox","dropkick","droplet","dropout","dropper","drove","drown","drowsily","drudge","drum","dry","dubbed","dubiously","duchess","duckbill","ducking","duckling","ducktail","ducky","duct","dude","duffel","dugout","duh","duke","duller","dullness","duly","dumping","dumpling","dumpster","duo","dupe","duplex","duplicate","duplicity","durable","durably","duration","duress","during","dusk","dust","dutiful","duty","duvet","dwarf","dweeb","dwelled","dweller","dwelling","dwindle","dwindling","dynamic","dynamite","dynasty","dyslexia","dyslexic","each","eagle","earache","eardrum","earflap","earful","earlobe","early","earmark","earmuff","earphone","earpiece","earplugs","earring","earshot","earthen","earthlike","earthling","earthly","earthworm","earthy","earwig","easeful","easel","easiest","easily","easiness","easing","eastbound","eastcoast","easter","eastward","eatable","eaten","eatery","eating","eats","ebay","ebony","ebook","ecard","eccentric","echo","eclair","eclipse","ecologist","ecology","economic","economist","economy","ecosphere","ecosystem","edge","edginess","edging","edgy","edition","editor","educated","education","educator","eel","effective","effects","efficient","effort","eggbeater","egging","eggnog","eggplant","eggshell","egomaniac","egotism","egotistic","either","eject","elaborate","elastic","elated","elbow","eldercare","elderly","eldest","electable","election","elective","elephant","elevate","elevating","elevation","elevator","eleven","elf","eligible","eligibly","eliminate","elite","elitism","elixir","elk","ellipse","elliptic","elm","elongated","elope","eloquence","eloquent","elsewhere","elude","elusive","elves","email","embargo","embark","embassy","embattled","embellish","ember","embezzle","emblaze","emblem","embody","embolism","emboss","embroider","emcee","emerald","emergency","emission","emit","emote","emoticon","emotion","empathic","empathy","emperor","emphases","emphasis","emphasize","emphatic","empirical","employed","employee","employer","emporium","empower","emptier","emptiness","empty","emu","enable","enactment","enamel","enchanted","enchilada","encircle","enclose","enclosure","encode","encore","encounter","encourage","encroach","encrust","encrypt","endanger","endeared","endearing","ended","ending","endless","endnote","endocrine","endorphin","endorse","endowment","endpoint","endurable","endurance","enduring","energetic","energize","energy","enforced","enforcer","engaged","engaging","engine","engorge","engraved","engraver","engraving","engross","engulf","enhance","enigmatic","enjoyable","enjoyably","enjoyer","enjoying","enjoyment","enlarged","enlarging","enlighten","enlisted","enquirer","enrage","enrich","enroll","enslave","ensnare","ensure","entail","entangled","entering","entertain","enticing","entire","entitle","entity","entomb","entourage","entrap","entree","entrench","entrust","entryway","entwine","enunciate","envelope","enviable","enviably","envious","envision","envoy","envy","enzyme","epic","epidemic","epidermal","epidermis","epidural","epilepsy","epileptic","epilogue","epiphany","episode","equal","equate","equation","equator","equinox","equipment","equity","equivocal","eradicate","erasable","erased","eraser","erasure","ergonomic","errand","errant","erratic","error","erupt","escalate","escalator","escapable","escapade","escapist","escargot","eskimo","esophagus","espionage","espresso","esquire","essay","essence","essential","establish","estate","esteemed","estimate","estimator","estranged","estrogen","etching","eternal","eternity","ethanol","ether","ethically","ethics","euphemism","evacuate","evacuee","evade","evaluate","evaluator","evaporate","evasion","evasive","even","everglade","evergreen","everybody","everyday","everyone","evict","evidence","evident","evil","evoke","evolution","evolve","exact","exalted","example","excavate","excavator","exceeding","exception","excess","exchange","excitable","exciting","exclaim","exclude","excluding","exclusion","exclusive","excretion","excretory","excursion","excusable","excusably","excuse","exemplary","exemplify","exemption","exerciser","exert","exes","exfoliate","exhale","exhaust","exhume","exile","existing","exit","exodus","exonerate","exorcism","exorcist","expand","expanse","expansion","expansive","expectant","expedited","expediter","expel","expend","expenses","expensive","expert","expire","expiring","explain","expletive","explicit","explode","exploit","explore","exploring","exponent","exporter","exposable","expose","exposure","express","expulsion","exquisite","extended","extending","extent","extenuate","exterior","external","extinct","extortion","extradite","extras","extrovert","extrude","extruding","exuberant","fable","fabric","fabulous","facebook","facecloth","facedown","faceless","facelift","faceplate","faceted","facial","facility","facing","facsimile","faction","factoid","factor","factsheet","factual","faculty","fade","fading","failing","falcon","fall","false","falsify","fame","familiar","family","famine","famished","fanatic","fancied","fanciness","fancy","fanfare","fang","fanning","fantasize","fantastic","fantasy","fascism","fastball","faster","fasting","fastness","faucet","favorable","favorably","favored","favoring","favorite","fax","feast","federal","fedora","feeble","feed","feel","feisty","feline","felt-tip","feminine","feminism","feminist","feminize","femur","fence","fencing","fender","ferment","fernlike","ferocious","ferocity","ferret","ferris","ferry","fervor","fester","festival","festive","festivity","fetal","fetch","fever","fiber","fiction","fiddle","fiddling","fidelity","fidgeting","fidgety","fifteen","fifth","fiftieth","fifty","figment","figure","figurine","filing","filled","filler","filling","film","filter","filth","filtrate","finale","finalist","finalize","finally","finance","financial","finch","fineness","finer","finicky","finished","finisher","finishing","finite","finless","finlike","fiscally","fit","five","flaccid","flagman","flagpole","flagship","flagstick","flagstone","flail","flakily","flaky","flame","flammable","flanked","flanking","flannels","flap","flaring","flashback","flashbulb","flashcard","flashily","flashing","flashy","flask","flatbed","flatfoot","flatly","flatness","flatten","flattered","flatterer","flattery","flattop","flatware","flatworm","flavored","flavorful","flavoring","flaxseed","fled","fleshed","fleshy","flick","flier","flight","flinch","fling","flint","flip","flirt","float","flock","flogging","flop","floral","florist","floss","flounder","flyable","flyaway","flyer","flying","flyover","flypaper","foam","foe","fog","foil","folic","folk","follicle","follow","fondling","fondly","fondness","fondue","font","food","fool","footage","football","footbath","footboard","footer","footgear","foothill","foothold","footing","footless","footman","footnote","footpad","footpath","footprint","footrest","footsie","footsore","footwear","footwork","fossil","foster","founder","founding","fountain","fox","foyer","fraction","fracture","fragile","fragility","fragment","fragrance","fragrant","frail","frame","framing","frantic","fraternal","frayed","fraying","frays","freckled","freckles","freebase","freebee","freebie","freedom","freefall","freehand","freeing","freeload","freely","freemason","freeness","freestyle","freeware","freeway","freewill","freezable","freezing","freight","french","frenzied","frenzy","frequency","frequent","fresh","fretful","fretted","friction","friday","fridge","fried","friend","frighten","frightful","frigidity","frigidly","frill","fringe","frisbee","frisk","fritter","frivolous","frolic","from","front","frostbite","frosted","frostily","frosting","frostlike","frosty","froth","frown","frozen","fructose","frugality","frugally","fruit","frustrate","frying","gab","gaffe","gag","gainfully","gaining","gains","gala","gallantly","galleria","gallery","galley","gallon","gallows","gallstone","galore","galvanize","gambling","game","gaming","gamma","gander","gangly","gangrene","gangway","gap","garage","garbage","garden","gargle","garland","garlic","garment","garnet","garnish","garter","gas","gatherer","gathering","gating","gauging","gauntlet","gauze","gave","gawk","gazing","gear","gecko","geek","geiger","gem","gender","generic","generous","genetics","genre","gentile","gentleman","gently","gents","geography","geologic","geologist","geology","geometric","geometry","geranium","gerbil","geriatric","germicide","germinate","germless","germproof","gestate","gestation","gesture","getaway","getting","getup","giant","gibberish","giblet","giddily","giddiness","giddy","gift","gigabyte","gigahertz","gigantic","giggle","giggling","giggly","gigolo","gilled","gills","gimmick","girdle","giveaway","given","giver","giving","gizmo","gizzard","glacial","glacier","glade","gladiator","gladly","glamorous","glamour","glance","glancing","glandular","glare","glaring","glass","glaucoma","glazing","gleaming","gleeful","glider","gliding","glimmer","glimpse","glisten","glitch","glitter","glitzy","gloater","gloating","gloomily","gloomy","glorified","glorifier","glorify","glorious","glory","gloss","glove","glowing","glowworm","glucose","glue","gluten","glutinous","glutton","gnarly","gnat","goal","goatskin","goes","goggles","going","goldfish","goldmine","goldsmith","golf","goliath","gonad","gondola","gone","gong","good","gooey","goofball","goofiness","goofy","google","goon","gopher","gore","gorged","gorgeous","gory","gosling","gossip","gothic","gotten","gout","gown","grab","graceful","graceless","gracious","gradation","graded","grader","gradient","grading","gradually","graduate","graffiti","grafted","grafting","grain","granddad","grandkid","grandly","grandma","grandpa","grandson","granite","granny","granola","grant","granular","grape","graph","grapple","grappling","grasp","grass","gratified","gratify","grating","gratitude","gratuity","gravel","graveness","graves","graveyard","gravitate","gravity","gravy","gray","grazing","greasily","greedily","greedless","greedy","green","greeter","greeting","grew","greyhound","grid","grief","grievance","grieving","grievous","grill","grimace","grimacing","grime","griminess","grimy","grinch","grinning","grip","gristle","grit","groggily","groggy","groin","groom","groove","grooving","groovy","grope","ground","grouped","grout","grove","grower","growing","growl","grub","grudge","grudging","grueling","gruffly","grumble","grumbling","grumbly","grumpily","grunge","grunt","guacamole","guidable","guidance","guide","guiding","guileless","guise","gulf","gullible","gully","gulp","gumball","gumdrop","gumminess","gumming","gummy","gurgle","gurgling","guru","gush","gusto","gusty","gutless","guts","gutter","guy","guzzler","gyration","habitable","habitant","habitat","habitual","hacked","hacker","hacking","hacksaw","had","haggler","haiku","half","halogen","halt","halved","halves","hamburger","hamlet","hammock","hamper","hamster","hamstring","handbag","handball","handbook","handbrake","handcart","handclap","handclasp","handcraft","handcuff","handed","handful","handgrip","handgun","handheld","handiness","handiwork","handlebar","handled","handler","handling","handmade","handoff","handpick","handprint","handrail","handsaw","handset","handsfree","handshake","handstand","handwash","handwork","handwoven","handwrite","handyman","hangnail","hangout","hangover","hangup","hankering","hankie","hanky","haphazard","happening","happier","happiest","happily","happiness","happy","harbor","hardcopy","hardcore","hardcover","harddisk","hardened","hardener","hardening","hardhat","hardhead","hardiness","hardly","hardness","hardship","hardware","hardwired","hardwood","hardy","harmful","harmless","harmonica","harmonics","harmonize","harmony","harness","harpist","harsh","harvest","hash","hassle","haste","hastily","hastiness","hasty","hatbox","hatchback","hatchery","hatchet","hatching","hatchling","hate","hatless","hatred","haunt","haven","hazard","hazelnut","hazily","haziness","hazing","hazy","headache","headband","headboard","headcount","headdress","headed","header","headfirst","headgear","heading","headlamp","headless","headlock","headphone","headpiece","headrest","headroom","headscarf","headset","headsman","headstand","headstone","headway","headwear","heap","heat","heave","heavily","heaviness","heaving","hedge","hedging","heftiness","hefty","helium","helmet","helper","helpful","helping","helpless","helpline","hemlock","hemstitch","hence","henchman","henna","herald","herbal","herbicide","herbs","heritage","hermit","heroics","heroism","herring","herself","hertz","hesitancy","hesitant","hesitate","hexagon","hexagram","hubcap","huddle","huddling","huff","hug","hula","hulk","hull","human","humble","humbling","humbly","humid","humiliate","humility","humming","hummus","humongous","humorist","humorless","humorous","humpback","humped","humvee","hunchback","hundredth","hunger","hungrily","hungry","hunk","hunter","hunting","huntress","huntsman","hurdle","hurled","hurler","hurling","hurray","hurricane","hurried","hurry","hurt","husband","hush","husked","huskiness","hut","hybrid","hydrant","hydrated","hydration","hydrogen","hydroxide","hyperlink","hypertext","hyphen","hypnoses","hypnosis","hypnotic","hypnotism","hypnotist","hypnotize","hypocrisy","hypocrite","ibuprofen","ice","iciness","icing","icky","icon","icy","idealism","idealist","idealize","ideally","idealness","identical","identify","identity","ideology","idiocy","idiom","idly","igloo","ignition","ignore","iguana","illicitly","illusion","illusive","image","imaginary","imagines","imaging","imbecile","imitate","imitation","immature","immerse","immersion","imminent","immobile","immodest","immorally","immortal","immovable","immovably","immunity","immunize","impaired","impale","impart","impatient","impeach","impeding","impending","imperfect","imperial","impish","implant","implement","implicate","implicit","implode","implosion","implosive","imply","impolite","important","importer","impose","imposing","impotence","impotency","impotent","impound","imprecise","imprint","imprison","impromptu","improper","improve","improving","improvise","imprudent","impulse","impulsive","impure","impurity","iodine","iodize","ion","ipad","iphone","ipod","irate","irk","iron","irregular","irrigate","irritable","irritably","irritant","irritate","islamic","islamist","isolated","isolating","isolation","isotope","issue","issuing","italicize","italics","item","itinerary","itunes","ivory","ivy","jab","jackal","jacket","jackknife","jackpot","jailbird","jailbreak","jailer","jailhouse","jalapeno","jam","janitor","january","jargon","jarring","jasmine","jaundice","jaunt","java","jawed","jawless","jawline","jaws","jaybird","jaywalker","jazz","jeep","jeeringly","jellied","jelly","jersey","jester","jet","jiffy","jigsaw","jimmy","jingle","jingling","jinx","jitters","jittery","job","jockey","jockstrap","jogger","jogging","john","joining","jokester","jokingly","jolliness","jolly","jolt","jot","jovial","joyfully","joylessly","joyous","joyride","joystick","jubilance","jubilant","judge","judgingly","judicial","judiciary","judo","juggle","juggling","jugular","juice","juiciness","juicy","jujitsu","jukebox","july","jumble","jumbo","jump","junction","juncture","june","junior","juniper","junkie","junkman","junkyard","jurist","juror","jury","justice","justifier","justify","justly","justness","juvenile","kabob","kangaroo","karaoke","karate","karma","kebab","keenly","keenness","keep","keg","kelp","kennel","kept","kerchief","kerosene","kettle","kick","kiln","kilobyte","kilogram","kilometer","kilowatt","kilt","kimono","kindle","kindling","kindly","kindness","kindred","kinetic","kinfolk","king","kinship","kinsman","kinswoman","kissable","kisser","kissing","kitchen","kite","kitten","kitty","kiwi","kleenex","knapsack","knee","knelt","knickers","knoll","koala","kooky","kosher","krypton","kudos","kung","labored","laborer","laboring","laborious","labrador","ladder","ladies","ladle","ladybug","ladylike","lagged","lagging","lagoon","lair","lake","lance","landed","landfall","landfill","landing","landlady","landless","landline","landlord","landmark","landmass","landmine","landowner","landscape","landside","landslide","language","lankiness","lanky","lantern","lapdog","lapel","lapped","lapping","laptop","lard","large","lark","lash","lasso","last","latch","late","lather","latitude","latrine","latter","latticed","launch","launder","laundry","laurel","lavender","lavish","laxative","lazily","laziness","lazy","lecturer","left","legacy","legal","legend","legged","leggings","legible","legibly","legislate","lego","legroom","legume","legwarmer","legwork","lemon","lend","length","lens","lent","leotard","lesser","letdown","lethargic","lethargy","letter","lettuce","level","leverage","levers","levitate","levitator","liability","liable","liberty","librarian","library","licking","licorice","lid","life","lifter","lifting","liftoff","ligament","likely","likeness","likewise","liking","lilac","lilly","lily","limb","limeade","limelight","limes","limit","limping","limpness","line","lingo","linguini","linguist","lining","linked","linoleum","linseed","lint","lion","lip","liquefy","liqueur","liquid","lisp","list","litigate","litigator","litmus","litter","little","livable","lived","lively","liver","livestock","lividly","living","lizard","lubricant","lubricate","lucid","luckily","luckiness","luckless","lucrative","ludicrous","lugged","lukewarm","lullaby","lumber","luminance","luminous","lumpiness","lumping","lumpish","lunacy","lunar","lunchbox","luncheon","lunchroom","lunchtime","lung","lurch","lure","luridness","lurk","lushly","lushness","luster","lustfully","lustily","lustiness","lustrous","lusty","luxurious","luxury","lying","lyrically","lyricism","lyricist","lyrics","macarena","macaroni","macaw","mace","machine","machinist","magazine","magenta","maggot","magical","magician","magma","magnesium","magnetic","magnetism","magnetize","magnifier","magnify","magnitude","magnolia","mahogany","maimed","majestic","majesty","majorette","majority","makeover","maker","makeshift","making","malformed","malt","mama","mammal","mammary","mammogram","manager","managing","manatee","mandarin","mandate","mandatory","mandolin","manger","mangle","mango","mangy","manhandle","manhole","manhood","manhunt","manicotti","manicure","manifesto","manila","mankind","manlike","manliness","manly","manmade","manned","mannish","manor","manpower","mantis","mantra","manual","many","map","marathon","marauding","marbled","marbles","marbling","march","mardi","margarine","margarita","margin","marigold","marina","marine","marital","maritime","marlin","marmalade","maroon","married","marrow","marry","marshland","marshy","marsupial","marvelous","marxism","mascot","masculine","mashed","mashing","massager","masses","massive","mastiff","matador","matchbook","matchbox","matcher","matching","matchless","material","maternal","maternity","math","mating","matriarch","matrimony","matrix","matron","matted","matter","maturely","maturing","maturity","mauve","maverick","maximize","maximum","maybe","mayday","mayflower","moaner","moaning","mobile","mobility","mobilize","mobster","mocha","mocker","mockup","modified","modify","modular","modulator","module","moisten","moistness","moisture","molar","molasses","mold","molecular","molecule","molehill","mollusk","mom","monastery","monday","monetary","monetize","moneybags","moneyless","moneywise","mongoose","mongrel","monitor","monkhood","monogamy","monogram","monologue","monopoly","monorail","monotone","monotype","monoxide","monsieur","monsoon","monstrous","monthly","monument","moocher","moodiness","moody","mooing","moonbeam","mooned","moonlight","moonlike","moonlit","moonrise","moonscape","moonshine","moonstone","moonwalk","mop","morale","morality","morally","morbidity","morbidly","morphine","morphing","morse","mortality","mortally","mortician","mortified","mortify","mortuary","mosaic","mossy","most","mothball","mothproof","motion","motivate","motivator","motive","motocross","motor","motto","mountable","mountain","mounted","mounting","mourner","mournful","mouse","mousiness","moustache","mousy","mouth","movable","move","movie","moving","mower","mowing","much","muck","mud","mug","mulberry","mulch","mule","mulled","mullets","multiple","multiply","multitask","multitude","mumble","mumbling","mumbo","mummified","mummify","mummy","mumps","munchkin","mundane","municipal","muppet","mural","murkiness","murky","murmuring","muscular","museum","mushily","mushiness","mushroom","mushy","music","musket","muskiness","musky","mustang","mustard","muster","mustiness","musty","mutable","mutate","mutation","mute","mutilated","mutilator","mutiny","mutt","mutual","muzzle","myself","myspace","mystified","mystify","myth","nacho","nag","nail","name","naming","nanny","nanometer","nape","napkin","napped","napping","nappy","narrow","nastily","nastiness","national","native","nativity","natural","nature","naturist","nautical","navigate","navigator","navy","nearby","nearest","nearly","nearness","neatly","neatness","nebula","nebulizer","nectar","negate","negation","negative","neglector","negligee","negligent","negotiate","nemeses","nemesis","neon","nephew","nerd","nervous","nervy","nest","net","neurology","neuron","neurosis","neurotic","neuter","neutron","never","next","nibble","nickname","nicotine","niece","nifty","nimble","nimbly","nineteen","ninetieth","ninja","nintendo","ninth","nuclear","nuclei","nucleus","nugget","nullify","number","numbing","numbly","numbness","numeral","numerate","numerator","numeric","numerous","nuptials","nursery","nursing","nurture","nutcase","nutlike","nutmeg","nutrient","nutshell","nuttiness","nutty","nuzzle","nylon","oaf","oak","oasis","oat","obedience","obedient","obituary","object","obligate","obliged","oblivion","oblivious","oblong","obnoxious","oboe","obscure","obscurity","observant","observer","observing","obsessed","obsession","obsessive","obsolete","obstacle","obstinate","obstruct","obtain","obtrusive","obtuse","obvious","occultist","occupancy","occupant","occupier","occupy","ocean","ocelot","octagon","octane","october","octopus","ogle","oil","oink","ointment","okay","old","olive","olympics","omega","omen","ominous","omission","omit","omnivore","onboard","oncoming","ongoing","onion","online","onlooker","only","onscreen","onset","onshore","onslaught","onstage","onto","onward","onyx","oops","ooze","oozy","opacity","opal","open","operable","operate","operating","operation","operative","operator","opium","opossum","opponent","oppose","opposing","opposite","oppressed","oppressor","opt","opulently","osmosis","other","otter","ouch","ought","ounce","outage","outback","outbid","outboard","outbound","outbreak","outburst","outcast","outclass","outcome","outdated","outdoors","outer","outfield","outfit","outflank","outgoing","outgrow","outhouse","outing","outlast","outlet","outline","outlook","outlying","outmatch","outmost","outnumber","outplayed","outpost","outpour","output","outrage","outrank","outreach","outright","outscore","outsell","outshine","outshoot","outsider","outskirts","outsmart","outsource","outspoken","outtakes","outthink","outward","outweigh","outwit","oval","ovary","oven","overact","overall","overarch","overbid","overbill","overbite","overblown","overboard","overbook","overbuilt","overcast","overcoat","overcome","overcook","overcrowd","overdraft","overdrawn","overdress","overdrive","overdue","overeager","overeater","overexert","overfed","overfeed","overfill","overflow","overfull","overgrown","overhand","overhang","overhaul","overhead","overhear","overheat","overhung","overjoyed","overkill","overlabor","overlaid","overlap","overlay","overload","overlook","overlord","overlying","overnight","overpass","overpay","overplant","overplay","overpower","overprice","overrate","overreach","overreact","override","overripe","overrule","overrun","overshoot","overshot","oversight","oversized","oversleep","oversold","overspend","overstate","overstay","overstep","overstock","overstuff","oversweet","overtake","overthrow","overtime","overtly","overtone","overture","overturn","overuse","overvalue","overview","overwrite","owl","oxford","oxidant","oxidation","oxidize","oxidizing","oxygen","oxymoron","oyster","ozone","paced","pacemaker","pacific","pacifier","pacifism","pacifist","pacify","padded","padding","paddle","paddling","padlock","pagan","pager","paging","pajamas","palace","palatable","palm","palpable","palpitate","paltry","pampered","pamperer","pampers","pamphlet","panama","pancake","pancreas","panda","pandemic","pang","panhandle","panic","panning","panorama","panoramic","panther","pantomime","pantry","pants","pantyhose","paparazzi","papaya","paper","paprika","papyrus","parabola","parachute","parade","paradox","paragraph","parakeet","paralegal","paralyses","paralysis","paralyze","paramedic","parameter","paramount","parasail","parasite","parasitic","parcel","parched","parchment","pardon","parish","parka","parking","parkway","parlor","parmesan","parole","parrot","parsley","parsnip","partake","parted","parting","partition","partly","partner","partridge","party","passable","passably","passage","passcode","passenger","passerby","passing","passion","passive","passivism","passover","passport","password","pasta","pasted","pastel","pastime","pastor","pastrami","pasture","pasty","patchwork","patchy","paternal","paternity","path","patience","patient","patio","patriarch","patriot","patrol","patronage","patronize","pauper","pavement","paver","pavestone","pavilion","paving","pawing","payable","payback","paycheck","payday","payee","payer","paying","payment","payphone","payroll","pebble","pebbly","pecan","pectin","peculiar","peddling","pediatric","pedicure","pedigree","pedometer","pegboard","pelican","pellet","pelt","pelvis","penalize","penalty","pencil","pendant","pending","penholder","penknife","pennant","penniless","penny","penpal","pension","pentagon","pentagram","pep","perceive","percent","perch","percolate","perennial","perfected","perfectly","perfume","periscope","perish","perjurer","perjury","perkiness","perky","perm","peroxide","perpetual","perplexed","persecute","persevere","persuaded","persuader","pesky","peso","pessimism","pessimist","pester","pesticide","petal","petite","petition","petri","petroleum","petted","petticoat","pettiness","petty","petunia","phantom","phobia","phoenix","phonebook","phoney","phonics","phoniness","phony","phosphate","photo","phrase","phrasing","placard","placate","placidly","plank","planner","plant","plasma","plaster","plastic","plated","platform","plating","platinum","platonic","platter","platypus","plausible","plausibly","playable","playback","player","playful","playgroup","playhouse","playing","playlist","playmaker","playmate","playoff","playpen","playroom","playset","plaything","playtime","plaza","pleading","pleat","pledge","plentiful","plenty","plethora","plexiglas","pliable","plod","plop","plot","plow","ploy","pluck","plug","plunder","plunging","plural","plus","plutonium","plywood","poach","pod","poem","poet","pogo","pointed","pointer","pointing","pointless","pointy","poise","poison","poker","poking","polar","police","policy","polio","polish","politely","polka","polo","polyester","polygon","polygraph","polymer","poncho","pond","pony","popcorn","pope","poplar","popper","poppy","popsicle","populace","popular","populate","porcupine","pork","porous","porridge","portable","portal","portfolio","porthole","portion","portly","portside","poser","posh","posing","possible","possibly","possum","postage","postal","postbox","postcard","posted","poster","posting","postnasal","posture","postwar","pouch","pounce","pouncing","pound","pouring","pout","powdered","powdering","powdery","power","powwow","pox","praising","prance","prancing","pranker","prankish","prankster","prayer","praying","preacher","preaching","preachy","preamble","precinct","precise","precision","precook","precut","predator","predefine","predict","preface","prefix","preflight","preformed","pregame","pregnancy","pregnant","preheated","prelaunch","prelaw","prelude","premiere","premises","premium","prenatal","preoccupy","preorder","prepaid","prepay","preplan","preppy","preschool","prescribe","preseason","preset","preshow","president","presoak","press","presume","presuming","preteen","pretended","pretender","pretense","pretext","pretty","pretzel","prevail","prevalent","prevent","preview","previous","prewar","prewashed","prideful","pried","primal","primarily","primary","primate","primer","primp","princess","print","prior","prism","prison","prissy","pristine","privacy","private","privatize","prize","proactive","probable","probably","probation","probe","probing","probiotic","problem","procedure","process","proclaim","procreate","procurer","prodigal","prodigy","produce","product","profane","profanity","professed","professor","profile","profound","profusely","progeny","prognosis","program","progress","projector","prologue","prolonged","promenade","prominent","promoter","promotion","prompter","promptly","prone","prong","pronounce","pronto","proofing","proofread","proofs","propeller","properly","property","proponent","proposal","propose","props","prorate","protector","protegee","proton","prototype","protozoan","protract","protrude","proud","provable","proved","proven","provided","provider","providing","province","proving","provoke","provoking","provolone","prowess","prowler","prowling","proximity","proxy","prozac","prude","prudishly","prune","pruning","pry","psychic","public","publisher","pucker","pueblo","pug","pull","pulmonary","pulp","pulsate","pulse","pulverize","puma","pumice","pummel","punch","punctual","punctuate","punctured","pungent","punisher","punk","pupil","puppet","puppy","purchase","pureblood","purebred","purely","pureness","purgatory","purge","purging","purifier","purify","purist","puritan","purity","purple","purplish","purposely","purr","purse","pursuable","pursuant","pursuit","purveyor","pushcart","pushchair","pusher","pushiness","pushing","pushover","pushpin","pushup","pushy","putdown","putt","puzzle","puzzling","pyramid","pyromania","python","quack","quadrant","quail","quaintly","quake","quaking","qualified","qualifier","qualify","quality","qualm","quantum","quarrel","quarry","quartered","quarterly","quarters","quartet","quench","query","quicken","quickly","quickness","quicksand","quickstep","quiet","quill","quilt","quintet","quintuple","quirk","quit","quiver","quizzical","quotable","quotation","quote","rabid","race","racing","racism","rack","racoon","radar","radial","radiance","radiantly","radiated","radiation","radiator","radio","radish","raffle","raft","rage","ragged","raging","ragweed","raider","railcar","railing","railroad","railway","raisin","rake","raking","rally","ramble","rambling","ramp","ramrod","ranch","rancidity","random","ranged","ranger","ranging","ranked","ranking","ransack","ranting","rants","rare","rarity","rascal","rash","rasping","ravage","raven","ravine","raving","ravioli","ravishing","reabsorb","reach","reacquire","reaction","reactive","reactor","reaffirm","ream","reanalyze","reappear","reapply","reappoint","reapprove","rearrange","rearview","reason","reassign","reassure","reattach","reawake","rebalance","rebate","rebel","rebirth","reboot","reborn","rebound","rebuff","rebuild","rebuilt","reburial","rebuttal","recall","recant","recapture","recast","recede","recent","recess","recharger","recipient","recital","recite","reckless","reclaim","recliner","reclining","recluse","reclusive","recognize","recoil","recollect","recolor","reconcile","reconfirm","reconvene","recopy","record","recount","recoup","recovery","recreate","rectal","rectangle","rectified","rectify","recycled","recycler","recycling","reemerge","reenact","reenter","reentry","reexamine","referable","referee","reference","refill","refinance","refined","refinery","refining","refinish","reflected","reflector","reflex","reflux","refocus","refold","reforest","reformat","reformed","reformer","reformist","refract","refrain","refreeze","refresh","refried","refueling","refund","refurbish","refurnish","refusal","refuse","refusing","refutable","refute","regain","regalia","regally","reggae","regime","region","register","registrar","registry","regress","regretful","regroup","regular","regulate","regulator","rehab","reheat","rehire","rehydrate","reimburse","reissue","reiterate","rejoice","rejoicing","rejoin","rekindle","relapse","relapsing","relatable","related","relation","relative","relax","relay","relearn","release","relenting","reliable","reliably","reliance","reliant","relic","relieve","relieving","relight","relish","relive","reload","relocate","relock","reluctant","rely","remake","remark","remarry","rematch","remedial","remedy","remember","reminder","remindful","remission","remix","remnant","remodeler","remold","remorse","remote","removable","removal","removed","remover","removing","rename","renderer","rendering","rendition","renegade","renewable","renewably","renewal","renewed","renounce","renovate","renovator","rentable","rental","rented","renter","reoccupy","reoccur","reopen","reorder","repackage","repacking","repaint","repair","repave","repaying","repayment","repeal","repeated","repeater","repent","rephrase","replace","replay","replica","reply","reporter","repose","repossess","repost","repressed","reprimand","reprint","reprise","reproach","reprocess","reproduce","reprogram","reps","reptile","reptilian","repugnant","repulsion","repulsive","repurpose","reputable","reputably","request","require","requisite","reroute","rerun","resale","resample","rescuer","reseal","research","reselect","reseller","resemble","resend","resent","reset","reshape","reshoot","reshuffle","residence","residency","resident","residual","residue","resigned","resilient","resistant","resisting","resize","resolute","resolved","resonant","resonate","resort","resource","respect","resubmit","result","resume","resupply","resurface","resurrect","retail","retainer","retaining","retake","retaliate","retention","rethink","retinal","retired","retiree","retiring","retold","retool","retorted","retouch","retrace","retract","retrain","retread","retreat","retrial","retrieval","retriever","retry","return","retying","retype","reunion","reunite","reusable","reuse","reveal","reveler","revenge","revenue","reverb","revered","reverence","reverend","reversal","reverse","reversing","reversion","revert","revisable","revise","revision","revisit","revivable","revival","reviver","reviving","revocable","revoke","revolt","revolver","revolving","reward","rewash","rewind","rewire","reword","rework","rewrap","rewrite","rhyme","ribbon","ribcage","rice","riches","richly","richness","rickety","ricotta","riddance","ridden","ride","riding","rifling","rift","rigging","rigid","rigor","rimless","rimmed","rind","rink","rinse","rinsing","riot","ripcord","ripeness","ripening","ripping","ripple","rippling","riptide","rise","rising","risk","risotto","ritalin","ritzy","rival","riverbank","riverbed","riverboat","riverside","riveter","riveting","roamer","roaming","roast","robbing","robe","robin","robotics","robust","rockband","rocker","rocket","rockfish","rockiness","rocking","rocklike","rockslide","rockstar","rocky","rogue","roman","romp","rope","roping","roster","rosy","rotten","rotting","rotunda","roulette","rounding","roundish","roundness","roundup","roundworm","routine","routing","rover","roving","royal","rubbed","rubber","rubbing","rubble","rubdown","ruby","ruckus","rudder","rug","ruined","rule","rumble","rumbling","rummage","rumor","runaround","rundown","runner","running","runny","runt","runway","rupture","rural","ruse","rush","rust","rut","sabbath","sabotage","sacrament","sacred","sacrifice","sadden","saddlebag","saddled","saddling","sadly","sadness","safari","safeguard","safehouse","safely","safeness","saffron","saga","sage","sagging","saggy","said","saint","sake","salad","salami","salaried","salary","saline","salon","saloon","salsa","salt","salutary","salute","salvage","salvaging","salvation","same","sample","sampling","sanction","sanctity","sanctuary","sandal","sandbag","sandbank","sandbar","sandblast","sandbox","sanded","sandfish","sanding","sandlot","sandpaper","sandpit","sandstone","sandstorm","sandworm","sandy","sanitary","sanitizer","sank","santa","sapling","sappiness","sappy","sarcasm","sarcastic","sardine","sash","sasquatch","sassy","satchel","satiable","satin","satirical","satisfied","satisfy","saturate","saturday","sauciness","saucy","sauna","savage","savanna","saved","savings","savior","savor","saxophone","say","scabbed","scabby","scalded","scalding","scale","scaling","scallion","scallop","scalping","scam","scandal","scanner","scanning","scant","scapegoat","scarce","scarcity","scarecrow","scared","scarf","scarily","scariness","scarring","scary","scavenger","scenic","schedule","schematic","scheme","scheming","schilling","schnapps","scholar","science","scientist","scion","scoff","scolding","scone","scoop","scooter","scope","scorch","scorebook","scorecard","scored","scoreless","scorer","scoring","scorn","scorpion","scotch","scoundrel","scoured","scouring","scouting","scouts","scowling","scrabble","scraggly","scrambled","scrambler","scrap","scratch","scrawny","screen","scribble","scribe","scribing","scrimmage","script","scroll","scrooge","scrounger","scrubbed","scrubber","scruffy","scrunch","scrutiny","scuba","scuff","sculptor","sculpture","scurvy","scuttle","secluded","secluding","seclusion","second","secrecy","secret","sectional","sector","secular","securely","security","sedan","sedate","sedation","sedative","sediment","seduce","seducing","segment","seismic","seizing","seldom","selected","selection","selective","selector","self","seltzer","semantic","semester","semicolon","semifinal","seminar","semisoft","semisweet","senate","senator","send","senior","senorita","sensation","sensitive","sensitize","sensually","sensuous","sepia","september","septic","septum","sequel","sequence","sequester","series","sermon","serotonin","serpent","serrated","serve","service","serving","sesame","sessions","setback","setting","settle","settling","setup","sevenfold","seventeen","seventh","seventy","severity","shabby","shack","shaded","shadily","shadiness","shading","shadow","shady","shaft","shakable","shakily","shakiness","shaking","shaky","shale","shallot","shallow","shame","shampoo","shamrock","shank","shanty","shape","shaping","share","sharpener","sharper","sharpie","sharply","sharpness","shawl","sheath","shed","sheep","sheet","shelf","shell","shelter","shelve","shelving","sherry","shield","shifter","shifting","shiftless","shifty","shimmer","shimmy","shindig","shine","shingle","shininess","shining","shiny","ship","shirt","shivering","shock","shone","shoplift","shopper","shopping","shoptalk","shore","shortage","shortcake","shortcut","shorten","shorter","shorthand","shortlist","shortly","shortness","shorts","shortwave","shorty","shout","shove","showbiz","showcase","showdown","shower","showgirl","showing","showman","shown","showoff","showpiece","showplace","showroom","showy","shrank","shrapnel","shredder","shredding","shrewdly","shriek","shrill","shrimp","shrine","shrink","shrivel","shrouded","shrubbery","shrubs","shrug","shrunk","shucking","shudder","shuffle","shuffling","shun","shush","shut","shy","siamese","siberian","sibling","siding","sierra","siesta","sift","sighing","silenced","silencer","silent","silica","silicon","silk","silliness","silly","silo","silt","silver","similarly","simile","simmering","simple","simplify","simply","sincere","sincerity","singer","singing","single","singular","sinister","sinless","sinner","sinuous","sip","siren","sister","sitcom","sitter","sitting","situated","situation","sixfold","sixteen","sixth","sixties","sixtieth","sixtyfold","sizable","sizably","size","sizing","sizzle","sizzling","skater","skating","skedaddle","skeletal","skeleton","skeptic","sketch","skewed","skewer","skid","skied","skier","skies","skiing","skilled","skillet","skillful","skimmed","skimmer","skimming","skimpily","skincare","skinhead","skinless","skinning","skinny","skintight","skipper","skipping","skirmish","skirt","skittle","skydiver","skylight","skyline","skype","skyrocket","skyward","slab","slacked","slacker","slacking","slackness","slacks","slain","slam","slander","slang","slapping","slapstick","slashed","slashing","slate","slather","slaw","sled","sleek","sleep","sleet","sleeve","slept","sliceable","sliced","slicer","slicing","slick","slider","slideshow","sliding","slighted","slighting","slightly","slimness","slimy","slinging","slingshot","slinky","slip","slit","sliver","slobbery","slogan","sloped","sloping","sloppily","sloppy","slot","slouching","slouchy","sludge","slug","slum","slurp","slush","sly","small","smartly","smartness","smasher","smashing","smashup","smell","smelting","smile","smilingly","smirk","smite","smith","smitten","smock","smog","smoked","smokeless","smokiness","smoking","smoky","smolder","smooth","smother","smudge","smudgy","smuggler","smuggling","smugly","smugness","snack","snagged","snaking","snap","snare","snarl","snazzy","sneak","sneer","sneeze","sneezing","snide","sniff","snippet","snipping","snitch","snooper","snooze","snore","snoring","snorkel","snort","snout","snowbird","snowboard","snowbound","snowcap","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowiness","snowless","snowman","snowplow","snowshoe","snowstorm","snowsuit","snowy","snub","snuff","snuggle","snugly","snugness","speak","spearfish","spearhead","spearman","spearmint","species","specimen","specked","speckled","specks","spectacle","spectator","spectrum","speculate","speech","speed","spellbind","speller","spelling","spendable","spender","spending","spent","spew","sphere","spherical","sphinx","spider","spied","spiffy","spill","spilt","spinach","spinal","spindle","spinner","spinning","spinout","spinster","spiny","spiral","spirited","spiritism","spirits","spiritual","splashed","splashing","splashy","splatter","spleen","splendid","splendor","splice","splicing","splinter","splotchy","splurge","spoilage","spoiled","spoiler","spoiling","spoils","spoken","spokesman","sponge","spongy","sponsor","spoof","spookily","spooky","spool","spoon","spore","sporting","sports","sporty","spotless","spotlight","spotted","spotter","spotting","spotty","spousal","spouse","spout","sprain","sprang","sprawl","spray","spree","sprig","spring","sprinkled","sprinkler","sprint","sprite","sprout","spruce","sprung","spry","spud","spur","sputter","spyglass","squabble","squad","squall","squander","squash","squatted","squatter","squatting","squeak","squealer","squealing","squeamish","squeegee","squeeze","squeezing","squid","squiggle","squiggly","squint","squire","squirt","squishier","squishy","stability","stabilize","stable","stack","stadium","staff","stage","staging","stagnant","stagnate","stainable","stained","staining","stainless","stalemate","staleness","stalling","stallion","stamina","stammer","stamp","stand","stank","staple","stapling","starboard","starch","stardom","stardust","starfish","stargazer","staring","stark","starless","starlet","starlight","starlit","starring","starry","starship","starter","starting","startle","startling","startup","starved","starving","stash","state","static","statistic","statue","stature","status","statute","statutory","staunch","stays","steadfast","steadier","steadily","steadying","steam","steed","steep","steerable","steering","steersman","stegosaur","stellar","stem","stench","stencil","step","stereo","sterile","sterility","sterilize","sterling","sternness","sternum","stew","stick","stiffen","stiffly","stiffness","stifle","stifling","stillness","stilt","stimulant","stimulate","stimuli","stimulus","stinger","stingily","stinging","stingray","stingy","stinking","stinky","stipend","stipulate","stir","stitch","stock","stoic","stoke","stole","stomp","stonewall","stoneware","stonework","stoning","stony","stood","stooge","stool","stoop","stoplight","stoppable","stoppage","stopped","stopper","stopping","stopwatch","storable","storage","storeroom","storewide","storm","stout","stove","stowaway","stowing","straddle","straggler","strained","strainer","straining","strangely","stranger","strangle","strategic","strategy","stratus","straw","stray","streak","stream","street","strength","strenuous","strep","stress","stretch","strewn","stricken","strict","stride","strife","strike","striking","strive","striving","strobe","strode","stroller","strongbox","strongly","strongman","struck","structure","strudel","struggle","strum","strung","strut","stubbed","stubble","stubbly","stubborn","stucco","stuck","student","studied","studio","study","stuffed","stuffing","stuffy","stumble","stumbling","stump","stung","stunned","stunner","stunning","stunt","stupor","sturdily","sturdy","styling","stylishly","stylist","stylized","stylus","suave","subarctic","subatomic","subdivide","subdued","subduing","subfloor","subgroup","subheader","subject","sublease","sublet","sublevel","sublime","submarine","submerge","submersed","submitter","subpanel","subpar","subplot","subprime","subscribe","subscript","subsector","subside","subsiding","subsidize","subsidy","subsoil","subsonic","substance","subsystem","subtext","subtitle","subtly","subtotal","subtract","subtype","suburb","subway","subwoofer","subzero","succulent","such","suction","sudden","sudoku","suds","sufferer","suffering","suffice","suffix","suffocate","suffrage","sugar","suggest","suing","suitable","suitably","suitcase","suitor","sulfate","sulfide","sulfite","sulfur","sulk","sullen","sulphate","sulphuric","sultry","superbowl","superglue","superhero","superior","superjet","superman","supermom","supernova","supervise","supper","supplier","supply","support","supremacy","supreme","surcharge","surely","sureness","surface","surfacing","surfboard","surfer","surgery","surgical","surging","surname","surpass","surplus","surprise","surreal","surrender","surrogate","surround","survey","survival","survive","surviving","survivor","sushi","suspect","suspend","suspense","sustained","sustainer","swab","swaddling","swagger","swampland","swan","swapping","swarm","sway","swear","sweat","sweep","swell","swept","swerve","swifter","swiftly","swiftness","swimmable","swimmer","swimming","swimsuit","swimwear","swinger","swinging","swipe","swirl","switch","swivel","swizzle","swooned","swoop","swoosh","swore","sworn","swung","sycamore","sympathy","symphonic","symphony","symptom","synapse","syndrome","synergy","synopses","synopsis","synthesis","synthetic","syrup","system","t-shirt","tabasco","tabby","tableful","tables","tablet","tableware","tabloid","tackiness","tacking","tackle","tackling","tacky","taco","tactful","tactical","tactics","tactile","tactless","tadpole","taekwondo","tag","tainted","take","taking","talcum","talisman","tall","talon","tamale","tameness","tamer","tamper","tank","tanned","tannery","tanning","tantrum","tapeless","tapered","tapering","tapestry","tapioca","tapping","taps","tarantula","target","tarmac","tarnish","tarot","tartar","tartly","tartness","task","tassel","taste","tastiness","tasting","tasty","tattered","tattle","tattling","tattoo","taunt","tavern","thank","that","thaw","theater","theatrics","thee","theft","theme","theology","theorize","thermal","thermos","thesaurus","these","thesis","thespian","thicken","thicket","thickness","thieving","thievish","thigh","thimble","thing","think","thinly","thinner","thinness","thinning","thirstily","thirsting","thirsty","thirteen","thirty","thong","thorn","those","thousand","thrash","thread","threaten","threefold","thrift","thrill","thrive","thriving","throat","throbbing","throng","throttle","throwaway","throwback","thrower","throwing","thud","thumb","thumping","thursday","thus","thwarting","thyself","tiara","tibia","tidal","tidbit","tidiness","tidings","tidy","tiger","tighten","tightly","tightness","tightrope","tightwad","tigress","tile","tiling","till","tilt","timid","timing","timothy","tinderbox","tinfoil","tingle","tingling","tingly","tinker","tinkling","tinsel","tinsmith","tint","tinwork","tiny","tipoff","tipped","tipper","tipping","tiptoeing","tiptop","tiring","tissue","trace","tracing","track","traction","tractor","trade","trading","tradition","traffic","tragedy","trailing","trailside","train","traitor","trance","tranquil","transfer","transform","translate","transpire","transport","transpose","trapdoor","trapeze","trapezoid","trapped","trapper","trapping","traps","trash","travel","traverse","travesty","tray","treachery","treading","treadmill","treason","treat","treble","tree","trekker","tremble","trembling","tremor","trench","trend","trespass","triage","trial","triangle","tribesman","tribunal","tribune","tributary","tribute","triceps","trickery","trickily","tricking","trickle","trickster","tricky","tricolor","tricycle","trident","tried","trifle","trifocals","trillion","trilogy","trimester","trimmer","trimming","trimness","trinity","trio","tripod","tripping","triumph","trivial","trodden","trolling","trombone","trophy","tropical","tropics","trouble","troubling","trough","trousers","trout","trowel","truce","truck","truffle","trump","trunks","trustable","trustee","trustful","trusting","trustless","truth","try","tubby","tubeless","tubular","tucking","tuesday","tug","tuition","tulip","tumble","tumbling","tummy","turban","turbine","turbofan","turbojet","turbulent","turf","turkey","turmoil","turret","turtle","tusk","tutor","tutu","tux","tweak","tweed","tweet","tweezers","twelve","twentieth","twenty","twerp","twice","twiddle","twiddling","twig","twilight","twine","twins","twirl","twistable","twisted","twister","twisting","twisty","twitch","twitter","tycoon","tying","tyke","udder","ultimate","ultimatum","ultra","umbilical","umbrella","umpire","unabashed","unable","unadorned","unadvised","unafraid","unaired","unaligned","unaltered","unarmored","unashamed","unaudited","unawake","unaware","unbaked","unbalance","unbeaten","unbend","unbent","unbiased","unbitten","unblended","unblessed","unblock","unbolted","unbounded","unboxed","unbraided","unbridle","unbroken","unbuckled","unbundle","unburned","unbutton","uncanny","uncapped","uncaring","uncertain","unchain","unchanged","uncharted","uncheck","uncivil","unclad","unclaimed","unclamped","unclasp","uncle","unclip","uncloak","unclog","unclothed","uncoated","uncoiled","uncolored","uncombed","uncommon","uncooked","uncork","uncorrupt","uncounted","uncouple","uncouth","uncover","uncross","uncrown","uncrushed","uncured","uncurious","uncurled","uncut","undamaged","undated","undaunted","undead","undecided","undefined","underage","underarm","undercoat","undercook","undercut","underdog","underdone","underfed","underfeed","underfoot","undergo","undergrad","underhand","underline","underling","undermine","undermost","underpaid","underpass","underpay","underrate","undertake","undertone","undertook","undertow","underuse","underwear","underwent","underwire","undesired","undiluted","undivided","undocked","undoing","undone","undrafted","undress","undrilled","undusted","undying","unearned","unearth","unease","uneasily","uneasy","uneatable","uneaten","unedited","unelected","unending","unengaged","unenvied","unequal","unethical","uneven","unexpired","unexposed","unfailing","unfair","unfasten","unfazed","unfeeling","unfiled","unfilled","unfitted","unfitting","unfixable","unfixed","unflawed","unfocused","unfold","unfounded","unframed","unfreeze","unfrosted","unfrozen","unfunded","unglazed","ungloved","unglue","ungodly","ungraded","ungreased","unguarded","unguided","unhappily","unhappy","unharmed","unhealthy","unheard","unhearing","unheated","unhelpful","unhidden","unhinge","unhitched","unholy","unhook","unicorn","unicycle","unified","unifier","uniformed","uniformly","unify","unimpeded","uninjured","uninstall","uninsured","uninvited","union","uniquely","unisexual","unison","unissued","unit","universal","universe","unjustly","unkempt","unkind","unknotted","unknowing","unknown","unlaced","unlatch","unlawful","unleaded","unlearned","unleash","unless","unleveled","unlighted","unlikable","unlimited","unlined","unlinked","unlisted","unlit","unlivable","unloaded","unloader","unlocked","unlocking","unlovable","unloved","unlovely","unloving","unluckily","unlucky","unmade","unmanaged","unmanned","unmapped","unmarked","unmasked","unmasking","unmatched","unmindful","unmixable","unmixed","unmolded","unmoral","unmovable","unmoved","unmoving","unnamable","unnamed","unnatural","unneeded","unnerve","unnerving","unnoticed","unopened","unopposed","unpack","unpadded","unpaid","unpainted","unpaired","unpaved","unpeeled","unpicked","unpiloted","unpinned","unplanned","unplanted","unpleased","unpledged","unplowed","unplug","unpopular","unproven","unquote","unranked","unrated","unraveled","unreached","unread","unreal","unreeling","unrefined","unrelated","unrented","unrest","unretired","unrevised","unrigged","unripe","unrivaled","unroasted","unrobed","unroll","unruffled","unruly","unrushed","unsaddle","unsafe","unsaid","unsalted","unsaved","unsavory","unscathed","unscented","unscrew","unsealed","unseated","unsecured","unseeing","unseemly","unseen","unselect","unselfish","unsent","unsettled","unshackle","unshaken","unshaved","unshaven","unsheathe","unshipped","unsightly","unsigned","unskilled","unsliced","unsmooth","unsnap","unsocial","unsoiled","unsold","unsolved","unsorted","unspoiled","unspoken","unstable","unstaffed","unstamped","unsteady","unsterile","unstirred","unstitch","unstopped","unstuck","unstuffed","unstylish","unsubtle","unsubtly","unsuited","unsure","unsworn","untagged","untainted","untaken","untamed","untangled","untapped","untaxed","unthawed","unthread","untidy","untie","until","untimed","untimely","untitled","untoasted","untold","untouched","untracked","untrained","untreated","untried","untrimmed","untrue","untruth","unturned","untwist","untying","unusable","unused","unusual","unvalued","unvaried","unvarying","unveiled","unveiling","unvented","unviable","unvisited","unvocal","unwanted","unwarlike","unwary","unwashed","unwatched","unweave","unwed","unwelcome","unwell","unwieldy","unwilling","unwind","unwired","unwitting","unwomanly","unworldly","unworn","unworried","unworthy","unwound","unwoven","unwrapped","unwritten","unzip","upbeat","upchuck","upcoming","upcountry","update","upfront","upgrade","upheaval","upheld","uphill","uphold","uplifted","uplifting","upload","upon","upper","upright","uprising","upriver","uproar","uproot","upscale","upside","upstage","upstairs","upstart","upstate","upstream","upstroke","upswing","uptake","uptight","uptown","upturned","upward","upwind","uranium","urban","urchin","urethane","urgency","urgent","urging","urologist","urology","usable","usage","useable","used","uselessly","user","usher","usual","utensil","utility","utilize","utmost","utopia","utter","vacancy","vacant","vacate","vacation","vagabond","vagrancy","vagrantly","vaguely","vagueness","valiant","valid","valium","valley","valuables","value","vanilla","vanish","vanity","vanquish","vantage","vaporizer","variable","variably","varied","variety","various","varmint","varnish","varsity","varying","vascular","vaseline","vastly","vastness","veal","vegan","veggie","vehicular","velcro","velocity","velvet","vendetta","vending","vendor","veneering","vengeful","venomous","ventricle","venture","venue","venus","verbalize","verbally","verbose","verdict","verify","verse","version","versus","vertebrae","vertical","vertigo","very","vessel","vest","veteran","veto","vexingly","viability","viable","vibes","vice","vicinity","victory","video","viewable","viewer","viewing","viewless","viewpoint","vigorous","village","villain","vindicate","vineyard","vintage","violate","violation","violator","violet","violin","viper","viral","virtual","virtuous","virus","visa","viscosity","viscous","viselike","visible","visibly","vision","visiting","visitor","visor","vista","vitality","vitalize","vitally","vitamins","vivacious","vividly","vividness","vixen","vocalist","vocalize","vocally","vocation","voice","voicing","void","volatile","volley","voltage","volumes","voter","voting","voucher","vowed","vowel","voyage","wackiness","wad","wafer","waffle","waged","wager","wages","waggle","wagon","wake","waking","walk","walmart","walnut","walrus","waltz","wand","wannabe","wanted","wanting","wasabi","washable","washbasin","washboard","washbowl","washcloth","washday","washed","washer","washhouse","washing","washout","washroom","washstand","washtub","wasp","wasting","watch","water","waviness","waving","wavy","whacking","whacky","wham","wharf","wheat","whenever","whiff","whimsical","whinny","whiny","whisking","whoever","whole","whomever","whoopee","whooping","whoops","why","wick","widely","widen","widget","widow","width","wieldable","wielder","wife","wifi","wikipedia","wildcard","wildcat","wilder","wildfire","wildfowl","wildland","wildlife","wildly","wildness","willed","willfully","willing","willow","willpower","wilt","wimp","wince","wincing","wind","wing","winking","winner","winnings","winter","wipe","wired","wireless","wiring","wiry","wisdom","wise","wish","wisplike","wispy","wistful","wizard","wobble","wobbling","wobbly","wok","wolf","wolverine","womanhood","womankind","womanless","womanlike","womanly","womb","woof","wooing","wool","woozy","word","work","worried","worrier","worrisome","worry","worsening","worshiper","worst","wound","woven","wow","wrangle","wrath","wreath","wreckage","wrecker","wrecking","wrench","wriggle","wriggly","wrinkle","wrinkly","wrist","writing","written","wrongdoer","wronged","wrongful","wrongly","wrongness","wrought","xbox","xerox","yahoo","yam","yanking","yapping","yard","yarn","yeah","yearbook","yearling","yearly","yearning","yeast","yelling","yelp","yen","yesterday","yiddish","yield","yin","yippee","yo-yo","yodel","yoga","yogurt","yonder","yoyo","yummy","zap","zealous","zebra","zen","zeppelin","zero","zestfully","zesty","zigzagged","zipfile","zipping","zippy","zips","zit","zodiac","zombie","zone","zoning","zookeeper","zoologist","zoology","zoom"]},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.cipherService.upsert(r)}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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=e?[4,this.lock(!0)]:[3,5]);case 4:t.sent(),t.label=5;case 5:return[2]}})})},n.prototype.lock=function(n){return void 0===n&&(n=!1),t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return n?[4,this.isPinLockSet()]:[3,4];case 1:return l.sent()[0]?(this.pinLocked=!0,this.messagingService.send("locked"),null==this.lockedCallback?[3,3]:[4,this.lockedCallback()]):[3,4];case 2:l.sent(),l.label=3;case 3:return[2];case 4:return[4,Promise.all([this.cryptoService.clearKey(),this.cryptoService.clearOrgKeys(!0),this.cryptoService.clearKeyPair(!0),this.cryptoService.clearEncKey(!0)])];case 5:return l.sent(),this.folderService.clearCache(),this.cipherService.clearCache(),this.collectionService.clearCache(),this.searchService.clearIndex(),this.messagingService.send("locked"),null==this.lockedCallback?[3,7]:[4,this.lockedCallback()];case 6:l.sent(),l.label=7;case 7: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(r.ConstantsService.lockOptionKey,n)];case 1:return l.sent(),[4,this.cryptoService.toggleKey()];case 2:return l.sent(),[2]}})})},n.prototype.isPinLockSet=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.storageService.get(r.ConstantsService.protectedPin)];case 1:return n=e.sent(),[4,this.storageService.get(r.ConstantsService.pinProtectedKey)];case 2:return l=e.sent(),[2,[null!=n,null!=l]]}})})},n.prototype.clear=function(){return this.storageService.remove(r.ConstantsService.protectedPin)},n}();l.LockService=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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),r=0,u.label=1;case 1:return r100&&l.pop(),[4,this.encryptHistory(l)]);case 3:return e=t.sent(),[4,this.storageService.save(c,e)];case 4:return[2,t.sent()]}})})},n.prototype.clear=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.history=[],[4,this.storageService.remove(c)];case 1:return[2,n.sent()]}})})},n.prototype.passwordStrength=function(n,l){if(void 0===l&&(l=null),null==n||0===n.length)return null;var e=["bitwarden","bit","warden"];null!=l&&l.length>0&&(e=e.concat(l));var t=Array.from(new Set(e));return r(n,t)},n.prototype.encryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(r){switch(r.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,r.sent()]}})})},n.prototype.decryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(r){switch(r.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 o.CipherString(n.password))];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=n.revisionDate&&(e=!1),o=!1,e&&(l?(e=null!=t,o=!0):null==n.collectionIds||null==n.organizationId?e=null==t:(e=!1,o=!0)),!e&&o&&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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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")&&(r=d.get("secret")),d.has("algorithm")&&null!=d.get("algorithm")&&("sha1"!==(f=d.get("algorithm").toLowerCase())&&"sha256"!==f&&"sha512"!==f||(e=f))}else s&&(r=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=o.Utils.fromHexToArray(h),(m=this.b32ToBytes(r)).length&&g.length?[4,this.sign(m,g,e)]:[2,null];case 1:if(0===(y=u.sent()).length)return[2,null];if(C=15&y[y.length-1],b=(127&y[C])<<24|(255&y[C+1])<<16|(255&y[C+2])<<8|255&y[C+3],w="",s)for(S=2147483647&b,_=0;_=n.length&&(n=Array(l+1-n.length).join(e)+n),n},n.prototype.decToHex=function(n){return(n<15.5?"0":"")+Math.round(n).toString(16)},n.prototype.b32ToHex=function(n){n=n.toUpperCase();for(var l="",e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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()===r.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===o.TwoFactorProviderType.U2f){if(null==this.u2f)return[2];this.u2f.stop()}else this.selectedProviderType!==o.TwoFactorProviderType.Email&&this.selectedProviderType!==o.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===o.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!==o.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,r){this.email=n,this.masterPasswordHash=l,this.token=t,this.provider=e,this.remember=u,this.device=null!=r?r: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(35),r=e(33),o=e(3),i=e(7),a=e(12),s=e(20),d=e(18),c=e(4),p=e(99),f=e(51),v=e(540),h=e(451),g=e(10),m=e(452),y=e(96),C=e(23),b=e(5),w=e(32),S=e(8),_=e(63),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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"createOrganizationStep1")),"");n(l,1,0,"info","fa-thumb-tack",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"createOrganizationCreatePersonalAccount"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"submitAgreePolicies"));n(l,1,0,e);var u=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"termsOfService"));n(l,4,0,u);var r=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"privacyPolicy"));n(l,8,0,r)})}function A(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[o.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,r=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!==r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.masterPassword=e)&&u);"input"===l&&(u=!1!==r.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,[o.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,r=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!==(r.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,r=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!==(r.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);var t=n(l,94,0,!e.showPassword,e.showPassword);n(l,93,0,"fa fa-lg",t);n(l,116,0,"");n(l,119,0,"MasterPasswordRetype",e.confirmMasterPassword);n(l,122,0,"");var u=n(l,129,0,!e.showPassword,e.showPassword);n(l,128,0,"fa fa-lg",u);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);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"createAccount"));n(l,12,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"emailAddress"));n(l,25,0,r),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);var o=t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"emailAddressDesc"));n(l,40,0,o);var i=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"yourName"));n(l,47,0,i),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);var a=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"yourNameDesc"));n(l,59,0,a);var s=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"masterPass"));n(l,66,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"toggleVisibility")),"");n(l,89,0,d);var c=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l,0),"masterPassDesc"));n(l,102,0,c);var p=t.ɵunv(l,109,0,n(l,110,0,t.ɵnov(l,0),"reTypeMasterPass"));n(l,109,0,p),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);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,124,0,n(l,125,0,t.ɵnov(l,0),"toggleVisibility")),"");n(l,124,0,f);var v=t.ɵunv(l,137,0,n(l,138,0,t.ɵnov(l,0),"masterPassHint"));n(l,137,0,v),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);var h=t.ɵunv(l,148,0,n(l,149,0,t.ɵnov(l,0),"masterPassHintDesc"));n(l,148,0,h),n(l,156,0,t.ɵnov(l,1).loading);var g=t.ɵunv(l,159,0,n(l,160,0,t.ɵnov(l,0),"submit"));n(l,159,0,g);var m=t.ɵinlineInterpolate(1,"",t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l,0),"loading")),"");n(l,162,0,m),n(l,166,0,t.ɵnov(l,167).target,t.ɵnov(l,167).href);var y=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l,0),"cancel"));n(l,168,0,y)})}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,o.I18nService,C.CryptoService,b.ApiService,g.ActivatedRoute,w.StateService,S.PlatformUtilsService,_.PasswordGenerationService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_RegisterComponent=R,l.View_RegisterComponent_0=A,l.View_RegisterComponent_Host_0=O;var N=t.ɵccf("app-register",m.RegisterComponent,O,{},{},[]);l.RegisterComponentNgFactory=N},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r,o){this.name=l,this.email=n,this.masterPasswordHash=e,this.masterPasswordHint=t||null,this.key=u,this.kdf=r,this.kdfIterations=o}}();l.RegisterRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(454),v=e(5),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,r=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!==(r.email=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(27,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(30,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(32,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHint"));n(l,12,0,e);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"emailAddress"));n(l,22,0,u),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);var r=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"enterEmailToGetHint"));n(l,37,0,r),n(l,45,0,t.ɵnov(l,1).loading),n(l,47,0,t.ɵnov(l,1).loading);var o=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"));n(l,48,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"");n(l,51,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel"));n(l,57,0,a)})}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,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=5)return this.messagingService.send("logout"),[2];this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("invalidPin"))}return[3,18];case 14:return[4,this.cryptoService.makeKey(this.masterPassword,this.email,n,l)];case 15:return f=u.sent(),[4,this.cryptoService.hashPassword(this.masterPassword,f)];case 16:return v=u.sent(),[4,this.cryptoService.getKeyHash()];case 17:null!=(h=u.sent())&&null!=v&&h===v?this.setKeyAndContinue(f):this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("invalidMasterPassword")),u.label=18;case 18:return[2]}})})},n.prototype.logOut=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("logOutConfirmation"),this.i18nService.t("logOut"),this.i18nService.t("logOut"),this.i18nService.t("cancel"))];case 1:return n.sent()&&this.messagingService.send("logout"),[2]}})})},n.prototype.togglePassword=function(){this.platformUtilsService.eventTrack("Toggled Master Password on Unlock"),this.showPassword=!this.showPassword,document.getElementById(this.pinLock?"pin":"masterPassword").focus()},n.prototype.setKeyAndContinue=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.cryptoService.setKey(n)];case 1:return l.sent(),this.doContinue(),[2]}})})},n.prototype.doContinue=function(){this.messagingService.send("unlocked"),null!=this.onSuccessfulSubmit?this.onSuccessfulSubmit():null!=this.router&&this.router.navigate([this.successRoute])},n}();l.LockComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(458),i=e(10),a=e(13),s=e(5),d=e(9),c=t.ɵcrt({encapsulation:2,styles:[],data:{}});function p(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,12,"div",[["class","mt-5 d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,0,"img",[["alt","Bitwarden"],["class","mb-4 logo"],["src","images/logo-dark@2x.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-2x text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(10,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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"loading")),"");n(l,9,0,e)})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email-token",[],null,null,null,p,c)),t.ɵdid(1,114688,null,0,o.VerifyEmailTokenComponent,[i.Router,a.ToasterService,r.I18nService,i.ActivatedRoute,s.ApiService,d.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VerifyEmailTokenComponent=c,l.View_VerifyEmailTokenComponent_0=p,l.View_VerifyEmailTokenComponent_Host_0=f;var v=t.ɵccf("app-verify-email-token",o.VerifyEmailTokenComponent,f,{},{},[]);l.VerifyEmailTokenComponentNgFactory=v},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=n,this.token=l}}();l.VerifyEmailRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(459),s=e(13),d=e(5),c=e(9),p=e(32),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,12,"div",[["class","mt-5 d-flex justify-content-center"]],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,0,"img",[["alt","Bitwarden"],["class","mb-4 logo"],["src","images/logo-dark@2x.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-2x text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"loading")),"");n(l,8,0,e)})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,44,"div",[["class","container"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,41,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,38,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"p",[["class","lead text-center mb-4"]],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,31,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,28,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),(n()(),t.ɵeld(16,0,null,null,1,"strong",[["class","d-block mt-2"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"p",[],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,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,13,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"a",[["class","btn btn-primary btn-block"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,29).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(29,671744,null,0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,r.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),t.ɵpod(30,{email:0}),(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,"a",[["class","btn btn-primary btn-block ml-2 mt-0"],["routerLink","/register"]],[[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,null,0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,r.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),t.ɵpod(36,{email:0}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,t=n(l,30,0,e.email);n(l,29,0,t,"/");var u=n(l,36,0,e.email);n(l,35,0,u,"/register")},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"joinOrganization"));n(l,7,0,u),n(l,15,0,e.orgName),n(l,17,0,e.email);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"joinOrganizationDesc"));n(l,21,0,r),n(l,28,0,t.ɵnov(l,29).target,t.ɵnov(l,29).href);var o=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"logIn"));n(l,31,0,o),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"createAccount"));n(l,37,0,i)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[i.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(2,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,h)),t.ɵdid(5,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,2,0,e.loading),n(l,5,0,!e.loading&&!e.authed)},null)}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-accept-organization",[],null,null,null,g,f)),t.ɵdid(1,114688,null,0,a.AcceptOrganizationComponent,[u.Router,s.ToasterService,i.I18nService,u.ActivatedRoute,d.ApiService,c.UserService,p.StateService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AcceptOrganizationComponent=f,l.View_AcceptOrganizationComponent_0=g,l.View_AcceptOrganizationComponent_Host_0=m;var y=t.ɵccf("app-accept-organization",a.AcceptOrganizationComponent,m,{},{},[]);l.AcceptOrganizationComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUserAcceptRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(460),v=e(5),h=e(6),g=e(13),m=e(23),y=e(96),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,101,"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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,94,"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,91,"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,84,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,81,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["","\n "])),t.ɵppd(21,1),(n()(),t.ɵeld(22,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/lost-two-step-device/"],["rel","noopener"],["target","_blank"]],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.ɵeld(27,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[["for","email"]],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,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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,34)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,34).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,34)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,34)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.email=e)&&u);return u},null,null)),t.ɵdid(34,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(35,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(38,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(40,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(41,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(42,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},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","masterPassword"]],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,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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(52,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(53,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(56,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(58,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(59,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"label",[["for","recoveryCode"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control"],["id","recoveryCode"],["name","RecoveryCode"],["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,r=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);"ngModelChange"===l&&(u=!1!==(r.recoveryCode=e)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(70,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(73,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(75,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(76,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(83,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(85,0,null,null,2,"span",[],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,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(90,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,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,94).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(94,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(95,null,["\n ","\n "])),t.ɵppd(96,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,35,0,"");n(l,38,0,"Email",e.email);n(l,41,0,"");n(l,42,0,"false");n(l,53,0,"");n(l,56,0,"MasterPassword",e.masterPassword);n(l,59,0,"");n(l,70,0,"");n(l,73,0,"RecoveryCode",e.recoveryCode);n(l,76,0,"");n(l,94,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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"recoverAccountTwoStep"));n(l,12,0,e);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"recoverAccountTwoStepDesc"));n(l,20,0,u);var r=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l,0),"learnMore"));n(l,23,0,r);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"emailAddress"));n(l,30,0,o),n(l,33,0,t.ɵnov(l,35).required?"":null,t.ɵnov(l,40).ngClassUntouched,t.ɵnov(l,40).ngClassTouched,t.ɵnov(l,40).ngClassPristine,t.ɵnov(l,40).ngClassDirty,t.ɵnov(l,40).ngClassValid,t.ɵnov(l,40).ngClassInvalid,t.ɵnov(l,40).ngClassPending);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"masterPass"));n(l,48,0,i),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);var a=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,65,0,a),n(l,68,0,t.ɵnov(l,70).required?"":null,t.ɵnov(l,75).ngClassUntouched,t.ɵnov(l,75).ngClassTouched,t.ɵnov(l,75).ngClassPristine,t.ɵnov(l,75).ngClassDirty,t.ɵnov(l,75).ngClassValid,t.ɵnov(l,75).ngClassInvalid,t.ɵnov(l,75).ngClassPending),n(l,83,0,t.ɵnov(l,1).loading);var s=t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l,0),"submit"));n(l,86,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"loading")),"");n(l,89,0,d),n(l,93,0,t.ɵnov(l,94).target,t.ɵnov(l,94).href);var c=t.ɵunv(l,95,0,n(l,96,0,t.ɵnov(l,0),"cancel"));n(l,95,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-recover-two-factor",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.RecoverTwoFactorComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService,m.CryptoService,y.AuthService],null,null)],null,null)}l.RenderType_RecoverTwoFactorComponent=C,l.View_RecoverTwoFactorComponent_0=b,l.View_RecoverTwoFactorComponent_Host_0=w;var S=t.ɵccf("app-recover-two-factor",f.RecoverTwoFactorComponent,w,{},{},[]);l.RecoverTwoFactorComponentNgFactory=S},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorRecoveryRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(461),v=e(5),h=e(6),g=e(13),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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"]],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,2,"p",[],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,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,30)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,30).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,30)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,30)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.email=e)&&u);return u},null,null)),t.ɵdid(30,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(31,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(37,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(38,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(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",[],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,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,31,0,"");n(l,34,0,"Email",e.email);n(l,37,0,"");n(l,38,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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"deleteAccount"));n(l,12,0,e);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"deleteRecoverDesc"));n(l,20,0,u);var r=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"emailAddress"));n(l,26,0,r),n(l,29,0,t.ɵnov(l,31).required?"":null,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,45,0,t.ɵnov(l,1).loading);var o=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"));n(l,48,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"");n(l,51,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel"));n(l,57,0,a)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-recover-delete",[],null,null,null,y,m)),t.ɵdid(1,49152,null,0,f.RecoverDeleteComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService],null,null)],null,null)}l.RenderType_RecoverDeleteComponent=m,l.View_RecoverDeleteComponent_0=y,l.View_RecoverDeleteComponent_Host_0=C;var b=t.ɵccf("app-recover-delete",f.RecoverDeleteComponent,C,{},{},[]);l.RecoverDeleteComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.DeleteRecoverRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(10),p=e(4),f=e(462),v=e(5),h=e(6),g=e(13),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,56,"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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,49,"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,46,"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,39,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,36,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(20,114688,null,0,d.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(21,0,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,1,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(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,1),(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,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-danger btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"span",[],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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,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,49).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(49,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(50,null,["\n ","\n "])),t.ɵppd(51,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){n(l,5,0,l.component.formPromise);n(l,20,0,"warning");n(l,49,0,"/")},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);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"deleteAccount"));n(l,12,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"deleteAccountWarning"));n(l,21,0,r),n(l,27,0,e.email);var o=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"deleteRecoverConfirmDesc"));n(l,31,0,o),n(l,38,0,t.ɵnov(l,1).loading);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"deleteAccount"));n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"");n(l,44,0,a),n(l,48,0,t.ɵnov(l,49).target,t.ɵnov(l,49).href);var s=t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"cancel"));n(l,50,0,s)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-recover-delete",[],null,null,null,y,m)),t.ɵdid(1,114688,null,0,f.VerifyRecoverDeleteComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService,c.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VerifyRecoverDeleteComponent=m,l.View_VerifyRecoverDeleteComponent_0=y,l.View_VerifyRecoverDeleteComponent_Host_0=C;var b=t.ɵccf("app-verify-recover-delete",f.VerifyRecoverDeleteComponent,C,{},{},[]);l.VerifyRecoverDeleteComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=n,this.token=l}}();l.VerifyDeleteRecoverRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(541),r=e(463),o=e(19),i=e(8),a=e(71),s=e(10),d=e(542),c=e(464),p=e(465),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,u.View_NavbarComponent_0,u.RenderType_NavbarComponent)),t.ɵdid(1,114688,null,0,r.NavbarComponent,[o.MessagingService,i.PlatformUtilsService,a.TokenService],null,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,s.RouterOutlet,[s.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(6,0,null,null,1,"app-footer",[],null,null,null,d.View_FooterComponent_0,d.RenderType_FooterComponent)),t.ɵdid(7,114688,null,0,c.FooterComponent,[i.PlatformUtilsService],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0),n(l,4,0),n(l,7,0)},null)}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-layout",[],null,null,null,v,f)),t.ɵdid(1,114688,null,0,p.UserLayoutComponent,[],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserLayoutComponent=f,l.View_UserLayoutComponent_0=v,l.View_UserLayoutComponent_Host_0=h;var g=t.ɵccf("app-user-layout",p.UserLayoutComponent,h,{},{},[]);l.UserLayoutComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(808),r=e(543),o=e(5),i=e(3),a=e(6),s=e(13),d=e(10),c=e(4),p=e(7),f=e(809),v=e(259),h=e(44),g=e(57),m=e(62),y=e(9),C=e(20),b=e(18),w=e(40),S=e(811),_=e(260),R=e(134),I=e(8),k=e(22),A=e(544),O=e(232),N=e(64),T=e(466),E=e(71),P=e(23),V=e(19),x=e(98),M=t.ɵcrt({encapsulation:2,styles:[],data:{}});function D(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","card border-warning mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-warning fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"button",[["class","btn btn-block btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateKey()&&t);return t},null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"updateKeyTitle"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"updateEncryptionKeyShortDesc"));n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"updateEncryptionKey"));n(l,15,0,r)})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email",[["class","d-block mb-4"]],null,null,null,u.View_VerifyEmailComponent_0,u.RenderType_VerifyEmailComponent)),t.ɵdid(1,49152,null,0,r.VerifyEmailComponent,[o.ApiService,i.I18nService,a.Angulartics2,s.ToasterService],null,null)],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","card border-warning mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-warning fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"a",[["class","btn btn-block btn-outline-secondary"],["href","https://browser-update.org/update-browser.html"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"updateBrowser"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"updateBrowserDesc"));n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"updateBrowser"));n(l,15,0,r)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","card border-success mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-success text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-star fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,10,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,3,"a",[["class","btn btn-block btn-outline-secondary"],["routerLink","/settings/premium"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,15).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(15,671744,null,0,d.RouterLinkWithHref,[d.Router,d.ActivatedRoute,c.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(16,null,["\n ","\n "])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,15,0,"/settings/premium")},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"goPremium"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"premiumUpgradeUnlockFeatures"));n(l,11,0,u),n(l,14,0,t.ɵnov(l,15).target,t.ɵnov(l,15).href);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"goPremium"));n(l,16,0,r)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function B(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 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 J(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[i.I18nService]),t.ɵqud(402653184,1,{groupingsComponent:0}),t.ɵqud(402653184,2,{ciphersComponent:0}),t.ɵqud(402653184,3,{organizationsComponent:0}),t.ɵqud(402653184,4,{attachmentsModalRef:0}),t.ɵqud(402653184,5,{folderAddEditModalRef:0}),t.ɵqud(402653184,6,{cipherAddEditModalRef:0}),t.ɵqud(402653184,7,{shareModalRef:0}),t.ɵqud(402653184,8,{collectionsModalRef:0}),t.ɵqud(402653184,9,{bulkDeleteModalRef:0}),t.ɵqud(402653184,10,{bulkMoveModalRef:0}),t.ɵqud(402653184,11,{bulkShareModalRef:0}),t.ɵqud(402653184,12,{updateKeyModalRef:0}),(n()(),t.ɵeld(13,0,null,null,122,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,119,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"app-vault-groupings",[],null,[[null,"onAllClicked"],[null,"onFavoritesClicked"],[null,"onCipherTypeClicked"],[null,"onFolderClicked"],[null,"onAddFolder"],[null,"onEditFolder"],[null,"onCollectionClicked"],[null,"onSearchTextChanged"]],function(n,l,e){var t=!0,u=n.component;"onAllClicked"===l&&(t=!1!==u.clearGroupingFilters()&&t);"onFavoritesClicked"===l&&(t=!1!==u.filterFavorites()&&t);"onCipherTypeClicked"===l&&(t=!1!==u.filterCipherType(e)&&t);"onFolderClicked"===l&&(t=!1!==u.filterFolder(e.id)&&t);"onAddFolder"===l&&(t=!1!==u.addFolder()&&t);"onEditFolder"===l&&(t=!1!==u.editFolder(e.id)&&t);"onCollectionClicked"===l&&(t=!1!==u.filterCollection(e.id)&&t);"onSearchTextChanged"===l&&(t=!1!==u.filterSearchText(e)&&t);return t},f.View_GroupingsComponent_0,f.RenderType_GroupingsComponent)),t.ɵdid(20,49152,[[1,4]],0,v.GroupingsComponent,[h.CollectionService,g.FolderService,m.StorageService,y.UserService],null,{onAllClicked:"onAllClicked",onFavoritesClicked:"onFavoritesClicked",onCipherTypeClicked:"onCipherTypeClicked",onFolderClicked:"onFolderClicked",onAddFolder:"onAddFolder",onEditFolder:"onEditFolder",onCollectionClicked:"onCollectionClicked",onSearchTextChanged:"onSearchTextChanged"}),(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,75,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,68,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,9,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵeld(31,0,[["actionSpinner",1]],null,5,"small",[],null,null,null,null,null)),t.ɵdid(32,540672,null,0,C.ApiActionDirective,[t.ElementRef,b.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(35,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.ɵeld(39,0,null,null,54,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,45,"div",[["appListDropdown",""],["class","dropdown mr-2"]],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-sm btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["id","bulkActionsButton"],["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"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,37,"div",[["aria-labelledby","bulkActionsButton"],["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,51).onClick(e)&&u);"click"===l&&(u=!1!==r.bulkMove()&&u);return u},null,null)),t.ɵdid(51,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-fw fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["\n ","\n "])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,58).onClick(e)&&u);"click"===l&&(u=!1!==r.bulkShare()&&u);return u},null,null)),t.ɵdid(58,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-fw fa-share-alt"]],null,null,null,null,null)),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,4,"a",[["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.bulkDelete()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(67,null,["\n ","\n "])),t.ɵppd(68,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll(!0)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,0,"i",[["class","fa fa-fw fa-check-square-o"]],null,null,null,null,null)),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll(!1)&&u);return u},null,null)),t.ɵdid(80,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,0,"i",[["class","fa fa-fw fa-minus-square-o"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["\n ","\n "])),t.ɵppd(84,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,4,"button",[["class","btn btn-outline-primary btn-sm"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.addCipher()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(91,null,["","\n "])),t.ɵppd(92,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,2,"app-vault-ciphers",[],null,[[null,"onCipherClicked"],[null,"onAttachmentsClicked"],[null,"onAddCipher"],[null,"onShareClicked"],[null,"onCollectionsClicked"]],function(n,l,e){var t=!0,u=n.component;"onCipherClicked"===l&&(t=!1!==u.editCipher(e)&&t);"onAttachmentsClicked"===l&&(t=!1!==u.editCipherAttachments(e)&&t);"onAddCipher"===l&&(t=!1!==u.addCipher()&&t);"onShareClicked"===l&&(t=!1!==u.shareCipher(e)&&t);"onCollectionsClicked"===l&&(t=!1!==u.editCipherCollections(e)&&t);return t},S.View_CiphersComponent_0,S.RenderType_CiphersComponent)),t.ɵdid(97,180224,[[2,4]],0,_.CiphersComponent,[R.SearchService,a.Angulartics2,s.ToasterService,i.I18nService,I.PlatformUtilsService,k.CipherService],null,{onCipherClicked:"onCipherClicked",onAddCipher:"onAddCipher",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked"}),(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,32,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(104,16384,null,0,c.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(107,16384,null,0,c.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(110,16384,null,0,c.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(113,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,0,null,null,17,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(118,null,["\n ","\n "])),t.ɵppd(119,1),(n()(),t.ɵeld(120,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/what-is-an-organization/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,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(127,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(129,0,null,null,1,"app-organizations",[],null,null,null,A.View_OrganizationsComponent_0,A.RenderType_OrganizationsComponent)),t.ɵdid(130,114688,[[3,4]],0,O.OrganizationsComponent,[y.UserService,I.PlatformUtilsService,i.I18nService,o.ApiService,a.Angulartics2,s.ToasterService,N.SyncService],{vault:[0,"vault"]},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.ɵand(16777216,[[4,3],["attachments",2]],null,0,null,G)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["folderAddEdit",2]],null,0,null,j)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["cipherAddEdit",2]],null,0,null,q)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[7,3],["share",2]],null,0,null,B)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[8,3],["collections",2]],null,0,null,K)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[9,3],["bulkDeleteTemplate",2]],null,0,null,H)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[10,3],["bulkMoveTemplate",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[11,3],["bulkShareTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[12,3],["updateKeyTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,32,0,e.ciphersComponent.actionPromise),n(l,35,0,t.ɵnov(l,31).loading),n(l,104,0,e.showUpdateKey),n(l,107,0,e.showVerifyEmail),n(l,110,0,e.showBrowserOutdated),n(l,113,0,e.showPremiumCallout);n(l,130,0,!0)},function(n,l){var e=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"myVault"));n(l,29,0,e);var u=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"moveSelected"));n(l,54,0,u);var r=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"shareSelected"));n(l,61,0,r);var o=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l,0),"deleteSelected"));n(l,67,0,o);var i=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"selectAll"));n(l,76,0,i);var a=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l,0),"unselectAll"));n(l,83,0,a);var s=t.ɵunv(l,91,0,n(l,92,0,t.ɵnov(l,0),"addItem"));n(l,91,0,s);var d=t.ɵunv(l,118,0,n(l,119,0,t.ɵnov(l,0),"organizations"));n(l,118,0,d);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l,0),"learnMore")),"");n(l,120,0,c)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault",[],null,null,null,J,M)),t.ɵdid(1,245760,null,0,T.VaultComponent,[N.SyncService,d.ActivatedRoute,d.Router,t.ChangeDetectorRef,i.I18nService,t.ComponentFactoryResolver,E.TokenService,P.CryptoService,V.MessagingService,y.UserService,I.PlatformUtilsService,s.ToasterService,x.BroadcasterService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VaultComponent=M,l.View_VaultComponent_0=J,l.View_VaultComponent_Host_0=Z;var X=t.ɵccf("app-vault",T.VaultComponent,Z,{},{},[]);l.VaultComponentNgFactory=X},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(20),i=e(18),a=e(543),s=e(5),d=e(6),c=e(13),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,25,"div",[["class","card border-warning"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,0,"i",[["class","fa fa-envelope-o fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,[" ","\n "])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,16,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[],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,[["sendBtn",1]],null,9,"button",[["class","btn btn-block 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.send()&&t);return t},null,null)),t.ɵdid(16,540672,null,0,o.ApiActionDirective,[t.ElementRef,i.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"i",[["class","fa fa-spin fa-spinner"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"span",[],null,null,null,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 "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,16,0,l.component.actionPromise)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"verifyEmail"));n(l,6,0,e);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"verifyEmailDesc"));n(l,12,0,u),n(l,15,0,t.ɵnov(l,15).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"loading")),"");n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"sendEmail"));n(l,22,0,o)})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email",[],null,null,null,f,p)),t.ɵdid(1,49152,null,0,a.VerifyEmailComponent,[s.ApiService,r.I18nService,d.Angulartics2,c.ToasterService],null,null)],null,null)}l.RenderType_VerifyEmailComponent=p,l.View_VerifyEmailComponent_0=f,l.View_VerifyEmailComponent_Host_0=v;var h=t.ɵccf("app-verify-email",a.VerifyEmailComponent,v,{},{},[]);l.VerifyEmailComponentNgFactory=h},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(40),o=e(7),i=e(3),a=e(12),s=e(99),d=e(259),c=e(44),p=e(57),f=e(62),v=e(9),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.selectFavorites()&&u);return u},null,null)),t.ɵdid(5,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-star"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["","\n "])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,2,0,l.component.selectedFavorites);n(l,1,0,e)},function(n,l){var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"favorites"));n(l,8,0,e)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"p",[["class","text-muted"]],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"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","text-muted ml-auto show-active"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.editFolder(n.parent.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-pencil fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"editFolder")),"");n(l,0,0,e)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,C)),t.ɵdid(3,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(4,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,4,0,l.parent.context.$implicit.children);n(l,3,0,e,t.ɵnov(l.parent.parent.parent,15))},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,13,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"i",[["class","fa-li fa"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.collapse(n.context.$implicit.node)&&t);return t},null,null)),t.ɵdid(7,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(8,{"fa-caret-right":0,"fa-caret-down":1}),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,12).onClick(e)&&u);"click"===l&&(u=!1!==r.selectFolder(n.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(16,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,b)),t.ɵdid(20,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,t=n(l,2,0,e.selectedFolder&&l.context.$implicit.node.id===e.selectedFolderId);n(l,1,0,t);var u=n(l,8,0,e.isCollapsed(l.context.$implicit.node),!e.isCollapsed(l.context.$implicit.node));n(l,7,0,"fa-li fa",u),n(l,16,0,l.context.$implicit.node.id),n(l,20,0,l.context.$implicit.children.length&&!e.isCollapsed(l.context.$implicit.node))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleCollapse")),"");n(l,6,0,e),n(l,13,0,l.context.$implicit.node.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(2,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,2,0,l.context.$implicit)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function R(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,9,"h3",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵeld(5,0,null,null,5,"a",[["appStopClick",""],["class","text-muted ml-auto"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==r.addFolder()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,0,"i",[["class","fa fa-plus 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.ɵeld(13,0,null,null,7,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(0,[["recursiveFolders",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,_)),t.ɵdid(18,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(19,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,19,0,l.component.nestedFolders);n(l,18,0,e,t.ɵnov(l,15))},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folders"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addFolder")),"");n(l,5,0,u)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,I)),t.ɵdid(3,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(4,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,4,0,l.parent.context.$implicit.children);n(l,3,0,e,t.ɵnov(l.parent.parent.parent,8))},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,3,"i",[["class","fa-li fa"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.collapse(n.context.$implicit.node)&&t);return t},null,null)),t.ɵdid(5,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(6,{"fa-caret-right":0,"fa-caret-down":1}),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCollection(n.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(10,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(11,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,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,t=n(l,2,0,l.context.$implicit.node.id===e.selectedCollectionId);n(l,1,0,t);var u=n(l,6,0,e.isCollapsed(l.context.$implicit.node),!e.isCollapsed(l.context.$implicit.node));n(l,5,0,"fa-li fa",u),n(l,14,0,l.context.$implicit.children.length&&!e.isCollapsed(l.context.$implicit.node))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleCollapse")),"");n(l,4,0,e),n(l,11,0,l.context.$implicit.node.name)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(2,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,2,0,l.context.$implicit)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function T(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,2,"h3",[],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,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(0,[["recursiveCollections",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,N)),t.ɵdid(11,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(12,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,12,0,l.component.nestedCollections);n(l,11,0,e,t.ɵnov(l,8))},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}function E(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,R)),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,T)),t.ɵdid(6,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.showFolders),n(l,6,0,e.showCollections&&e.collections&&e.collections.length)},null)}function P(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,102,"div",[["class","card vault-filters"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1),(n()(),t.ɵeld(6,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/searching-vault/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,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(13,0,null,null,89,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,7,"input",[["appAutofocus",""],["class","form-control"],["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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,16)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,16).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,16)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,16)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.searchText=e)&&u);"input"===l&&(u=!1!==r.searchTextChanged()&&u);return u},null,null)),t.ɵdid(16,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(18,671744,null,0,a.NgModel,[[8,null],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(20,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(21,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,16,"ul",[["class","fa-ul card-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(27,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(28,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll()&&u);return u},null,null)),t.ɵdid(31,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-th"]],null,null,null,null,null)),(n()(),t.ɵted(34,null,["","\n "])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(39,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(42,0,null,null,2,"h3",[],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,49,"ul",[["class","fa-ul card-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(49,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(50,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,53).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Login)&&u);return u},null,null)),t.ɵdid(53,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-globe"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["","\n "])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(61,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(62,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Card)&&u);return u},null,null)),t.ɵdid(65,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-credit-card"]],null,null,null,null,null)),(n()(),t.ɵted(68,null,["","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(73,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(74,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,77).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Identity)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-id-card-o"]],null,null,null,null,null)),(n()(),t.ɵted(80,null,["","\n "])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(85,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(86,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.SecureNote)&&u);return u},null,null)),t.ɵdid(89,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-sticky-note-o"]],null,null,null,null,null)),(n()(),t.ɵted(92,null,["","\n "])),t.ɵppd(93,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(98,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,E)),t.ɵdid(101,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,18,0,e.searchText);n(l,21,0,"");var t=n(l,28,0,e.selectedAll);n(l,27,0,t),n(l,39,0,e.showFavorites);var u=n(l,50,0,e.selectedType===e.cipherType.Login);n(l,49,0,u);var r=n(l,62,0,e.selectedType===e.cipherType.Card);n(l,61,0,r);var o=n(l,74,0,e.selectedType===e.cipherType.Identity);n(l,73,0,o);var i=n(l,86,0,e.selectedType===e.cipherType.SecureNote);n(l,85,0,i),n(l,98,0,!e.loaded),n(l,101,0,e.loaded)},function(n,l){var e=l.component,u=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"filters"));n(l,4,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"learnMore")),"");n(l,6,0,r);var o=t.ɵinlineInterpolate(1,"",e.searchPlaceholder||t.ɵunv(l,15,0,n(l,22,0,t.ɵnov(l,0),"searchVault")),"");n(l,15,0,o,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);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"allItems"));n(l,34,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"types"));n(l,43,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"typeLogin"));n(l,56,0,s);var d=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"typeCard"));n(l,68,0,d);var c=t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l,0),"typeIdentity"));n(l,80,0,c);var p=t.ɵunv(l,92,0,n(l,93,0,t.ɵnov(l,0),"typeSecureNote"));n(l,92,0,p)})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-groupings",[],null,null,null,P,h)),t.ɵdid(1,49152,null,0,d.GroupingsComponent,[c.CollectionService,p.FolderService,f.StorageService,v.UserService],null,null)],null,null)}l.RenderType_GroupingsComponent=h,l.View_GroupingsComponent_0=P,l.View_GroupingsComponent_Host_0=V;var x=t.ɵccf("app-vault-groupings",d.GroupingsComponent,V,{showFolders:"showFolders",showCollections:"showCollections",showFavorites:"showFavorites"},{onAllClicked:"onAllClicked",onFavoritesClicked:"onFavoritesClicked",onCipherTypeClicked:"onCipherTypeClicked",onFolderClicked:"onFolderClicked",onAddFolder:"onAddFolder",onEditFolder:"onEditFolder",onCollectionClicked:"onCollectionClicked",onSearchTextChanged:"onSearchTextChanged"},[]);l.GroupingsComponentNgFactory=x},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.collections.length>0&&this.collections.forEach(function(n){r.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!==o.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),this.messagingService.send(this.editMode?"editedCipher":"addedCipher"),[2,!0];case 4:return l.sent(),[3,5];case 5:return[2,!1]}})})},n.prototype.addUri=function(){this.cipher.type===o.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===o.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.trackByFunction=function(n,l){return n},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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r,o,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]:(o=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:o=u.sent(),u.label=6;case 6:return r=o,[4,this.cryptoService.decryptFromBytes(t,r)];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,r=this;return u(this,function(o){switch(o.label){case 0:if(e=n,null!=n.key||e.downloading||null!=this.reuploadPromises[n.id])return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),this.reuploadPromises[n.id]=Promise.resolve().then(function(){return t(r,void 0,void 0,function(){var t,r,o,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 r=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 o=i,[4,this.cryptoService.decryptFromBytes(r,o)];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 o.sent(),[3,4];case 3:return o.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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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(r){switch(r.label){case 0:return[4,this.cipherService.get(this.cipherId)];case 1:return[4,r.sent().decrypt()];case 2:n=r.sent(),l=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),r.label=3;case 3:return r.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 r.sent(),[3,6];case 5:return r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"domainRules"));n(l,4,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"domainRulesDesc"));n(l,9,0,u),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);var r=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"customEqDomains"));n(l,19,0,r),n(l,28,0,t.ɵnov(l,12).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"loading")),"");n(l,30,0,o);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"save"));n(l,34,0,i);var a=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"globalEqDomains"));n(l,39,0,a),n(l,48,0,t.ɵnov(l,12).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"loading")),"");n(l,50,0,s);var d=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"save"));n(l,54,0,d)})}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(35),r=e(33),o=e(3),i=e(40),a=e(4),s=e(7),d=e(264),c=e(5),p=e(9),f=e(19),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"));n(l,4,0,e);var u=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode"));n(l,8,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,0,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium"));n(l,2,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage"));n(l,22,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[o.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId);var t=n(l,25,0,!e.organizationId);n(l,24,0,t),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers"));n(l,26,0,u)})}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 T=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,N,{},{},[]);l.TwoFactorSetupComponentNgFactory=T},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorAuthenticatorRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorProviderRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorDuoRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorEmailRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorU2fDeleteRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorU2fRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(12),a=e(20),s=e(18),d=e(477),c=e(171),p=e(8),f=e(7),v=e(4),h=e(478),g=e(5),m=e(6),y=e(13),C=e(71),b=e(10),w=e(19),S=e(64),_=e(9),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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"youHavePremiumAccess")),"");n(l,1,0,"info","fa-star",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"alreadyPremiumFromOrg"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"purchasePremium"));n(l,1,0,e)})}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,r=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!==r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFilePremium"));n(l,3,0,e),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_premium_license.json"));n(l,21,0,r),n(l,25,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"");n(l,27,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit"));n(l,31,0,i)})}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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,[o.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);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"addons"));n(l,7,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"additionalStorageGb"));n(l,15,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,25,0,t.ɵnov(l.parent,0),"additionalStorageGbDesc")),"");n(l,18,0,o,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);var i=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,28,0,i);var a=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent,0),"summary"));n(l,36,0,a);var s=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent,0),"premiumMembership")),d=t.ɵunv(l,38,1,n(l,40,0,t.ɵnov(l.parent,1),e.premiumPrice,"$"));n(l,38,0,s,d);var c=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"additionalStorageGb")),p=e.additionalStorage||0,f=t.ɵunv(l,42,2,n(l,44,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),v=t.ɵunv(l,42,3,n(l,45,0,t.ɵnov(l.parent,1),e.additionalStorageTotal,"$"));n(l,42,0,c,p,f,v);var h=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"total"));n(l,51,0,h);var g=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l.parent,1),e.total,"USD $")),m=t.ɵunv(l,53,1,n(l,55,0,t.ɵnov(l.parent,0),"year"));n(l,53,0,g,m);var y=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"paymentChargedAnnually"));n(l,58,0,y);var C=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"paymentInformation"));n(l,62,0,C),n(l,68,0,t.ɵnov(l,0).loading);var b=t.ɵinlineInterpolate(1,"",t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l.parent,0),"loading")),"");n(l,70,0,b);var w=t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"submit"));n(l,74,0,w)})}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,v.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,55,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(14,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(16,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(20,0,null,0,37,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["\n ","\n "])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["\n ","\n "])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["\n ","\n "])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(59,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(60,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(61,{"mb-0":0}),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,2),t.ɵppd(64,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(67,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(71,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(74,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.canAccessPremium);n(l,14,0,"success");var t=n(l,61,0,!e.selfHosted);n(l,60,0,"text-lg",t),n(l,67,0,e.selfHosted),n(l,71,0,e.selfHosted),n(l,74,0,!e.selfHosted)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"goPremium"));n(l,6,0,u);var r=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"premiumUpgradeUnlockFeatures"));n(l,17,0,r);var o=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"premiumSignUpStorage"));n(l,25,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"premiumSignUpTwoStep"));n(l,31,0,i);var a=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"premiumSignUpReports"));n(l,37,0,a);var s=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpTotp"));n(l,43,0,s);var d=t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpSupport"));n(l,49,0,d);var c=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"premiumSignUpFuture"));n(l,55,0,c);var p=t.ɵunv(l,62,0,n(l,64,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,1),e.premiumPrice,"$"))));n(l,62,0,p)})}function T(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,o.I18nService,m.Angulartics2,y.ToasterService,p.PlatformUtilsService,C.TokenService,b.Router,w.MessagingService,S.SyncService,_.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PremiumComponent=R,l.View_PremiumComponent_0=N,l.View_PremiumComponent_Host_0=T;var E=t.ɵccf("app-premium",h.PremiumComponent,T,{},{},[]);l.PremiumComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(20),a=e(18),s=e(4),d=e(566),c=e(479),p=e(5),f=e(6),v=e(13),h=e(567),g=e(480),m=e(568),y=e(481),C=e(7),b=e(483),w=e(71),S=e(8),_=e(10),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),"");n(l,1,0,"warning",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled"));n(l,3,0,e)})}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,r.CalloutComponent,[o.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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"");n(l,1,0,"warning",u),n(l,9,0,e.reinstatePromise)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"));n(l,5,0,e),n(l,8,0,t.ɵnov(l,8).loading);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription"));n(l,15,0,r)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate"));n(l,1,0,u)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires"));n(l,1,0,e)})}function E(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,T)),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"expiration"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"pendingCancellation"));n(l,1,0,e)})}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){var e=l.context.$implicit.name,u=l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",r=t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,3,0,e,u,r);var o=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,"$")),i=t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval));n(l,7,0,o,i)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details"));n(l,3,0,e)})}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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"status"));n(l,7,0,u),n(l,13,0,e.subscription&&e.subscription.status||"-");var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"nextCharge"));n(l,20,0,r);var o=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,"$")):"-";n(l,24,0,o)})}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,o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense"));n(l,5,0,e)})}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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"));n(l,5,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription"));n(l,9,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense"));n(l,1,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription"));n(l,7,0,u)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage"));n(l,7,0,u)})}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,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod"));n(l,1,0,e)})}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,t=n(l,4,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal);n(l,3,0,"fa fa-fw",t)},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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod"));n(l,1,0,u)})}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,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noInvoices"));n(l,1,0,e)})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"paid"));n(l,3,0,e)})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-circle text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"unpaid"));n(l,3,0,e)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"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,11,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,3,"a",[["class","mr-2"],["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"a",[["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(15,null,["\n ",""])),t.ɵppd(16,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),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,Y)),t.ɵdid(29,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){n(l,26,0,l.context.$implicit.paid),n(l,29,0,!l.context.$implicit.paid)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.date,"mediumDate"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",l.context.$implicit.pdfUrl,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"downloadInvoice")),"");n(l,8,0,u,r);var o=t.ɵinlineInterpolate(1,"",l.context.$implicit.url,""),i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,1,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,0),"viewInvoice")),"");n(l,13,0,o,i);var a=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoiceNumber",l.context.$implicit.number));n(l,15,0,a);var s=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,20,0,s)})}function Z(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,J)),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.invoices)},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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noTransactions"));n(l,1,0,e)})}function Q(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeNoun"));n(l,1,0,e)})}function nn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeRefund"));n(l,1,0,e)})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(1,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2})],function(n,l){var e=l.component,t=n(l,2,0,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.Card,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.BankAccount,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.PayPal);n(l,1,0,"fa fa-fw",t)},null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,27,"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,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),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,nn)),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,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(19,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(23,{"text-strike":0}),t.ɵppd(24,1),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,l.context.$implicit.type===e.transactionType.Charge),n(l,12,0,l.context.$implicit.type===e.transactionType.Refund),n(l,18,0,l.context.$implicit.type===e.transactionType.Charge||l.context.$implicit.type===e.transactionType.Refund);var t=n(l,23,0,l.context.$implicit.refunded);n(l,22,0,t)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"));n(l,3,0,e),n(l,19,0,l.context.$implicit.details);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,24,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"");n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,25,0,r)})}function tn(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,en)),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.transactions)},null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,70,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,Z)),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,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["",""])),t.ɵppd(59,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(62,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,tn)),t.ɵdid(65,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(68,null,["* ",""])),t.ɵppd(69,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);var t=n(l,23,0,e.storageProgressWidth+"%");n(l,22,0,t),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.invoices||!e.invoices.length),n(l,55,0,e.invoices&&e.invoices.length),n(l,62,0,!e.transactions||!e.transactions.length),n(l,65,0,e.transactions&&e.transactions.length)},function(n,l){var e=l.component,u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent,0),"storage"));n(l,12,0,u);var r=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,16,0,r),n(l,21,0,e.storagePercentage);var o=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100));n(l,24,0,o);var i=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"paymentMethod"));n(l,32,0,i);var a=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"invoices"));n(l,48,0,a);var s=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"transactions"));n(l,58,0,s);var d=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN"));n(l,68,0,d)})}function rn(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,E)),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,un)),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){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"subscription"));n(l,11,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"premiumMembership"));n(l,15,0,u)})}function on(n){return t.ɵvid(0,[t.ɵpid(0,C.I18nPipe,[o.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,rn)),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,7,0,e)})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-billing",[],null,null,null,on,R)),t.ɵdid(1,114688,null,0,b.UserBillingComponent,[w.TokenService,p.ApiService,S.PlatformUtilsService,o.I18nService,f.Angulartics2,v.ToasterService,_.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserBillingComponent=R,l.View_UserBillingComponent_0=on,l.View_UserBillingComponent_Host_0=an;var sn=t.ɵccf("app-user-billing",b.UserBillingComponent,an,{},{},[]);l.UserBillingComponentNgFactory=sn},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),r=e(20),o=e(18),i=e(4),a=e(477),s=e(171),d=e(3),c=e(8),p=e(7),f=e(484),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=e(64),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFileOrg"));n(l,3,0,e),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_organization_license.json"));n(l,21,0,r),n(l,25,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"");n(l,27,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit"));n(l,31,0,i)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"businessName"));n(l,5,0,e),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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFree"));n(l,11,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFree","1"));n(l,14,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"limitedUsers","2"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"limitedCollections","2"));n(l,22,0,o);var i=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"freeForever"));n(l,26,0,i)})}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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFamilies"));n(l,11,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFamilies"));n(l,14,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"addShareLimitedUsers","5"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"createUnlimitedCollections"));n(l,22,0,o);var i=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,26,0,i);var a=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,0),"onPremHostingOptional"));n(l,30,0,a);var s=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l.parent.parent,0),"priorityCustomerSupport"));n(l,34,0,s);var d=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent.parent,0),"xDayFreeTrial","7"));n(l,38,0,d);var c=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,1),1,"$")),p=t.ɵunv(l,42,1,n(l,44,0,t.ɵnov(l.parent.parent,0),"month")),f=t.ɵunv(l,42,2,n(l,45,0,t.ɵnov(l.parent.parent,0),"includesXUsers",5));n(l,42,0,c,p,f)})}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,r=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!==(r.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_be,[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_be]),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"userSeats"));n(l,11,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,23,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),"");n(l,14,0,r,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);var o=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsHowManyDesc"));n(l,26,0,o)})}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,r=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!==(r.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_be,[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_be]),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,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"additionalUserSeats"));n(l,5,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),"");n(l,8,0,r,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);var o=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,"$"))));n(l,18,0,o)})}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,r=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!==(r.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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess"));n(l,12,0,e);var u=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"))));n(l,17,0,u)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"basePrice")),r=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].basePrice,"$")),o=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),i=t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),e.baseTotal(!0),"$")),a=t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,1,0,u,r,o,i,a)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"additionalUsers"));n(l,1,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"users"));n(l,1,0,e)})}function E(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,T)),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,u=e.additionalSeats||0,r=t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")),o=t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),i=t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent,1),e.seatTotal(!0),"$")),a=t.ɵunv(l,7,4,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,7,0,u,r,o,i,a)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess")),u=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),r=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),o=t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),40,"$")),i=t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,1,0,e,u,r,o,i)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"basePrice")),r=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,1),e.baseTotal(!1),"$")),o=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"month"));n(l,1,0,u,r,o)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"additionalUsers"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"users"));n(l,1,0,e)})}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,u=e.additionalSeats||0,r=t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,1),e.plans[e.plan].monthlySeatPrice,"$")),o=t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,1),e.seatTotal(!1),"$")),i=t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent.parent,0),"month"));n(l,7,0,u,r,o,i)})}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,r=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!==(r.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_j,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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"monthly"));n(l,11,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"additionalStorageGb")),o=e.additionalStorage||0,i=t.ɵunv(l,20,2,n(l,22,0,t.ɵnov(l.parent.parent.parent,1),e.storageGb.monthlyPrice,"$")),a=t.ɵunv(l,20,3,n(l,23,0,t.ɵnov(l.parent.parent.parent,1),e.additionalStorageTotal(!1),"$")),s=t.ɵunv(l,20,4,n(l,24,0,t.ɵnov(l.parent.parent.parent,0),"month"));n(l,20,0,r,o,i,a,s)})}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,r=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!==(r.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_be,[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_be]),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,r=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!==(r.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_j,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,E)),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],null,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)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addons"));n(l,6,0,u);var r=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb"));n(l,17,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"additionalStorageGbDesc")),"");n(l,20,0,o,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);var i=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,30,0,i);var a=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l.parent.parent,0),"summary"));n(l,44,0,a),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);var s=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"annually"));n(l,58,0,s);var d=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb")),c=e.additionalStorage||0,p=t.ɵunv(l,67,2,n(l,69,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),f=t.ɵunv(l,67,3,n(l,70,0,t.ɵnov(l.parent.parent,0),"monthAbbr")),v=t.ɵunv(l,67,4,n(l,71,0,t.ɵnov(l.parent.parent,1),e.additionalStorageTotal(!0),"$")),h=t.ɵunv(l,67,5,n(l,72,0,t.ɵnov(l.parent.parent,0),"year"));n(l,67,0,d,c,p,f,v,h);var g=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"total"));n(l,87,0,g);var m=t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l.parent.parent,1),e.total,"USD $")),y=t.ɵunv(l,89,1,n(l,91,0,t.ɵnov(l.parent.parent,0),e.interval));n(l,89,0,m,y);var C=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,94,0,C);var b=t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l.parent.parent,0),"paymentInformation"));n(l,99,0,b)})}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,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.ownedBusiness=e)&&u);"change"===l&&(u=!1!==r.changedOwnedBusiness()&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"label",[["class","form-check-label"],["for","ownedBusiness"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(60,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(67,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(70,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,46,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,6,"input",[["class","form-check-input"],["id","planTeams"],["name","PlanType"],["type","radio"],["value","teams"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var t=n(l,190,0,e.plans[e.plan].noPayment);n(l,189,0,t)},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);var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"generalInformation"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"organizationName"));n(l,15,0,u),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);var r=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"billingEmail"));n(l,31,0,r),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);var o=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"accountOwnedBusiness"));n(l,55,0,o);var i=t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent,0),"chooseYourPlan"));n(l,63,0,i),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);var a=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent,0),"planNameTeams"));n(l,83,0,a);var s=t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l.parent,0),"planDescTeams"));n(l,86,0,s);var d=t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"));n(l,90,0,d);var c=t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"));n(l,94,0,c);var p=t.ɵunv(l,98,0,n(l,99,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,98,0,p);var f=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"));n(l,102,0,f);var v=t.ɵunv(l,106,0,n(l,107,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"));n(l,106,0,v);var h=t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,1),5,"$")),g=t.ɵunv(l,110,1,n(l,112,0,t.ɵnov(l.parent,0),"month")),m=t.ɵunv(l,110,2,n(l,113,0,t.ɵnov(l.parent,0),"includesXUsers",5)),y=t.ɵunv(l,110,3,n(l,114,0,t.ɵnov(l.parent,0),"additionalUsers")).toLowerCase(),C=t.ɵunv(l,110,4,n(l,115,0,t.ɵnov(l.parent,1),2,"$")),b=t.ɵunv(l,110,5,n(l,116,0,t.ɵnov(l.parent,0),"month"));n(l,110,0,h,g,m,y,C,b),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);var w=t.ɵunv(l,131,0,n(l,132,0,t.ɵnov(l.parent,0),"planNameEnterprise"));n(l,131,0,w);var S=t.ɵunv(l,134,0,n(l,135,0,t.ɵnov(l.parent,0),"planDescEnterprise"));n(l,134,0,S);var _=t.ɵunv(l,138,0,n(l,139,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"));n(l,138,0,_);var R=t.ɵunv(l,142,0,n(l,143,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"));n(l,142,0,R);var I=t.ɵunv(l,146,0,n(l,147,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,146,0,I);var k=t.ɵunv(l,150,0,n(l,151,0,t.ɵnov(l.parent,0),"controlAccessWithGroups"));n(l,150,0,k);var A=t.ɵunv(l,154,0,n(l,155,0,t.ɵnov(l.parent,0),"trackAuditLogs"));n(l,154,0,A);var O=t.ɵunv(l,158,0,n(l,159,0,t.ɵnov(l.parent,0),"syncUsersFromDirectory"));n(l,158,0,O);var N=t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l.parent,0),"onPremHostingOptional"));n(l,162,0,N);var T=t.ɵunv(l,166,0,n(l,167,0,t.ɵnov(l.parent,0),"usersGetPremium"));n(l,166,0,T);var E=t.ɵunv(l,170,0,n(l,171,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"));n(l,170,0,E);var P=t.ɵunv(l,174,0,n(l,175,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"));n(l,174,0,P);var V=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,"$")))),x=t.ɵunv(l,178,1,n(l,181,0,t.ɵnov(l.parent,0),"month"));n(l,178,0,V,x),n(l,192,0,t.ɵnov(l,0).loading);var M=t.ɵinlineInterpolate(1,"",t.ɵunv(l,194,0,n(l,195,0,t.ɵnov(l.parent,0),"loading")),"");n(l,194,0,M);var D=t.ɵunv(l,198,0,n(l,199,0,t.ɵnov(l.parent,0),"submit"));n(l,198,0,D)})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[d.I18nService]),t.ɵpid(0,i.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(18,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"newOrganization"));n(l,6,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"newOrganizationDesc"));n(l,11,0,u)})}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(40),r=e(7),o=e(3),i=e(4),a=e(10),s=e(485),d=e(9),c=e(19),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"premium"));n(l,2,0,e)})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"span",[["class","badge badge-success"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,3,0,t.ɵnov(l.parent,1),t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"free"))));n(l,1,0,e)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[o.I18nService]),t.ɵpid(0,i.UpperCasePipe,[]),(n()(),t.ɵeld(2,0,null,null,117,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,114,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,105,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,32,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"a",[["class","list-group-item"],["routerLink","generator"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,17).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(17,671744,[[2,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(18,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(21,null,["\n ","\n "])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,25).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(25,671744,[[4,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(26,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,33).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(33,671744,[[6,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(34,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,68,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["\n ","\n "])),t.ɵppd(46,1),(n()(),t.ɵeld(47,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(50,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,55,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,57).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(57,671744,[[8,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(58,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(65,671744,[[10,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(66,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(69,null,["\n ","\n "])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(73,671744,[[12,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(74,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,81).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(81,671744,[[14,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(82,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(89,671744,[[16,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(90,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,15,{links:1}),t.ɵqud(603979776,16,{linksWithHrefs:1}),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,12,"a",[["class","list-group-item d-flex"],["routerLink","breach-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,97).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(97,671744,[[18,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(98,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,17,{links:1}),t.ɵqud(603979776,18,{linksWithHrefs:1}),(n()(),t.ɵted(101,null,["\n ","\n "])),t.ɵppd(102,1),(n()(),t.ɵeld(103,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(106,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(113,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(116,212992,null,0,a.RouterOutlet,[a.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"generator");n(l,18,0,"active");n(l,25,0,"import");n(l,26,0,"active");n(l,33,0,"export");n(l,34,0,"active"),n(l,50,0,!e.canAccessPremium);n(l,57,0,"exposed-passwords-report");n(l,58,0,"active");n(l,65,0,"reused-passwords-report");n(l,66,0,"active");n(l,73,0,"weak-passwords-report");n(l,74,0,"active");n(l,81,0,"unsecured-websites-report");n(l,82,0,"active");n(l,89,0,"inactive-two-factor-report");n(l,90,0,"active");n(l,97,0,"breach-report");n(l,98,0,"active"),n(l,106,0,!e.canAccessPremium),n(l,116,0)},function(n,l){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"tools"));n(l,11,0,e),n(l,16,0,t.ɵnov(l,17).target,t.ɵnov(l,17).href);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"passwordGenerator"));n(l,21,0,u),n(l,24,0,t.ɵnov(l,25).target,t.ɵnov(l,25).href);var r=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"importData"));n(l,29,0,r),n(l,32,0,t.ɵnov(l,33).target,t.ɵnov(l,33).href);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"exportVault"));n(l,37,0,o);var i=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"reports"));n(l,45,0,i),n(l,56,0,t.ɵnov(l,57).target,t.ɵnov(l,57).href);var a=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,61,0,a),n(l,64,0,t.ɵnov(l,65).target,t.ɵnov(l,65).href);var s=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,69,0,s),n(l,72,0,t.ɵnov(l,73).target,t.ɵnov(l,73).href);var d=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,77,0,d),n(l,80,0,t.ɵnov(l,81).target,t.ɵnov(l,81).href);var c=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,85,0,c),n(l,88,0,t.ɵnov(l,89).target,t.ɵnov(l,89).href);var p=t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"inactive2faReport"));n(l,93,0,p),n(l,96,0,t.ɵnov(l,97).target,t.ɵnov(l,97).href);var f=t.ɵunv(l,101,0,n(l,102,0,t.ɵnov(l,0),"dataBreachReport"));n(l,101,0,f)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,h,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=h,l.View_ToolsComponent_Host_0=g;var m=t.ɵccf("app-tools",s.ToolsComponent,g,{},{},[]);l.ToolsComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(4),o=e(35),i=e(33),a=e(3),s=e(7),d=e(20),c=e(18),p=e(265),f=e(6),v=e(13),h=e(236),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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_s,[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_s,[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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function 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 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 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 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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2GpOMTg"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the F-Secure KEY desktop application and navigate to "Settings" → "Export Passwords". Select the\n "Export" button, enter your master password, and save the FSK file.\n ']))],null,null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Kaspersky Password Manager desktop application and navigate to "Settings" → "Import/Export". Locate\n the "Export to text file" section and select the "Export" button to save the TXT file.\n ']))],null,null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the RememBear desktop application and navigate to "Settings" → "Account" → "Export".\n Enter your master password and select the "Export Anyway" button to save the CSV file.\n ']))],null,null)}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,119,"app-callout",[["type","info"]],null,null,null,o.View_CalloutComponent_0,o.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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(31,16384,null,0,r.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(34,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,un)),t.ɵdid(112,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,rn)),t.ɵdid(115,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,on)),t.ɵdid(118,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format),n(l,112,0,"fsecurefsk"===e.format),n(l,115,0,"kasperskytxt"===e.format),n(l,118,0,"remembearcsv"===e.format)},null)}function sn(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,r=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!==r.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,r=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!==(r.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,r.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,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.ɵand(16777216,null,null,1,null,an)),t.ɵdid(44,16384,null,0,r.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,r=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!==(r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"));n(l,4,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"));n(l,21,0,u),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);var r=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"));n(l,53,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"));n(l,64,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,i);var a=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData"));n(l,81,0,a)})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,sn,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=sn,l.View_ImportComponent_Host_0=dn;var cn=t.ɵccf("app-import",p.ImportComponent,dn,{},{},[]);l.ImportComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(266),f=e(23),v=e(8),h=e(237),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,r=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(r.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,o.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.SelectControlValueAccessor]),t.ɵdid(34,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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(66,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending);var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"));n(l,10,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"));n(l,15,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"));n(l,20,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"));n(l,28,0,o),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);var i=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"));n(l,56,0,i),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"");n(l,73,0,a);var s=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault"));n(l,77,0,s)})}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,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-ciphers",[],null,null,null,U,w)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService,b.ApiService],null,null)],null,null)}l.RenderType_CiphersComponent=w,l.View_CiphersComponent_0=U,l.View_CiphersComponent_Host_0=F;var L=t.ɵccf("app-org-vault-ciphers",v.CiphersComponent,F,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked",onEventsClicked:"onEventsClicked"},[]);l.CiphersComponentNgFactory=L},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.User_LoggedIn=1e3]="User_LoggedIn",n[n.User_ChangedPassword=1001]="User_ChangedPassword",n[n.User_Updated2fa=1002]="User_Updated2fa",n[n.User_Disabled2fa=1003]="User_Disabled2fa",n[n.User_Recovered2fa=1004]="User_Recovered2fa",n[n.User_FailedLogIn=1005]="User_FailedLogIn",n[n.User_FailedLogIn2fa=1006]="User_FailedLogIn2fa",n[n.Cipher_Created=1100]="Cipher_Created",n[n.Cipher_Updated=1101]="Cipher_Updated",n[n.Cipher_Deleted=1102]="Cipher_Deleted",n[n.Cipher_AttachmentCreated=1103]="Cipher_AttachmentCreated",n[n.Cipher_AttachmentDeleted=1104]="Cipher_AttachmentDeleted",n[n.Cipher_Shared=1105]="Cipher_Shared",n[n.Cipher_UpdatedCollections=1106]="Cipher_UpdatedCollections",n[n.Collection_Created=1300]="Collection_Created",n[n.Collection_Updated=1301]="Collection_Updated",n[n.Collection_Deleted=1302]="Collection_Deleted",n[n.Group_Created=1400]="Group_Created",n[n.Group_Updated=1401]="Group_Updated",n[n.Group_Deleted=1402]="Group_Deleted",n[n.OrganizationUser_Invited=1500]="OrganizationUser_Invited",n[n.OrganizationUser_Confirmed=1501]="OrganizationUser_Confirmed",n[n.OrganizationUser_Updated=1502]="OrganizationUser_Updated",n[n.OrganizationUser_Removed=1503]="OrganizationUser_Removed",n[n.OrganizationUser_UpdatedGroups=1504]="OrganizationUser_UpdatedGroups",n[n.Organization_Updated=1600]="Organization_Updated",n[n.Organization_PurgedVault=1601]="Organization_PurgedVault"}(l.EventType||(l.EventType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(40),r=e(7),o=e(3),i=e(10),a=e(4),s=e(494),d=e(9),c=e(19),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"upgrade"));n(l,2,0,e)})}function v(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,95,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,92,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,83,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,24,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,17,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,54,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["\n ","\n "])),t.ɵppd(37,1),(n()(),t.ɵeld(38,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(41,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,41,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,48).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(48,671744,[[6,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(49,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,[[8,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(57,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(60,null,["\n ","\n "])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,64).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(64,671744,[[10,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(65,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(68,null,["\n ","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,72).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(72,671744,[[12,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(73,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(80,671744,[[14,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(81,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(84,null,["\n ","\n "])),t.ɵppd(85,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(93,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,41,0,!e.accessReports);n(l,48,0,"exposed-passwords-report");n(l,49,0,"active");n(l,56,0,"reused-passwords-report");n(l,57,0,"active");n(l,64,0,"weak-passwords-report");n(l,65,0,"active");n(l,72,0,"unsecured-websites-report");n(l,73,0,"active");n(l,80,0,"inactive-two-factor-report");n(l,81,0,"active"),n(l,93,0)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"tools"));n(l,10,0,e),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"importData"));n(l,20,0,u),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"exportVault"));n(l,28,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"reports"));n(l,36,0,o),n(l,47,0,t.ɵnov(l,48).target,t.ɵnov(l,48).href);var i=t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,52,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,60,0,a),n(l,63,0,t.ɵnov(l,64).target,t.ɵnov(l,64).href);var s=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,68,0,s),n(l,71,0,t.ɵnov(l,72).target,t.ɵnov(l,72).href);var d=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,76,0,d),n(l,79,0,t.ɵnov(l,80).target,t.ɵnov(l,80).href);var c=t.ɵunv(l,84,0,n(l,85,0,t.ɵnov(l,0),"inactive2faReport"));n(l,84,0,c)})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[i.ActivatedRoute,d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=v,l.View_ToolsComponent_Host_0=h;var g=t.ɵccf("app-org-tools",s.ToolsComponent,h,{},{},[]);l.ToolsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(4),o=e(35),i=e(33),a=e(3),s=e(7),d=e(20),c=e(18),p=e(495),f=e(6),v=e(13),h=e(236),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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_s,[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_s,[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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function 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 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 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 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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2GpOMTg"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the F-Secure KEY desktop application and navigate to "Settings" → "Export Passwords". Select the\n "Export" button, enter your master password, and save the FSK file.\n ']))],null,null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Kaspersky Password Manager desktop application and navigate to "Settings" → "Import/Export". Locate\n the "Export to text file" section and select the "Export" button to save the TXT file.\n ']))],null,null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the RememBear desktop application and navigate to "Settings" → "Account" → "Export".\n Enter your master password and select the "Export Anyway" button to save the CSV file.\n ']))],null,null)}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,119,"app-callout",[["type","info"]],null,null,null,o.View_CalloutComponent_0,o.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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(31,16384,null,0,r.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(34,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,un)),t.ɵdid(112,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,rn)),t.ɵdid(115,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,on)),t.ɵdid(118,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format),n(l,112,0,"fsecurefsk"===e.format),n(l,115,0,"kasperskytxt"===e.format),n(l,118,0,"remembearcsv"===e.format)},null)}function sn(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,r=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!==r.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,r=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!==(r.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,r.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,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.ɵand(16777216,null,null,1,null,an)),t.ɵdid(44,16384,null,0,r.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,r=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!==(r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"));n(l,4,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"));n(l,21,0,u),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);var r=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"));n(l,53,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"));n(l,64,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,i);var a=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData"));n(l,81,0,a)})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,sn,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=sn,l.View_ImportComponent_Host_0=dn;var cn=t.ɵccf("app-org-import",p.ImportComponent,dn,{},{},[]);l.ImportComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(496),f=e(23),v=e(8),h=e(237),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,r=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(r.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,o.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.SelectControlValueAccessor]),t.ɵdid(34,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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(66,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending);var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"));n(l,10,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"));n(l,15,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"));n(l,20,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"));n(l,28,0,o),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);var i=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"));n(l,56,0,i),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"");n(l,73,0,a);var s=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault"));n(l,77,0,s)})}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,r.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(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(497),h=e(22),g=e(107),m=e(19),y=e(9),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noExposedPasswords"));n(l,3,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,34,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,6,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,3,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),t.ɵppd(32,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle);var r=t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"exposedXTimes",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,1),e.exposedPasswordMap.get(l.context.$implicit.id)))));n(l,30,0,r)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(14,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.load()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,25,0,l.component.hasLoaded)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,6,0,u);var r=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"exposedPasswordsReportDesc"));n(l,11,0,r),n(l,14,0,e.loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"loading")),"");n(l,16,0,o);var i=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"checkExposedPasswords"));n(l,20,0,i)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-exposed-passwords-report",[],null,null,null,O,b)),t.ɵdid(1,114688,null,0,v.ExposedPasswordsReportComponent,[h.CipherService,g.AuditService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExposedPasswordsReportComponent=b,l.View_ExposedPasswordsReportComponent_0=O,l.View_ExposedPasswordsReportComponent_Host_0=N;var T=t.ɵccf("app-exposed-passwords-report",v.ExposedPasswordsReportComponent,N,{},{},[]);l.ExposedPasswordsReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(498),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noInactive2fa"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","badge badge-primary"],["rel","noopener"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",""])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",e.cipherDocs.get(l.parent.context.$implicit.id),""));var u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"instructions"));n(l,1,0,u)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(30,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments),n(l,30,0,e.cipherDocs.has(l.context.$implicit.id))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,e),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"inactive2faFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"inactive2faFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function T(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"inactive2faReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"inactive2faReportDesc"));n(l,14,0,u)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-inactive-two-factor-report",[],null,null,null,T,C)),t.ɵdid(1,114688,null,0,v.InactiveTwoFactorReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_InactiveTwoFactorReportComponent=C,l.View_InactiveTwoFactorReportComponent_0=T,l.View_InactiveTwoFactorReportComponent_Host_0=E;var P=t.ɵccf("app-inactive-two-factor-report",v.InactiveTwoFactorReportComponent,E,{},{},[]);l.InactiveTwoFactorReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(499),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noReusedPasswords"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle);var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"reusedXTimes",e.passwordUseMap.get(l.context.$implicit.login.password)));n(l,30,0,r)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"reusedPasswordsReportDesc"));n(l,14,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-reused-passwords-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.ReusedPasswordsReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ReusedPasswordsReportComponent=C,l.View_ReusedPasswordsReportComponent_0=N,l.View_ReusedPasswordsReportComponent_Host_0=T;var E=t.ɵccf("app-reused-passwords-report",v.ReusedPasswordsReportComponent,T,{},{},[]);l.ReusedPasswordsReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(500),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUnsecuredWebsites"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,e),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"unsecuredWebsitesReportDesc"));n(l,14,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-unsecured-websites-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.UnsecuredWebsitesReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UnsecuredWebsitesReportComponent=C,l.View_UnsecuredWebsitesReportComponent_0=N,l.View_UnsecuredWebsitesReportComponent_Host_0=T;var E=t.ɵccf("app-unsecured-websites-report",v.UnsecuredWebsitesReportComponent,T,{},{},[]);l.UnsecuredWebsitesReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(501),h=e(22),g=e(63),m=e(19),y=e(9),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noWeakPasswords"));n(l,3,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,29,0,t.ɵinlineInterpolate(1,"badge badge-",e.passwordStrengthMap.get(l.context.$implicit.id)[1],""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),e.passwordStrengthMap.get(l.context.$implicit.id)[0]));n(l,30,0,r)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function T(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"weakPasswordsReportDesc"));n(l,14,0,u)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-weak-passwords-report",[],null,null,null,T,b)),t.ɵdid(1,114688,null,0,v.WeakPasswordsReportComponent,[h.CipherService,g.PasswordGenerationService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_WeakPasswordsReportComponent=b,l.View_WeakPasswordsReportComponent_0=T,l.View_WeakPasswordsReportComponent_Host_0=E;var P=t.ɵccf("app-weak-passwords-report",v.WeakPasswordsReportComponent,E,{},{},[]);l.WeakPasswordsReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(502),s=e(9),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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"people"));n(l,5,0,e)})}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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"groups"));n(l,5,0,e)})}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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"eventLogs"));n(l,5,0,e)})}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,r.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,r.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,r.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,r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"manage"));n(l,3,0,e),n(l,11,0,t.ɵnov(l,12).target,t.ɵnov(l,12).href);var u=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"collections"));n(l,16,0,u)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.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,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,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(40),r=e(4),o=e(7),i=e(3),a=e(272),s=e(12),d=e(503),c=e(5),p=e(10),f=e(44),v=e(6),h=e(13),g=e(8),m=e(9),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==r.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);var e=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,24,0,e);var u=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete"));n(l,31,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){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,o.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,r=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!==(r.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,r.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,r.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);var u=!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.collections,e.searchText,"name","id"));n(l,39,0,u)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"collections"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),"");n(l,18,0,r,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);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newCollection"));n(l,30,0,o)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage-collections",[],null,null,null,k,y)),t.ɵdid(1,114688,null,0,d.CollectionsComponent,[c.ApiService,p.ActivatedRoute,f.CollectionService,t.ComponentFactoryResolver,v.Angulartics2,h.ToasterService,i.I18nService,g.PlatformUtilsService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=y,l.View_CollectionsComponent_0=k,l.View_CollectionsComponent_Host_0=A;var O=t.ɵccf("app-org-manage-collections",d.CollectionsComponent,A,{},{},[]);l.CollectionsComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(20),o=e(18),i=e(7),a=e(3),s=e(12),d=e(505),c=e(5),p=e(10),f=e(240),v=e(13),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList"));n(l,1,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"));n(l,3,0,e),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"));n(l,7,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"));n(l,13,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"user"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"event"));n(l,22,0,o)})}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,r.ApiActionDirective,[t.ElementRef,o.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore"));n(l,7,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.events||!e.events.length),n(l,6,0,e.events&&e.events.length),n(l,9,0,e.continuationToken)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,40,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.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,r=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!==(r.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,r.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(44,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(45,{"fa-spin":0}),(n()(),t.ɵted(46,null,["\n ","\n "])),t.ɵppd(47,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(52,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(55,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,19,0,e.start),n(l,34,0,e.end),n(l,41,0,e.refreshPromise);var u=n(l,45,0,e.loaded&&t.ɵnov(l,40).loading);n(l,44,0,"fa fa-refresh fa-fw",u),n(l,52,0,!e.loaded),n(l,55,0,e.loaded)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l,0),"eventLogs"));n(l,5,0,u);var r=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"startDate"));n(l,13,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,22,0,t.ɵnov(l,0),"startDate")),"");n(l,16,0,o,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);var i=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"endDate"));n(l,28,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,37,0,t.ɵnov(l,0),"endDate")),"");n(l,31,0,a,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);var s=t.ɵunv(l,46,0,n(l,47,0,t.ɵnov(l,0),"refresh"));n(l,46,0,s)})}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(40),r=e(4),o=e(7),i=e(3),a=e(272),s=e(12),d=e(506),c=e(5),p=e(10),f=e(6),v=e(13),h=e(8),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==r.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);var e=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,24,0,e);var u=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete"));n(l,31,0,u)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,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.parent.context.ngIf)},null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(3,16384,null,0,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){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,o.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,r=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!==(r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,S)),t.ɵdid(39,16384,null,0,r.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);var u=!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.groups,e.searchText,"name","id"));n(l,39,0,u)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"groups"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),"");n(l,18,0,r,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);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newGroup"));n(l,30,0,o)})}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(35),r=e(33),o=e(3),i=e(40),a=e(169),s=e(144),d=e(42),c=e(106),p=e(32),f=e(4),v=e(7),h=e(272),g=e(12),m=e(507),y=e(5),C=e(10),b=e(8),w=e(6),S=e(13),_=e(23),R=e(9),I=e(62),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noUsersInList"));n(l,1,0,e)})}function E(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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"confirmUsers")),"");n(l,1,0,"info","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"usersNeedConfirmed"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted"));n(l,1,0,e)})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-lock"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"userUsingTwoStep")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager"));n(l,1,0,e)})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user"));n(l,1,0,e)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"resendInvitation"));n(l,4,0,e)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-success"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"confirm"));n(l,4,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"groups"));n(l,4,0,e)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"eventLogs"));n(l,4,0,e)})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,77,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["width","30"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,a.View_AvatarComponent_0,a.RenderType_AvatarComponent)),t.ɵdid(5,638976,null,0,s.AvatarComponent,[d.DomSanitizer,c.CryptoFunctionService,p.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(12,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(15,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(18,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(21,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(27,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(33,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(36,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(39,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(42,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,20,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(57,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(63,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(66,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,69).onClick(e)&&u);"click"===l&&(u=!1!==r.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["\n ","\n "])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,15,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,18,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,21,0,l.context.$implicit.name),n(l,27,0,l.context.$implicit.twoFactorEnabled),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,36,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,39,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,42,0,l.context.$implicit.type===e.organizationUserType.User),n(l,57,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,60,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,63,0,e.accessGroups),n(l,66,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email);var e=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent.parent.parent,0),"remove"));n(l,72,0,e)})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,13,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,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.ɵeld(5,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(10,278528,null,0,f.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.showConfirmUsers),n(l,10,0,l.parent.context.ngIf)},null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,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.ɵand(16777216,null,null,1,null,K)),t.ɵdid(6,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Z(n){return t.ɵvid(0,[t.ɵpid(0,v.I18nPipe,[o.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,r=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!==(r.searchText=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,g.NgModel,[[8,null],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(52,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.invite()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["\n ","\n "])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(65,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,H)),t.ɵdid(68,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(69,5),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,J)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,u=n(l,18,0,null==e.status);n(l,17,0,"btn btn-outline-secondary",u);var r=n(l,24,0,e.status==e.organizationUserStatusType.Invited);n(l,23,0,"btn btn-outline-secondary",r),n(l,28,0,e.invitedCount);var o=n(l,33,0,e.status==e.organizationUserStatusType.Accepted);n(l,32,0,"btn btn-outline-secondary",o),n(l,37,0,e.acceptedCount),n(l,50,0,e.searchText),n(l,65,0,e.loading);var i=!e.loading&&t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id"));n(l,68,0,i)},function(n,l){var e=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"people"));n(l,9,0,e);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"all"));n(l,19,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"invited"));n(l,25,0,r);var o=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"accepted"));n(l,34,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"search"));n(l,44,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,53,0,t.ɵnov(l,0),"search")),"");n(l,47,0,a,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);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"inviteUser"));n(l,59,0,s)})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-people",[],null,null,null,Z,k)),t.ɵdid(1,114688,null,0,m.PeopleComponent,[y.ApiService,C.ActivatedRoute,o.I18nService,t.ComponentFactoryResolver,b.PlatformUtilsService,w.Angulartics2,S.ToasterService,_.CryptoService,R.UserService,C.Router,I.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PeopleComponent=k,l.View_PeopleComponent_0=Z,l.View_PeopleComponent_Host_0=X;var Q=t.ɵccf("app-org-people",m.PeopleComponent,X,{},{},[]);l.PeopleComponentNgFactory=Q},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.emails=[],this.collections=[]}}();l.OrganizationUserInviteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.OrganizationUserUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.groupIds=[]}}();l.OrganizationUserUpdateGroupsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(508),s=e(9),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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"twoStepLogin"));n(l,5,0,e)})}function p(n){return t.ɵvid(0,[t.ɵpid(0,o.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,r.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,r.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,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.ɵ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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"settings"));n(l,10,0,e),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"myOrganization"));n(l,20,0,u),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,28,0,r)})}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),r=e(20),o=e(18),i=e(169),a=e(144),s=e(42),d=e(106),c=e(32),p=e(7),f=e(3),v=e(4),h=e(509),g=e(5),m=e(6),y=e(13),C=e(10),b=e(64),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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);var e=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent,0),"organizationName"));n(l,13,0,e),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);var u=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"billingEmail"));n(l,27,0,u),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);var r=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l.parent,0),"businessName"));n(l,41,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"loading")),"");n(l,62,0,o);var i=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent,0),"save"));n(l,66,0,i)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵqud(402653184,1,{deleteModalRef:0}),t.ɵqud(402653184,2,{purgeModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(14,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(16,0,null,null,5,"div",[["class","secondary-header border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(27,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://bitwarden.com/contact/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["\n ","\n"])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","secondary-header text-danger border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(38,0,null,null,16,"div",[["class","card border-danger"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,13,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.deleteOrganization()&&t);return t},null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.purgeVault()&&t);return t},null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["deleteOrganizationTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["purgeOrganizationTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.loading),n(l,14,0,e.org&&!e.loading)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"myOrganization"));n(l,6,0,e);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"taxInformation"));n(l,19,0,u);var r=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l,0),"taxInformationDesc"));n(l,24,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"contactSupport"));n(l,28,0,o);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"dangerZone"));n(l,34,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"dangerZoneDesc"));n(l,43,0,a);var s=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"deleteOrganization"));n(l,47,0,s);var d=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"purgeVault"));n(l,51,0,d)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-account",[],null,null,null,k,w)),t.ɵdid(1,114688,null,0,h.AccountComponent,[t.ComponentFactoryResolver,g.ApiService,f.I18nService,m.Angulartics2,y.ToasterService,C.ActivatedRoute,b.SyncService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AccountComponent=w,l.View_AccountComponent_0=k,l.View_AccountComponent_Host_0=A;var O=t.ɵccf("app-org-account",h.AccountComponent,A,{},{},[]);l.AccountComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(40),a=e(4),s=e(7),d=e(510),c=e(5),p=e(9),f=e(19),v=e(10),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"));n(l,4,0,e);var u=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode"));n(l,8,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,0,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium"));n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage"));n(l,22,0,u)})}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,[o.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId);var t=n(l,25,0,!e.organizationId);n(l,24,0,t),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers"));n(l,26,0,u)})}function T(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=T;var E=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,T,{},{},[]);l.TwoFactorSetupComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(20),a=e(18),s=e(4),d=e(566),c=e(479),p=e(5),f=e(6),v=e(13),h=e(886),g=e(604),m=e(567),y=e(480),C=e(12),b=e(568),w=e(481),S=e(7),_=e(511),R=e(71),I=e(8),k=e(19),A=e(10),O=t.ɵcrt({encapsulation:2,styles:[],data:{}});function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function T(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function E(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,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),"");n(l,1,0,"warning",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled"));n(l,3,0,e)})}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,r.CalloutComponent,[o.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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"");n(l,1,0,"warning",u),n(l,9,0,e.reinstatePromise)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"));n(l,5,0,e),n(l,8,0,t.ɵnov(l,8).loading);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription"));n(l,15,0,r)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"licenseIsExpired"));n(l,3,0,e)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate"));n(l,1,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires"));n(l,1,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"billingPlan"));n(l,3,0,u),n(l,7,0,e.billing.plan);var r=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent,0),"expiration"));n(l,10,0,r)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"pendingCancellation"));n(l,1,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"status"));n(l,3,0,u),n(l,9,0,e.subscription.status||"-");var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent,0),"nextCharge"));n(l,16,0,r);var o=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,"$")):"-";n(l,20,0,o)})}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){var e=l.context.$implicit.name,u=l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",r=t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,3,0,e,u,r);var o=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,"$")),i=t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval));n(l,7,0,o,i)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details"));n(l,3,0,e)})}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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"billingPlan"));n(l,7,0,u),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,o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense"));n(l,5,0,e)})}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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"));n(l,5,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription"));n(l,9,0,u)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense"));n(l,7,0,u)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription"));n(l,7,0,u)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addSeats"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeSeats"));n(l,7,0,u)})}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,o.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage"));n(l,7,0,u)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},m.View_AdjustStorageComponent_0,m.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,y.AdjustStorageComponent,[p.ApiService,o.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.storageGbPrice,e.adjustStorageAdd,e.organizationId,e.billingInterval)},null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,r=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!==(r.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_be,[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_be]),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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")),"");n(l,1,0,"warning",u),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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountDesc")),u=t.ɵunv(l,5,1,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountFailureWarning"));n(l,5,0,e,u),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);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","1"));n(l,16,0,r),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);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","2"));n(l,39,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"");n(l,63,0,i);var a=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount"));n(l,67,0,a)})}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);var t=n(l,9,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal);n(l,8,0,"fa fa-fw",t)},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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod"));n(l,1,0,u)})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},b.View_AdjustPaymentComponent_0,b.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,w.AdjustPaymentComponent,[p.ApiService,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noInvoices"));n(l,1,0,e)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"paid"));n(l,3,0,e)})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-circle text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"unpaid"));n(l,3,0,e)})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"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,11,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,3,"a",[["class","mr-2"],["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"a",[["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(15,null,["\n ",""])),t.ɵppd(16,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),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,rn)),t.ɵdid(29,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){n(l,26,0,l.context.$implicit.paid),n(l,29,0,!l.context.$implicit.paid)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.date,"mediumDate"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",l.context.$implicit.pdfUrl,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"downloadInvoice")),"");n(l,8,0,u,r);var o=t.ɵinlineInterpolate(1,"",l.context.$implicit.url,""),i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,1,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,0),"viewInvoice")),"");n(l,13,0,o,i);var a=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoiceNumber",l.context.$implicit.number));n(l,15,0,a);var s=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,20,0,s)})}function an(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,on)),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.invoices)},null)}function sn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noTransactions"));n(l,1,0,e)})}function dn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeNoun"));n(l,1,0,e)})}function cn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeRefund"));n(l,1,0,e)})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(1,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2})],function(n,l){var e=l.component,t=n(l,2,0,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.Card,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.BankAccount,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.PayPal);n(l,1,0,"fa fa-fw",t)},null)}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,27,"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,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),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,cn)),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,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,pn)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(19,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(23,{"text-strike":0}),t.ɵppd(24,1),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,l.context.$implicit.type===e.transactionType.Charge),n(l,12,0,l.context.$implicit.type===e.transactionType.Refund),n(l,18,0,l.context.$implicit.type===e.transactionType.Charge||l.context.$implicit.type===e.transactionType.Refund);var t=n(l,23,0,l.context.$implicit.refunded);n(l,22,0,t)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"));n(l,3,0,e),n(l,19,0,l.context.$implicit.details);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,24,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"");n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,25,0,r)})}function vn(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,fn)),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.transactions)},null)}function hn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,85,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePlan()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(24,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(37,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(38,{width:0}),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(44,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(54,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(57,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),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,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(77,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,vn)),t.ɵdid(80,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["* ",""])),t.ɵppd(84,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);var t=n(l,38,0,e.storageProgressWidth+"%");n(l,37,0,t),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.invoices||!e.invoices.length),n(l,70,0,e.invoices&&e.invoices.length),n(l,77,0,!e.transactions||!e.transactions.length),n(l,80,0,e.transactions&&e.transactions.length)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"changeBillingPlan"));n(l,5,0,u);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"userSeats"));n(l,16,0,r);var o=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"subscriptionUserSeats",e.billing.seats));n(l,20,0,o);var i=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent.parent,0),"storage"));n(l,27,0,i);var a=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,31,0,a),n(l,36,0,e.storagePercentage);var s=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100));n(l,39,0,s);var d=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent,0),"paymentMethod"));n(l,47,0,d);var c=t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent,0),"invoices"));n(l,63,0,c);var p=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"transactions"));n(l,73,0,p);var f=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN"));n(l,83,0,f)})}function gn(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,E)),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,hn)),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 mn(n){return t.ɵvid(0,[t.ɵpid(0,S.I18nPipe,[o.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,T)),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,gn)),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,7,0,e)})}function yn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-billing",[],null,null,null,mn,O)),t.ɵdid(1,114688,null,0,_.OrganizationBillingComponent,[R.TokenService,p.ApiService,I.PlatformUtilsService,o.I18nService,f.Angulartics2,v.ToasterService,k.MessagingService,A.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_OrganizationBillingComponent=O,l.View_OrganizationBillingComponent_0=mn,l.View_OrganizationBillingComponent_Host_0=yn;var Cn=t.ɵccf("app-org-billing",_.OrganizationBillingComponent,yn,{},{},[]);l.OrganizationBillingComponentNgFactory=Cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(4),i=e(12),a=e(20),s=e(18),d=e(604),c=e(5),p=e(6),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"div",[["class","mb-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,[" "," × "," = "," /","\n "])),t.ɵppd(6,2),t.ɵppd(7,2),t.ɵppd(8,1)],null,function(n,l){var e=l.component,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"total"));n(l,3,0,u);var r=e.seatAdjustment||0,o=t.ɵunv(l,5,1,n(l,6,0,t.ɵnov(l.parent,1),e.seatPrice,"$")),i=t.ɵunv(l,5,2,n(l,7,0,t.ɵnov(l.parent,1),e.adjustedSeatTotal,"$")),a=t.ɵunv(l,5,3,n(l,8,0,t.ɵnov(l.parent,0),e.interval));n(l,5,0,r,o,i,a)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),t.ɵpid(0,o.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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,o.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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),e.add?"addSeats":"removeSeats"));n(l,11,0,u);var r=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),e.add?"seatsToAdd":"seatsToRemove"));n(l,19,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"submit"));n(l,43,0,i);var a=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,a);var s=t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),e.add?"seatsAddNote":"seatsRemoveNote"));n(l,52,0,s)})}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,r.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),r=e(4),o=e(40),i=e(605),a=e(51),s=e(20),d=e(18),c=e(606),p=e(7),f=e(3),v=e(261),h=e(22),g=e(57),m=e(8),y=e(107),C=e(32),b=e(9),w=e(44),S=e(233),_=e(63),R=e(19),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_s,[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,r=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!==(r.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,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 "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"));n(l,5,0,e),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_s,[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,r=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!==(r.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,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){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"));n(l,3,0,e),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium"));n(l,2,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade"));n(l,2,0,e)})}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,T)),t.ɵdid(6,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,E)),t.ɵdid(9,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.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,2,0,e)})}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,r.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){var e=n(l,13,0,l.component.totpDash);n(l,12,0,e)},function(n,l){var e=l.component;n(l,5,0,e.totpSec);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,20,0,u),n(l,22,0,e.totpCodeFormatted);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),"");n(l,24,0,r)})}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_s,[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,r=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!==r.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,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.ɵ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,""));var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1));n(l,6,0,e);var u=t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com");n(l,11,0,u,r,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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),"");n(l,22,0,o,!l.context.$implicit.canLaunch);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"");n(l,28,0,i),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""));var a=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"));n(l,42,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"");n(l,45,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),"");n(l,65,0,d)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.login.uris,e.trackByFunction)},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,r=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!==(r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==r.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==r.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,o.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,r=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!==(r.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,r.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,r=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!==(r.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,r.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,r.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,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.ɵand(16777216,null,null,1,null,D)),t.ɵdid(121,16384,null,0,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==r.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,o.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,"");var t=n(l,78,0,!e.showPassword,e.showPassword);n(l,77,0,"fa fa-lg",t);n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");var u=n(l,110,0,e.totpLow);n(l,109,0,"col-6 form-group totp d-flex align-items-end",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"));n(l,7,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"");n(l,22,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"));n(l,36,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"");n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"");n(l,48,0,a),n(l,53,0,t.ɵnov(l,48).loading);var s=!t.ɵnov(l,48).loading,d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,55,0,s,d),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);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,73,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,81,0,p);var f=t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"));n(l,96,0,f),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);var v=t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri"));n(l,127,0,v)})}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_s,[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_s,[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,r=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!==(r.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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,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(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,r=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!==(r.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,r=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!==(r.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,r.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,"");var t=n(l,125,0,!e.showCardCode,e.showCardCode);n(l,124,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"));n(l,7,0,u),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);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"));n(l,21,0,r),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);var o=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"));n(l,42,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"");n(l,57,0,i);var a=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"));n(l,69,0,a),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);var s=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"));n(l,87,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019");n(l,90,0,d,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);var c=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"));n(l,105,0,c),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);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,120,0,p);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),"");n(l,128,0,f)})}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_s,[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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"));n(l,7,0,e),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);var u=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"));n(l,28,0,u),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);var r=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"));n(l,42,0,r),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);var o=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"));n(l,56,0,o),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);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"));n(l,73,0,i),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);var a=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"));n(l,88,0,a),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);var s=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"));n(l,105,0,s),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);var d=t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"));n(l,120,0,d),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);var c=t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"));n(l,135,0,c),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);var p=t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"));n(l,153,0,p),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);var f=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"));n(l,168,0,f),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);var v=t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"));n(l,185,0,v),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);var h=t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"));n(l,199,0,h),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);var g=t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"));n(l,216,0,g),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);var m=t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"));n(l,230,0,m),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);var y=t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"));n(l,247,0,y),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);var C=t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"));n(l,261,0,C),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);var b=t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"));n(l,278,0,b),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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,12,0,e)})}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,r.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,"");var e=n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue);n(l,16,0,"fa fa-lg",e)},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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"");n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,20,0,u)})}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,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(39,16384,null,0,r.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,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(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,""));var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,8,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"");n(l,11,0,u),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,""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"));n(l,30,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,47,0,o)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.fields,e.trackByFunction)},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_s,[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_s,[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,r=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!==(r.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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.ɵ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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"));n(l,11,0,u),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(7,16384,null,0,r.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,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.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"));n(l,3,0,u);var r=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium"));n(l,5,0,r)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==r.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"));n(l,3,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"");n(l,6,0,r),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"));n(l,1,0,e),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,r.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,ln)),t.ɵdid(13,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,en)),t.ɵdid(16,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,un)),t.ɵdid(19,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 "]))],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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"));n(l,7,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium"));n(l,9,0,r)})}function on(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,r.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,r=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!==(r.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,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.ɵand(16777216,null,null,1,null,U)),t.ɵdid(29,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,z)),t.ɵdid(33,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,j)),t.ɵdid(37,16384,null,0,r.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,r=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!==(r.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,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==r.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,o.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,r=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!==(r.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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(89,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,nn)),t.ɵdid(92,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,rn)),t.ɵdid(95,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,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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"));n(l,10,0,e),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);var u=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"));n(l,42,0,u),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);var r=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"));n(l,54,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"));n(l,64,0,o);var i=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"));n(l,72,0,i),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,r.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,t=n(l,5,0,e.cipher.favorite,!e.cipher.favorite);n(l,4,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),"");n(l,0,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r.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,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.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,r.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,r=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!==r.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,on)),t.ɵdid(26,16384,null,0,r.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,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"]))],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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u),n(l,30,0,t.ɵnov(l,6).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"");n(l,32,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"));n(l,36,0,o);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel"));n(l,41,0,i)})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-add-edit",[],null,null,null,cn,I)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=I,l.View_AddEditComponent_0=cn,l.View_AddEditComponent_Host_0=pn;var fn=t.ɵccf("app-vault-add-edit",v.AddEditComponent,pn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=fn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(4),i=e(40),a=e(7),s=e(3),d=e(12),c=e(469),p=e(22),f=e(23),v=e(9),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"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,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"");n(l,4,0,e),n(l,7,0,t.ɵnov(l,7).loading);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix"));n(l,9,0,u)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(5,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(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,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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==r.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,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(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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,29,0,e,t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading);var u=!t.ɵnov(l,29).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,36,0,u,r)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.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,r=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!==r.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,r.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,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(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(31,16384,null,0,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"");n(l,20,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"));n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"));n(l,38,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"));n(l,44,0,i),n(l,50,0,t.ɵnov(l,5).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"");n(l,52,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"));n(l,56,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"");n(l,60,0,d);var c=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close"));n(l,62,0,c)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-attachments",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=g,l.View_AttachmentsComponent_0=_,l.View_AttachmentsComponent_Host_0=R;var I=t.ɵccf("app-vault-attachments",c.AttachmentsComponent,R,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(548),d=e(6),c=e(22),p=e(13),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,o.ɵangular_packages_forms_forms_bh,[],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,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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"deleteSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"deleteSelectedItemsDesc",e.cipherIds.length));n(l,27,0,o),n(l,32,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,i);var a=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"delete"));n(l,38,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"cancel")),"");n(l,42,0,s);var d=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"cancel"));n(l,44,0,d)})}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,r.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),r=e(7),o=e(3),i=e(20),a=e(18),s=e(4),d=e(549),c=e(6),p=e(22),f=e(13),v=e(57),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_s,[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,r.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 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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,r=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!==(r.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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"moveSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"moveSelectedItemsDesc",e.cipherIds.length));n(l,29,0,o);var i=t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"folder"));n(l,35,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"");n(l,55,0,a);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"save"));n(l,59,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l,0),"cancel")),"");n(l,63,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,c)})}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,o.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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(550),p=e(6),f=e(22),v=e(13),h=e(44),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_s,[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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,r=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!==(r.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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(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,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,b)),t.ɵdid(65,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(68,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(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,o.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);var u=n(l,75,0,t.ɵnov(l,5).loading);n(l,74,0,"btn btn-primary btn-submit manual",u)},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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"shareSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"shareManyDesc"));n(l,29,0,o);var i=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"shareSelectedItemsCountDesc",e.ciphers.length,e.shareableCiphers.length,e.nonShareableCount));n(l,33,0,i);var a=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"organization"));n(l,39,0,a),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);var s=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"collections"));n(l,57,0,s),n(l,73,0,t.ɵnov(l,5).loading||!e.canSave);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,d);var c=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"save"));n(l,81,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"cancel")),"");n(l,85,0,p);var f=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l,0),"cancel"));n(l,87,0,f)})}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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(470),p=e(44),f=e(8),v=e(22),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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,y)),t.ɵdid(46,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(49,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(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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"));n(l,32,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"));n(l,38,0,o),n(l,54,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,i);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"));n(l,60,0,a);var s=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,s)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,w,h)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=h,l.View_CollectionsComponent_0=w,l.View_CollectionsComponent_Host_0=S;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,S,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(559),f=e(5),v=e(6),h=e(13),g=e(23),m=e(19),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deauthorizeSessions"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deauthorizeSessionsDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deauthorizeSessionsWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"");n(l,55,0,a);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"deauthorizeSessions"));n(l,59,0,s);var d=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"close"));n(l,64,0,d)})}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,r.I18nService,v.Angulartics2,h.ToasterService,g.CryptoService,m.MessagingService],null,null)],null,null)}l.RenderType_DeauthorizeSessionsComponent=y,l.View_DeauthorizeSessionsComponent_0=C,l.View_DeauthorizeSessionsComponent_Host_0=b;var w=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(560),v=e(5),h=e(6),g=e(13),m=e(23),y=e(19),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteAccount"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteAccountDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteAccountWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,a);var s=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteAccount"));n(l,60,0,s);var d=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,d)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-account",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteAccountComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService],null,null)],null,null)}l.RenderType_DeleteAccountComponent=C,l.View_DeleteAccountComponent_0=b,l.View_DeleteAccountComponent_Host_0=w;var S=t.ɵccf("app-delete-account",f.DeleteAccountComponent,w,{},{},[]);l.DeleteAccountComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(603),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteOrganization"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteOrganizationDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteOrganizationWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,a);var s=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteOrganization"));n(l,60,0,s);var d=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,d)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-organization",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteOrganizationComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_DeleteOrganizationComponent=C,l.View_DeleteOrganizationComponent_0=b,l.View_DeleteOrganizationComponent_Host_0=w;var S=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,w,{},{},[]);l.DeleteOrganizationComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(7),i=e(3),a=e(12),s=e(4),d=e(551),c=e(57),p=e(8),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,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.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,r=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!==r.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,r.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,r=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!==(r.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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u);var r=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"name"));n(l,27,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"");n(l,44,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"save"));n(l,48,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"cancel")),"");n(l,52,0,a);var s=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"cancel"));n(l,54,0,s)})}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(100),r=t.ɵcrt({encapsulation:2,styles:[],data:{}});function o(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,o))],null,null)}function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-modal",[],null,null,null,i,r)),t.ɵdid(1,180224,null,0,u.ModalComponent,[t.ComponentFactoryResolver],null,null)],null,null)}l.RenderType_ModalComponent=r,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),r=e(4),o=e(40),i=e(605),a=e(51),s=e(20),d=e(18),c=e(606),p=e(7),f=e(3),v=e(488),h=e(22),g=e(57),m=e(8),y=e(107),C=e(32),b=e(9),w=e(44),S=e(233),_=e(63),R=e(5),I=e(19),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_s,[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,r=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!==(r.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,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 "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"));n(l,5,0,e),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_s,[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 T(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,r=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!==(r.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,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){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"));n(l,3,0,e),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium"));n(l,2,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade"));n(l,2,0,e)})}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,E)),t.ɵdid(6,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,P)),t.ɵdid(9,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.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,2,0,e)})}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,r.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){var e=n(l,13,0,l.component.totpDash);n(l,12,0,e)},function(n,l){var e=l.component;n(l,5,0,e.totpSec);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,20,0,u),n(l,22,0,e.totpCodeFormatted);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),"");n(l,24,0,r)})}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_s,[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,r=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!==r.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,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.ɵ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,""));var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1));n(l,6,0,e);var u=t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com");n(l,11,0,u,r,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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),"");n(l,22,0,o,!l.context.$implicit.canLaunch);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"");n(l,28,0,i),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""));var a=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"));n(l,42,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"");n(l,45,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),"");n(l,65,0,d)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.login.uris,e.trackByFunction)},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,r=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!==(r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==r.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==r.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,o.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,r=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!==(r.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,r.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,r=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!==(r.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,r.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,r.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,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.ɵand(16777216,null,null,1,null,U)),t.ɵdid(121,16384,null,0,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==r.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,o.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,"");var t=n(l,78,0,!e.showPassword,e.showPassword);n(l,77,0,"fa fa-lg",t);n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");var u=n(l,110,0,e.totpLow);n(l,109,0,"col-6 form-group totp d-flex align-items-end",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"));n(l,7,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"");n(l,22,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"));n(l,36,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"");n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"");n(l,48,0,a),n(l,53,0,t.ɵnov(l,48).loading);var s=!t.ɵnov(l,48).loading,d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,55,0,s,d),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);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,73,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,81,0,p);var f=t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"));n(l,96,0,f),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);var v=t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri"));n(l,127,0,v)})}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_s,[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_s,[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,r=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!==(r.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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,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(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,r=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!==(r.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,r=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!==(r.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,r.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,"");var t=n(l,125,0,!e.showCardCode,e.showCardCode);n(l,124,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"));n(l,7,0,u),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);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"));n(l,21,0,r),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);var o=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"));n(l,42,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"");n(l,57,0,i);var a=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"));n(l,69,0,a),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);var s=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"));n(l,87,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019");n(l,90,0,d,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);var c=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"));n(l,105,0,c),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);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,120,0,p);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),"");n(l,128,0,f)})}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_s,[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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"));n(l,7,0,e),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);var u=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"));n(l,28,0,u),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);var r=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"));n(l,42,0,r),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);var o=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"));n(l,56,0,o),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);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"));n(l,73,0,i),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);var a=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"));n(l,88,0,a),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);var s=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"));n(l,105,0,s),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);var d=t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"));n(l,120,0,d),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);var c=t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"));n(l,135,0,c),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);var p=t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"));n(l,153,0,p),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);var f=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"));n(l,168,0,f),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);var v=t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"));n(l,185,0,v),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);var h=t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"));n(l,199,0,h),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);var g=t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"));n(l,216,0,g),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);var m=t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"));n(l,230,0,m),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);var y=t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"));n(l,247,0,y),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);var C=t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"));n(l,261,0,C),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);var b=t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"));n(l,278,0,b),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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,12,0,e)})}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,r.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,"");var e=n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue);n(l,16,0,"fa fa-lg",e)},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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"");n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,20,0,u)})}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,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(39,16384,null,0,r.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,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(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,""));var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,8,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"");n(l,11,0,u),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,""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"));n(l,30,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,47,0,o)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.fields,e.trackByFunction)},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_s,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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,r=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!==(r.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==r.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(22,278528,null,0,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.ɵ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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"));n(l,11,0,u),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,r.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,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.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"));n(l,3,0,u);var r=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium"));n(l,5,0,r)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==r.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"));n(l,3,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"");n(l,6,0,r),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"));n(l,1,0,e),n(l,4,0,l.context.$implicit.password)})}function rn(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,r.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,en)),t.ɵdid(13,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,tn)),t.ɵdid(16,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,rn)),t.ɵdid(19,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 "]))],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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"));n(l,7,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium"));n(l,9,0,r)})}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,r.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,r=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!==(r.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,T)),t.ɵdid(24,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.ɵand(16777216,null,null,1,null,F)),t.ɵdid(29,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,G)),t.ɵdid(33,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,q)),t.ɵdid(37,16384,null,0,r.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,r=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!==(r.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,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==r.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,o.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,r=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!==(r.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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(89,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,ln)),t.ɵdid(92,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,on)),t.ɵdid(95,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,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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"));n(l,10,0,e),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);var u=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"));n(l,42,0,u),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);var r=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"));n(l,54,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"));n(l,64,0,o);var i=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"));n(l,72,0,i),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,r.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,t=n(l,5,0,e.cipher.favorite,!e.cipher.favorite);n(l,4,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),"");n(l,0,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r.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,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.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,r.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,r=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!==r.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,r.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,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"]))],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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u),n(l,30,0,t.ɵnov(l,6).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"");n(l,32,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"));n(l,36,0,o);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel"));n(l,41,0,i)})}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-add-edit",[],null,null,null,pn,k)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.ApiService,I.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=k,l.View_AddEditComponent_0=pn,l.View_AddEditComponent_Host_0=fn;var vn=t.ɵccf("app-org-vault-add-edit",v.AddEditComponent,fn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=vn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(4),i=e(40),a=e(7),s=e(3),d=e(12),c=e(593),p=e(22),f=e(23),v=e(9),h=e(8),g=e(5),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"");n(l,4,0,e),n(l,7,0,t.ɵnov(l,7).loading);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix"));n(l,9,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,16384,null,0,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(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,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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==r.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(20,16384,null,0,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(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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,29,0,e,t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading);var u=!t.ɵnov(l,29).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,36,0,u,r)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.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,r.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,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(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,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"");n(l,20,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"));n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"));n(l,38,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"));n(l,44,0,i),n(l,50,0,t.ɵnov(l,5).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"");n(l,52,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"));n(l,56,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"");n(l,60,0,d);var c=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close"));n(l,62,0,c)})}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),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(596),p=e(5),f=e(6),v=e(13),h=e(8),g=e(23),m=e(9),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-th text-muted fa-fw"],["title","This group can access all items"]],null,null,null,null,null))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,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",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,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(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,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,22,0,l.component.groups)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}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,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,w)),t.ɵdid(10,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,R)),t.ɵdid(13,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.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"groupAccess"));n(l,3,0,e)})}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,r=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!==(r.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,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,10,0,"");n(l,13,0,"Name",e.name),n(l,19,0,e.accessGroups)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"));n(l,5,0,e),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r=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!==r.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,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(28,16384,null,0,o.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,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.ɵ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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u),n(l,32,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"));n(l,38,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel"));n(l,43,0,i)})}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 T=t.ɵccf("app-collection-add-edit",c.CollectionAddEditComponent,N,{collectionId:"collectionId",organizationId:"organizationId"},{onSavedCollection:"onSavedCollection",onDeletedCollection:"onDeletedCollection"},[]);l.CollectionAddEditComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(594),p=e(44),f=e(8),v=e(22),h=e(5),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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,C)),t.ɵdid(46,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(49,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(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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"));n(l,32,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"));n(l,38,0,o),n(l,54,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,i);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"));n(l,60,0,a);var s=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,s)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-collections",[],null,null,null,S,g)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService,h.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=g,l.View_CollectionsComponent_0=S,l.View_CollectionsComponent_Host_0=_;var R=t.ɵccf("app-org-vault-collections",c.CollectionsComponent,_,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(20),o=e(18),i=e(12),a=e(7),s=e(3),d=e(493),c=e(5),p=e(240),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"user"));n(l,1,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"));n(l,3,0,e),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,14,0,l.context.$implicit.message)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"table",[["class","table table-hover mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,22,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,19,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(29,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,18,0,e.showUser),n(l,29,0,e.events)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"));n(l,7,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"));n(l,13,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"event"));n(l,21,0,r)})}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,r.ApiActionDirective,[t.ElementRef,o.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore"));n(l,7,0,u)})}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,r=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!==(r.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,r=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!==(r.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,r.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(38,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(39,{"fa-spin":0}),(n()(),t.ɵted(40,null,["\n ","\n "])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(47,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(53,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.start),n(l,28,0,e.end),n(l,35,0,e.refreshPromise);var u=n(l,39,0,e.loaded&&t.ɵnov(l,34).loading);n(l,38,0,"fa fa-refresh fa-fw",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"startDate"));n(l,7,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"startDate")),"");n(l,10,0,r,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);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"endDate"));n(l,22,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,25,0,n(l,31,0,t.ɵnov(l.parent,0),"endDate")),"");n(l,25,0,i,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);var a=t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l.parent,0),"refresh"));n(l,40,0,a)})}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){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"eventLogs"));n(l,11,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"close"));n(l,34,0,r)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-events",[],null,null,null,R,v)),t.ɵdid(1,114688,null,0,d.EntityEventsComponent,[c.ApiService,s.I18nService,p.EventService,f.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityEventsComponent=v,l.View_EntityEventsComponent_0=R,l.View_EntityEventsComponent_Host_0=I;var k=t.ɵccf("app-entity-events",d.EntityEventsComponent,I,{name:"name",entity:"entity",entityId:"entityId",organizationId:"organizationId",showUser:"showUser"},{},[]);l.EntityEventsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(12),o=e(102),i=e(169),a=e(144),s=e(42),d=e(106),c=e(32),p=e(7),f=e(3),v=e(272),h=e(20),g=e(18),m=e(504),y=e(5),C=e(6),b=e(13),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUsersInList"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted"));n(l,1,0,e)})}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 T(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"userAccessAllItems")),"");n(l,0,0,e)})}function E(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,T)),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user"));n(l,1,0,e)})}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,r.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(7,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.id.substr(0,8),"_ReadOnly");n(l,5,0,e,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,r=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!==r.selectedChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,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(7,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(9,16384,null,0,r.NgControlStatus,[[4,r.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",[["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,E)),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,u=t.ɵinlineInterpolate(1,"",l.context.$implicit.id.substr(0,8),"_Checked");n(l,7,0,u,"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){var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"name"));n(l,15,0,e);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"userType"));n(l,22,0,u)})}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,r=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!==(r.searchText=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(13,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(15,16384,null,0,r.NgControlStatus,[[4,r.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);var t=n(l,23,0,!e.showSelected);n(l,22,0,"btn btn-outline-secondary",t);var u=n(l,29,0,e.showSelected);n(l,28,0,"btn btn-outline-secondary",u),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"search"));n(l,7,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"search")),"");n(l,10,0,u,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);var r=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent,0),"all"));n(l,24,0,r);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"selected"));n(l,30,0,o)})}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,r=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!==r.submit()&&u);return u},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,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵeld(17,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(30,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,L)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(34,5),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["",""])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,30,0,e.loading||!e.users);var u=!e.loading&&e.users&&t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id"));n(l,33,0,u)},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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"userAccess"));n(l,15,0,u),n(l,18,0,e.entityName);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,r),n(l,38,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"loading")),"");n(l,40,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"save"));n(l,44,0,i);var a=t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"close"));n(l,49,0,a)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-users",[],null,null,null,z,w)),t.ɵdid(1,114688,null,0,m.EntityUsersComponent,[y.ApiService,f.I18nService,C.Angulartics2,b.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityUsersComponent=w,l.View_EntityUsersComponent_0=z,l.View_EntityUsersComponent_Host_0=G;var j=t.ɵccf("app-entity-users",m.EntityUsersComponent,G,{entity:"entity",entityId:"entityId",entityName:"entityName",organizationId:"organizationId"},{onEditedUsers:"onEditedUsers"},[]);l.EntityUsersComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(598),p=e(5),f=e(6),v=e(13),h=e(44),g=e(8),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(22,278528,null,0,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,22,0,l.component.collections)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){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,r=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!==(r.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,r=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!==(r.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,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(46,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(47,278528,null,0,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,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,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);var t=n(l,48,0,"selected"!==e.access);n(l,47,0,"form-group",t);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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"));n(l,5,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"externalId"));n(l,21,0,u),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);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent,0),"externalIdGroupDesc"));n(l,32,0,r);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"accessControl"));n(l,39,0,o),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);var i=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"groupAccessAllItems"));n(l,61,0,i),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);var a=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l.parent,0),"groupAccessSelectedCollections"));n(l,76,0,a)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r=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!==r.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,o.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,o.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,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.ɵ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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u),n(l,32,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"));n(l,38,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel"));n(l,43,0,i)})}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),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(600),p=e(5),f=e(6),v=e(13),h=e(44),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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,r=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!==(r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"inviteUserDesc"));n(l,3,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"));n(l,9,0,u),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);var r=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"inviteMultipleEmailDesc","20"));n(l,22,0,r)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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,22,0,l.component.collections)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,o.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,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.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,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,r=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!==(r.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_j,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(72,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(74,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeOwner"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵeld(79,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(80,null,["",""])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["\n ","\n "])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(92,16384,null,0,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(95,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(96,278528,null,0,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,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,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);var t=n(l,97,0,"selected"!==e.access);n(l,96,0,"form-group",t);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){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent,0),"userType"));n(l,6,0,e),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);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent,0),"user"));n(l,20,0,u);var r=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent,0),"userDesc"));n(l,23,0,r),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);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"manager"));n(l,39,0,o);var i=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"managerDesc"));n(l,42,0,i),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);var a=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"admin"));n(l,58,0,a);var s=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"adminDesc"));n(l,61,0,s),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);var d=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"owner"));n(l,77,0,d);var c=t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l.parent,0),"ownerDesc"));n(l,80,0,c);var p=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent,0),"accessControl"));n(l,88,0,p),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);var f=t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,0),"userAccessAllItems"));n(l,110,0,f),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);var v=t.ɵunv(l,125,0,n(l,126,0,t.ɵnov(l.parent,0),"userAccessSelectedCollections"));n(l,125,0,v)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,o.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,r=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!==r.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,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(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,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(33,16384,null,0,o.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,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.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,t=n(l,5,0,!e.editMode);n(l,4,0,"modal-dialog",t),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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u),n(l,37,0,t.ɵnov(l,7).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,r);var o=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"));n(l,43,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,i)})}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 T=t.ɵccf("app-user-add-edit",c.UserAddEditComponent,N,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser",onDeletedUser:"onDeletedUser"},[]);l.UserAddEditComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(4),d=e(601),c=e(5),p=e(6),f=e(13),v=e(23),h=e(62),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,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,o.ɵangular_packages_forms_forms_bh,[],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,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,r=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!==(r.dontAskAgain=e)&&u);return u},null,null)),t.ɵdid(46,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(48,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(50,16384,null,0,o.NgControlStatus,[[4,o.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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"confirmUser"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,r);var o=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"fingerprintEnsureIntegrityVerify"));n(l,32,0,o);var i=t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"learnMore"));n(l,35,0,i),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);var a=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"dontAskFingerprintAgain"));n(l,53,0,a),n(l,60,0,t.ɵnov(l,5).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"loading")),"");n(l,62,0,s);var d=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"confirm"));n(l,66,0,d);var c=t.ɵunv(l,71,0,n(l,72,0,t.ɵnov(l,0),"cancel"));n(l,71,0,c)})}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,r.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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(602),p=e(5),f=e(6),v=e(13),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}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,r.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,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.component.groups)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(7,16384,null,0,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(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.groups||!e.groups.length),n(l,10,0,e.groups&&e.groups.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"groupAccessUserDesc"));n(l,3,0,e)})}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,49,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,46,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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(33,16384,null,0,o.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"groupAccess"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u),n(l,37,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,r);var o=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"));n(l,43,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,i)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-groups",[],null,null,null,S,h)),t.ɵdid(1,114688,null,0,c.UserGroupsComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserGroupsComponent=h,l.View_UserGroupsComponent_0=S,l.View_UserGroupsComponent_Host_0=_;var R=t.ɵccf("app-user-groups",c.UserGroupsComponent,_,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser"},[]);l.UserGroupsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(572),r=e(8),o=e(4),i=e(7),a=e(3),s=e(571),d=e(573),c=e(63),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"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,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"div",[["appFlexCopy",""],["class","text-monospace password-wrapper"]],[[8,"innerHTML",1]],[[null,"copy"]],function(n,l,e){var u=!0;"copy"===l&&(u=!1!==t.ɵnov(n,5).onCopy()&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.FlexCopyDirective,[t.ElementRef,r.PlatformUtilsService],null,null),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,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(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,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){var e=t.ɵunv(l,4,0,n(l,6,0,t.ɵnov(l.parent.parent,1),l.context.$implicit.password));n(l,4,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,2),l.context.$implicit.date,"medium"));n(l,9,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,15,0,r)})}function v(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,f)),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.history)},null)}function h(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noPasswordsInList"));n(l,1,0,e)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,s.ColorPasswordPipe,[]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(3,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(24,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,h)),t.ɵdid(27,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(32,1),(n()(),t.ɵted(33,null,["\n ","\n "])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,4,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.clear()&&t);return t},null,null)),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,24,0,e.history.length),n(l,27,0,!e.history.length)},function(n,l){var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHistory"));n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"close")),"");n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"close")),"");n(l,31,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"close"));n(l,33,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"clear")),"");n(l,38,0,i)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,g,p)),t.ɵdid(1,114688,null,0,d.PasswordGeneratorHistoryComponent,[c.PasswordGenerationService,r.PlatformUtilsService,a.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=p,l.View_PasswordGeneratorHistoryComponent_0=g,l.View_PasswordGeneratorHistoryComponent_Host_0=m;var y=t.ɵccf("app-password-generator-history",d.PasswordGeneratorHistoryComponent,m,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(473),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"purgeVault"));n(l,14,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),e.organizationId?"purgeOrgVaultDesc":"purgeVaultDesc"));n(l,28,0,o);var i=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"purgeVaultWarning"));n(l,33,0,i);var a=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,a),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);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,s);var d=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"purgeVault"));n(l,60,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-purge-vault",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.PurgeVaultComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_PurgeVaultComponent=C,l.View_PurgeVaultComponent_0=b,l.View_PurgeVaultComponent_Host_0=w;var S=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,w,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(10),a=e(7),s=e(3),d=e(20),c=e(18),p=e(552),f=e(44),v=e(8),h=e(9),g=e(22),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noOrganizationsList"));n(l,1,0,e)})}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_s,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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.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,r=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!==(r.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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(24,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(31,16384,null,0,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,S)),t.ɵdid(35,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,R)),t.ɵdid(38,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,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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"shareDesc"));n(l,3,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"organization"));n(l,9,0,u),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);var r=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"collections"));n(l,27,0,r)})}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,o.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){var e=n(l,2,0,t.ɵnov(l.parent,5).loading);n(l,1,0,"btn btn-primary btn-submit manual",e)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l.parent,5).loading||!e.canSave);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"loading")),"");n(l,4,0,u);var r=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"save"));n(l,8,0,r)})}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,o.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);var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"newOrganization"));n(l,2,0,e)})}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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,o.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,o.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,o.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,o.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"share"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")),"");n(l,43,0,r);var o=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"cancel"));n(l,45,0,o)})}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 T=t.ɵccf("app-vault-share",p.ShareComponent,N,{cipherId:"cipherId",organizationId:"organizationId"},{onSharedCipher:"onSharedCipher"},[]);l.ShareComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(561),C=e(6),b=e(9),w=e(8),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDesc"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDownloadApp"));n(l,11,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,7,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorReaddDesc"));n(l,9,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorNeedApp"));n(l,15,0,r)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorScanCode"));n(l,3,0,e)})}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,r=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!==(r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorEnterCode"));n(l,3,0,e),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}function E(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,r=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!==r.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,T)),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);var t=n(l,56,0,e.enabled);n(l,55,0,"text-center",t),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);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"iosDevices"));n(l,19,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,0),"androidDevices"));n(l,28,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"windowsDevices"));n(l,37,0,o);var i=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent,0),"twoStepAuthenticatorAppsRecommended"));n(l,45,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"key")),"");n(l,61,0,a),n(l,63,0,e.key),n(l,72,0,t.ɵnov(l,0).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"loading")),"");n(l,74,0,s);var d=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l.parent,0),"close"));n(l,85,0,d)})}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,E)),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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"authenticatorAppTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-authenticator",[],null,null,null,P,S)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,w.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=S,l.View_TwoFactorAuthenticatorComponent_0=P,l.View_TwoFactorAuthenticatorComponent_Host_0=V;var x=t.ɵccf("app-two-factor-authenticator",y.TwoFactorAuthenticatorComponent,V,{},{onUpdated:"onUpdated"},[]);l.TwoFactorAuthenticatorComponentNgFactory=x},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(476),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,5,0,u);var r=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"));n(l,11,0,r),n(l,13,0,e.ikey);var o=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"));n(l,17,0,o),n(l,19,0,e.skey);var i=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"));n(l,23,0,i),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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoDesc"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"));n(l,11,0,u),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);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"));n(l,28,0,r),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);var o=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"));n(l,45,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"ex"))," api-xxxxxxxx.duosecurity.com");n(l,48,0,i,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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}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,r=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!==r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"");n(l,19,0,e);var u=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close"));n(l,30,0,u)})}function O(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Duo"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-duo",[],null,null,null,O,w)),t.ɵdid(1,49152,null,0,y.TwoFactorDuoComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorDuoComponent=w,l.View_TwoFactorDuoComponent_0=O,l.View_TwoFactorDuoComponent_Host_0=N;var T=t.ɵccf("app-two-factor-duo",y.TwoFactorDuoComponent,N,{},{onUpdated:"onUpdated"},[]);l.TwoFactorDuoComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(562),C=e(6),b=e(8),w=e(9),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,5,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"));n(l,9,0,r),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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeEmailSent",e.sentEmail));n(l,1,0,u)})}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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailDesc"));n(l,5,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterEmail"));n(l,14,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,33,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent.parent,0),"sendEmail"));n(l,37,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterCode"));n(l,48,0,i),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}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,r=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!==r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"");n(l,19,0,e);var u=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close"));n(l,30,0,u)})}function T(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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"emailTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-email",[],null,null,null,T,S)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,w.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=S,l.View_TwoFactorEmailComponent_0=T,l.View_TwoFactorEmailComponent_Host_0=E;var P=t.ɵccf("app-two-factor-email",y.TwoFactorEmailComponent,E,{},{onUpdated:"onUpdated"},[]);l.TwoFactorEmailComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(40),r=e(7),o=e(3),i=e(4),a=e(537),s=e(96),d=e(10),c=e(8),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r.I18nPipe,[o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,27).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepOptions"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"close")),"");n(l,13,0,u);var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,30,0,r);var o=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"recoveryCodeDesc"));n(l,32,0,o);var i=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"close"));n(l,39,0,i)})}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,o.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(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(4),c=e(7),p=e(563),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,r.TwoFactorVerifyComponent,[o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryYourCode"));n(l,3,0,u),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryNoCode"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"printCode"));n(l,1,0,e)})}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){var e=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent,0),"close"));n(l,17,0,e)})}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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-recovery",[],null,null,null,C,f)),t.ɵdid(1,49152,null,0,p.TwoFactorRecoveryComponent,[i.I18nService],null,null)],null,null)}l.RenderType_TwoFactorRecoveryComponent=f,l.View_TwoFactorRecoveryComponent_0=C,l.View_TwoFactorRecoveryComponent_Host_0=b;var w=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(4),f=e(40),v=e(20),h=e(18),g=e(12),m=e(7),y=e(564),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,1,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"u2fkeyX",l.parent.context.index+1));n(l,1,0,e)})}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){var e=n(l,2,0,!l.parent.context.$implicit.compromised,l.parent.context.$implicit.compromised);n(l,1,0,"fa fa-fw",e)},function(n,l){var e=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")),"");n(l,0,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"");n(l,0,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"remove"));n(l,7,0,e)})}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 T(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 E(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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fWaiting"));n(l,3,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fClickSave"));n(l,3,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fProblemReadingTryAgain"));n(l,3,0,e)})}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,E)),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"save"));n(l,1,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys"));n(l,7,0,u)})}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,r=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!==r.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,r=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!==(r.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,T)),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorU2fWarning"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorU2fSupportWeb"));n(l,21,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"twoFactorU2fAdd"));n(l,37,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorU2fGiveName"));n(l,43,0,i);var a=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorU2fPlugInReadKey"));n(l,47,0,a);var s=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorU2fTouchButton"));n(l,51,0,s);var d=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"twoFactorU2fSaveForm"));n(l,55,0,d);var c=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"name"));n(l,64,0,c),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);var p=t.ɵunv(l,78,0,n(l,79,0,t.ɵnov(l.parent,0),"readKey"));n(l,78,0,p),n(l,90,0,t.ɵnov(l,0).loading||!e.u2fResponse);var f=t.ɵunv(l,103,0,n(l,104,0,t.ɵnov(l.parent,0),"close"));n(l,103,0,f)})}function L(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FIDO U2F"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(28,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-u2f",[],null,null,null,L,w)),t.ɵdid(1,245760,null,0,y.TwoFactorU2fComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorU2fComponent=w,l.View_TwoFactorU2fComponent_0=L,l.View_TwoFactorU2fComponent_Host_0=z;var G=t.ɵccf("app-two-factor-u2f",y.TwoFactorU2fComponent,z,{},{onUpdated:"onUpdated"},[]);l.TwoFactorU2fComponentNgFactory=G},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(4),h=e(20),g=e(18),m=e(7),y=e(565),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,1,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,3,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,5,0,e)})}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,""));var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"yubikeyX",l.context.index+1));n(l,3,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys"));n(l,7,0,u)})}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,r=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!==r.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,r=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!==(r.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorYubikeyWarning"));n(l,15,0,e);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportUsb"));n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportMobile"));n(l,25,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent,0),"twoFactorYubikeyAdd"));n(l,33,0,o);var i=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"twoFactorYubikeyPlugIn"));n(l,39,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorYubikeySelectKey"));n(l,43,0,a);var s=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorYubikeyTouchButton"));n(l,47,0,s);var d=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorYubikeySaveForm"));n(l,51,0,d);var c=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"nfcSupport"));n(l,64,0,c),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);var p=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfc"));n(l,77,0,p);var f=t.ɵunv(l,82,0,n(l,83,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfcDesc"));n(l,82,0,f),n(l,88,0,t.ɵnov(l,0).loading);var v=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"loading")),"");n(l,90,0,v);var h=t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"save"));n(l,94,0,h);var g=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"close"));n(l,102,0,g)})}function N(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["YubiKey"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(28,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-yubikey",[],null,null,null,N,w)),t.ɵdid(1,49152,null,0,y.TwoFactorYubiKeyComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorYubiKeyComponent=w,l.View_TwoFactorYubiKeyComponent_0=N,l.View_TwoFactorYubiKeyComponent_Host_0=T;var E=t.ɵccf("app-two-factor-yubikey",y.TwoFactorYubiKeyComponent,T,{},{onUpdated:"onUpdated"},[]);l.TwoFactorYubiKeyComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(545),v=e(5),h=e(6),g=e(13),m=e(23),y=e(19),C=e(64),b=e(57),w=e(22),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(47,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(52,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"updateEncryptionKey"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"updateEncryptionKeyShortDesc")),o=t.ɵunv(l,28,1,n(l,30,0,t.ɵnov(l,0),"updateEncryptionKeyDesc"));n(l,28,0,r,o);var i=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"learnMore"));n(l,32,0,i);var a=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"updateEncryptionKeyWarning"));n(l,38,0,a);var s=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"masterPass"));n(l,42,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"loading")),"");n(l,61,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"updateEncryptionKey"));n(l,65,0,c);var p=t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l,0),"close"));n(l,70,0,p)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-update-key",[],null,null,null,_,S)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,w.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=S,l.View_UpdateKeyComponent_0=_,l.View_UpdateKeyComponent_Host_0=R;var I=t.ɵccf("app-update-key",f.UpdateKeyComponent,R,{},{},[]);l.UpdateKeyComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(922),r=e(117),o=e(13),i=e(10),a=e(533),s=e(444),d=e(98),c=e(9),p=e(71),f=e(57),v=e(446),h=e(64),g=e(63),m=e(22),y=e(96),C=e(6),b=e(3),w=e(8),S=e(133),_=e(62),R=e(23),I=e(44),k=e(42),A=e(134),O=e(445),N=e(230),T=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,r.ToasterContainerComponent,[o.ToasterService,t.ChangeDetectorRef,t.NgZone],{toasterconfig:[0,"toasterconfig"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(3,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(4,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0,l.component.toasterConfig),n(l,4,0)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,E,T)),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,o.ToasterService,b.I18nService,w.PlatformUtilsService,t.NgZone,S.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService,N.RouterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=T,l.View_AppComponent_0=E,l.View_AppComponent_Host_0=P;var V=t.ɵccf("app-root",a.AppComponent,P,{},{},[]);l.AppComponentNgFactory=V},,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&l.indexOf("]")>-1){var u=l.lastIndexOf(".");t=l.substr(0,u>-1?u:l.length)+": "}n.push(t+e)})},e=this;for(var t in this.validationErrors)l(t);return n},n}();l.ErrorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.type=n.Type,this.userId=n.UserId,this.organizationId=n.OrganizationId,this.cipherId=n.CipherId,this.collectionId=n.CollectionId,this.groupId=n.GroupId,this.organizationUserId=n.OrganizationUserId,this.actingUserId=n.ActingUserId,this.date=n.Date,this.deviceType=n.DeviceType,this.ipAddress=n.IpAddress}}();l.EventResponse=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name,this.accessAll=n.AccessAll,this.externalId=n.ExternalId}}();l.GroupResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.collections=[],null!=l.Collections&&(e.collections=l.Collections.map(function(n){return new r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.GroupDetailsResponse=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.accessToken=n.access_token,this.expiresIn=n.expires_in,this.refreshToken=n.refresh_token,this.tokenType=n.token_type,this.privateKey=n.PrivateKey,this.key=n.Key,this.twoFactorToken=n.TwoFactorToken}}();l.IdentityTokenResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){if(this.twoFactorProviders2=new Map,this.twoFactorProviders=n.TwoFactorProviders,null!=n.TwoFactorProviders2)for(var l in n.TwoFactorProviders2)n.TwoFactorProviders2.hasOwnProperty(l)&&this.twoFactorProviders2.set(parseInt(l,null),n.TwoFactorProviders2[l])}}();l.IdentityTwoFactorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.data=null==n.Data?[]:n.Data.map(function(n){return new l(n)}),this.continuationToken=n.ContinuationToken}}();l.ListResponse=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(608),o=function(n){function l(l){var e=n.call(this,l)||this;return e.charges=[],e.invoices=[],e.transactions=[],e.storageName=l.StorageName,e.storageGb=l.StorageGb,e.paymentSource=null==l.PaymentSource?null:new r.BillingSourceResponse(l.PaymentSource),e.subscription=null==l.Subscription?null:new r.BillingSubscriptionResponse(l.Subscription),e.upcomingInvoice=null==l.UpcomingInvoice?null:new r.BillingInvoiceInfoResponse(l.UpcomingInvoice),null!=l.Charges&&(e.charges=l.Charges.map(function(n){return new r.BillingChargeResponse(n)})),null!=l.Transactions&&(e.transactions=l.Transactions.map(function(n){return new r.BillingTransactionResponse(n)})),null!=l.Invoices&&(e.invoices=l.Invoices.map(function(n){return new r.BillingInvoiceResponse(n)})),e.expiration=l.Expiration,e}return u(l,n),l}(e(613).OrganizationResponse);l.OrganizationBillingResponse=o},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.userId=n.UserId,this.type=n.Type,this.status=n.Status,this.accessAll=n.AccessAll}}();l.OrganizationUserResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.name=l.Name,e.email=l.Email,e.twoFactorEnabled=l.TwoFactorEnabled,e}return u(l,n),l}(o);l.OrganizationUserUserDetailsResponse=i;var a=function(n){function l(l){var e=n.call(this,l)||this;return e.collections=[],null!=l.Collections&&(e.collections=l.Collections.map(function(n){return new r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.OrganizationUserDetailsResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.kdf=n.Kdf,this.kdfIterations=n.KdfIterations}}();l.PreloginResponse=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.useGroups=n.UseGroups,this.useDirectory=n.UseDirectory,this.useEvents=n.UseEvents,this.useTotp=n.UseTotp,this.use2fa=n.Use2fa,this.selfHost=n.SelfHost,this.usersGetPremium=n.UsersGetPremium,this.seats=n.Seats,this.maxCollections=n.MaxCollections,this.maxStorageGb=n.MaxStorageGb,this.key=n.Key,this.status=n.Status,this.type=n.Type,this.enabled=n.Enabled}}();l.ProfileOrganizationResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(609),u=e(610),r=e(611),o=e(612),i=e(614),a=function(){return function(n){var l=this;this.folders=[],this.collections=[],this.ciphers=[],n.Profile&&(this.profile=new i.ProfileResponse(n.Profile)),n.Folders&&n.Folders.forEach(function(n){l.folders.push(new o.FolderResponse(n))}),n.Collections&&n.Collections.forEach(function(n){l.collections.push(new u.CollectionDetailsResponse(n))}),n.Ciphers&&n.Ciphers.forEach(function(n){l.ciphers.push(new t.CipherResponse(n))}),n.Domains&&(this.domains=new r.DomainsResponse(n.Domains))}}();l.SyncResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.key=n.Key}}();l.TwoFactorAuthenticatorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.host=n.Host,this.secretKey=n.SecretKey,this.integrationKey=n.IntegrationKey}}();l.TwoFactorDuoResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.email=n.Email}}();l.TwoFactorEmailResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.type=n.Type}}();l.TwoFactorProviderResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.code=n.Code}}();l.TwoFactorRecoverResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.keys=null==n.Keys?null:n.Keys.map(function(n){return new u(n)})}}();l.TwoFactorU2fResponse=t;var u=function(){return function(n){this.name=n.Name,this.id=n.Id,this.compromised=n.Compromised}}();l.KeyResponse=u;var r=function(){return function(n){this.userId=n.UserId,this.appId=n.AppId,this.challenge=n.Challenge,this.version=n.Version}}();l.ChallengeResponse=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.key1=n.Key1,this.key2=n.Key2,this.key3=n.Key3,this.key4=n.Key4,this.key5=n.Key5,this.nfc=n.Nfc}}();l.TwoFactorYubiKeyResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.userId=n.UserId,this.publicKey=n.PublicKey}}();l.UserKeyResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.throttle=function(n,l){return function(e,t,u){var r=u.value,o=new Map;return{value:function(){for(var e=this,t=[],u=0;u=n?s[n-1]():0===s.length&&(i.delete(a),0===i.size&&o.delete(e))}).then(l,u)};s.push(d),s.length<=n&&d()})}}}}},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.ids=null==n?[]:n}}();l.CipherBulkDeleteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.ids=null==n?[]:n,this.folderId=l}}();l.CipherBulkMoveRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(467),u=function(){return function(n,l){var e=this;null!=n&&(this.ciphers=[],n.forEach(function(n){e.ciphers.push(new t.CipherWithIdRequest(n))})),this.collectionIds=l}}();l.CipherBulkShareRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(193),u=function(){return function(n){this.cipher=new t.CipherRequest(n),this.collectionIds=n.collectionIds}}();l.CipherShareRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l,e){this.children=[],this.parent=e,this.node=n,this.node.name=l}}();l.TreeNode=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EncryptedObject=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentUrls=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(146),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,name:null},e,["id"]),t.revisionDate=null!=l.revisionDate?new Date(l.revisionDate):null,t)}return u(l,n),l.prototype.decrypt=function(){return this.decryptObj(new r.FolderView(this),{name:null},null)},l}(e(109).default);l.Folder=o},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.password=n,this.date=l}}();l.GeneratedPasswordHistory=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.status=n.status,this.type=n.type,this.enabled=n.enabled,this.useGroups=n.useGroups,this.useDirectory=n.useDirectory,this.useEvents=n.useEvents,this.useTotp=n.useTotp,this.use2fa=n.use2fa,this.selfHost=n.selfHost,this.usersGetPremium=n.usersGetPremium,this.seats=n.seats,this.maxCollections=n.maxCollections,this.maxStorageGb=n.maxStorageGb}}();l.OrganizationData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(262),u=e(241),r=function(){function n(n){null!=n&&(this.id=n.id,this.name=n.name,this.status=n.status,this.type=n.type,this.enabled=n.enabled,this.useGroups=n.useGroups,this.useDirectory=n.useDirectory,this.useEvents=n.useEvents,this.useTotp=n.useTotp,this.use2fa=n.use2fa,this.selfHost=n.selfHost,this.usersGetPremium=n.usersGetPremium,this.seats=n.seats,this.maxCollections=n.maxCollections,this.maxStorageGb=n.maxStorageGb)}return Object.defineProperty(n.prototype,"canAccess",{get:function(){return this.type===u.OrganizationUserType.Owner||this.enabled&&this.status===t.OrganizationUserStatusType.Confirmed},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isManager",{get:function(){return this.type===u.OrganizationUserType.Manager||this.type===u.OrganizationUserType.Owner||this.type===u.OrganizationUserType.Admin},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isAdmin",{get:function(){return this.type===u.OrganizationUserType.Owner||this.type===u.OrganizationUserType.Admin},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isOwner",{get:function(){return this.type===u.OrganizationUserType.Owner},enumerable:!0,configurable:!0}),n}();l.Organization=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0?this.browserCache=o.DeviceType.OperaBrowser:-1!==navigator.userAgent.indexOf(" Edge/")?this.browserCache=o.DeviceType.EdgeBrowser:-1!==navigator.userAgent.indexOf(" Vivaldi/")?this.browserCache=o.DeviceType.VivaldiBrowser:-1!==navigator.userAgent.indexOf(" Safari/")&&-1===navigator.userAgent.indexOf("Chrome")?this.browserCache=o.DeviceType.SafariBrowser:window.chrome&&-1!==navigator.userAgent.indexOf(" Chrome/")?this.browserCache=o.DeviceType.ChromeBrowser:-1!==navigator.userAgent.indexOf(" Trident/")?this.browserCache=o.DeviceType.IEBrowser:this.browserCache=o.DeviceType.UnknownBrowser,this.browserCache)},n.prototype.getDeviceString=function(){return o.DeviceType[this.getDevice()].toLowerCase().replace("browser","")},n.prototype.isFirefox=function(){return this.getDevice()===o.DeviceType.FirefoxBrowser},n.prototype.isChrome=function(){return this.getDevice()===o.DeviceType.ChromeBrowser},n.prototype.isEdge=function(){return this.getDevice()===o.DeviceType.EdgeBrowser},n.prototype.isOpera=function(){return this.getDevice()===o.DeviceType.OperaBrowser},n.prototype.isVivaldi=function(){return this.getDevice()===o.DeviceType.VivaldiBrowser},n.prototype.isSafari=function(){return this.getDevice()===o.DeviceType.SafariBrowser},n.prototype.isIE=function(){return this.getDevice()===o.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,r=null,o=t.toLowerCase(),i=!0;if(o.endsWith(".pdf")?(r="application/pdf",i=!1):o.endsWith(".xlsx")?r="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":o.endsWith(".docx")?r="application/vnd.openxmlformats-officedocument.wordprocessingml.document":o.endsWith(".pptx")?r="application/vnd.openxmlformats-officedocument.presentationml.presentation":o.endsWith(".csv")?r="text/csv":o.endsWith(".png")?r="image/png":o.endsWith(".jpg")||o.endsWith(".jpeg")?r="image/jpeg":o.endsWith(".gif")&&(r="image/gif"),null!=r&&null==(e=e||{}).type&&(e.type=r),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.9.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,r,o){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!=r&&t.unshift(r),i=document.createElement("div"),null!=o){switch((s=document.createElement("i")).classList.add("swal-custom-icon"),o){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 r=t.body;this.isFirefox()&&t.body.classList.contains("modal-open")&&(r=t.body.querySelector(".modal")),r.appendChild(u),u.select();try{t.execCommand("copy")}catch(n){console.warn("Copy to clipboard failed.",n)}finally{r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(n=n.substring(0,l)),0!==n.indexOf("!/")&&0!==n.indexOf("#/")||(n=n.substring(1));var e=n.split("/"),t=[];return e.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)?t.push("__guid__"):t.push(n)}),encodeURIComponent(t.join("/"))},n}();l.Analytics=a},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&n.data.forEach(function(n){var t=new a.Collection(new d.CollectionData(n));l.push(t.decrypt().then(function(n){e.push(n)}))}),Promise.all(l)})),f.push(this.apiService.getCiphersOrganization(n).then(function(n){var l=[];return null!=n&&null!=n.data&&n.data.length>0&&n.data.forEach(function(n){var e=new i.Cipher(new s.CipherData(n));l.push(e.decrypt().then(function(n){t.push(n)}))}),Promise.all(l)})),[4,Promise.all(f)];case 1:return u.sent(),"csv"===l?(v=new Map,e.forEach(function(n){v.set(n.id,n)}),h=[],t.forEach(function(n){if(n.type===o.CipherType.Login||n.type===o.CipherType.SecureNote){var l={collections:[]};null!=n.collectionIds&&(l.collections=n.collectionIds.filter(function(n){return v.has(n)}).map(function(n){return v.get(n).name})),m.buildCommonCipher(l,n),h.push(l)}}),[2,r.unparse(h)]):(g={collections:[],items:[]},e.forEach(function(n){var l=new p.CollectionWithId;l.build(n),g.collections.push(l)}),t.forEach(function(n){var l=new c.CipherWithIds;l.build(n),g.items.push(l)}),[2,JSON.stringify(g,null," ")])}})})},n.prototype.getFileName=function(n,l){void 0===n&&(n=null),void 0===l&&(l="csv");var e=new Date;return"bitwarden"+(n?"_"+n:"")+"_export_"+(e.getFullYear()+""+this.padNumber(e.getMonth()+1,2)+this.padNumber(e.getDate(),2)+this.padNumber(e.getHours(),2)+this.padNumber(e.getMinutes(),2)+this.padNumber(e.getSeconds(),2))+"."+l},n.prototype.padNumber=function(n,l,e){void 0===e&&(e="0");var t=n.toString();return t.length>=l?t:new Array(l-t.length+1).join(e)+t},n.prototype.buildCommonCipher=function(n,l){switch(n.type=null,n.name=l.name,n.notes=l.notes,n.fields=null,n.login_uri=null,n.login_username=null,n.login_password=null,n.login_totp=null,l.fields&&l.fields.forEach(function(l){n.fields?n.fields+="\n":n.fields="",n.fields+=(l.name||"")+": "+l.value}),l.type){case o.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 o.CipherType.SecureNote:n.type="note";break;default:return}return n},n}();l.ExportService=v},,function(n,l){},,function(n,l){},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(135),r=e(991),o=e(992),i=e(993),a=e(994),s=e(996),d=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId=null,l.folderId=null,l.type=t.CipherType.Login,l.name="Item name",l.notes="Some notes about this item.",l.favorite=!1,l.fields=[],l.login=null,l.secureNote=null,l.card=null,l.identity=null,l},n.toView=function(n,l){switch(void 0===l&&(l=new u.CipherView),l.type=n.type,l.folderId=n.folderId,null==l.organizationId&&(l.organizationId=n.organizationId),l.name=n.name,l.notes=n.notes,l.favorite=n.favorite,null!=n.fields&&(l.fields=n.fields.map(function(n){return o.Field.toView(n)})),n.type){case t.CipherType.Login:l.login=a.Login.toView(n.login);break;case t.CipherType.SecureNote:l.secureNote=s.SecureNote.toView(n.secureNote);break;case t.CipherType.Card:l.card=r.Card.toView(n.card);break;case t.CipherType.Identity:l.identity=i.Identity.toView(n.identity)}return l},n.prototype.build=function(n){switch(this.organizationId=n.organizationId,this.folderId=n.folderId,this.type=n.type,this.name=n.name,this.notes=n.notes,this.favorite=n.favorite,null!=n.fields&&(this.fields=n.fields.map(function(n){return new o.Field(n)})),n.type){case t.CipherType.Login:this.login=new a.Login(n.login);break;case t.CipherType.SecureNote:this.secureNote=new s.SecureNote(n.secureNote);break;case t.CipherType.Card:this.card=new r.Card(n.card);break;case t.CipherType.Identity:this.identity=new i.Identity(n.identity)}},n}();l.Cipher=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(88),u=function(){function n(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}return n.template=function(){var l=new n;return l.cardholderName="John Doe",l.brand="visa",l.number="4242424242424242",l.expMonth="04",l.expYear="2023",l.code="123",l},n.toView=function(n,l){return void 0===l&&(l=new t.CardView),l.cardholderName=n.cardholderName,l.brand=n.brand,l.number=n.number,l.expMonth=n.expMonth,l.expYear=n.expYear,l.code=n.code,l},n}();l.Card=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(194),u=e(195),r=function(){function n(n){null!=n&&(this.name=n.name,this.value=n.value,this.type=n.type)}return n.template=function(){var l=new n;return l.name="Field name",l.value="Some value",l.type=t.FieldType.Text,l},n.toView=function(n,l){return void 0===l&&(l=new u.FieldView),l.type=n.type,l.value=n.value,l.name=n.name,l},n}();l.Field=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(170),u=function(){function n(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}return n.template=function(){var l=new n;return l.title="Mr",l.firstName="John",l.middleName="William",l.lastName="Doe",l.address1="123 Any St",l.address2="Apt #123",l.address3=null,l.city="New York",l.state="NY",l.postalCode="10001",l.country="US",l.company="Acme Inc.",l.email="john@company.com",l.phone="5555551234",l.ssn="000-123-4567",l.username="jdoe",l.passportNumber="US-123456789",l.licenseNumber="D123-12-123-12333",l},n.toView=function(n,l){return void 0===l&&(l=new t.IdentityView),l.title=n.title,l.firstName=n.firstName,l.middleName=n.middleName,l.lastName=n.lastName,l.address1=n.address1,l.address2=n.address2,l.address3=n.address3,l.city=n.city,l.state=n.state,l.postalCode=n.postalCode,l.country=n.country,l.company=n.company,l.email=n.email,l.phone=n.phone,l.ssn=n.ssn,l.username=n.username,l.passportNumber=n.passportNumber,l.licenseNumber=n.licenseNumber,l},n}();l.Identity=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(995),u=e(145),r=function(){function n(n){null!=n&&(null!=n.uris&&(this.uris=n.uris.map(function(n){return new t.LoginUri(n)})),this.username=n.username,this.password=n.password,this.totp=n.totp)}return n.template=function(){var l=new n;return l.uris=[],l.username="jdoe",l.password="myp@ssword123",l.totp="JBSWY3DPEHPK3PXP",l},n.toView=function(n,l){return void 0===l&&(l=new u.LoginView),null!=n.uris&&(l.uris=n.uris.map(function(n){return t.LoginUri.toView(n)})),l.username=n.username,l.password=n.password,l.totp=n.totp,l},n}();l.Login=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(234),u=function(){function n(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}return n.template=function(){var l=new n;return l.uri="https://google.com",l.match=null,l},n.toView=function(n,l){return void 0===l&&(l=new t.LoginUriView),l.uri=n.uri,l.match=n.match,l},n}();l.LoginUri=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(108),u=e(89),r=function(){function n(n){null!=n&&(this.type=n.type)}return n.template=function(){var l=new n;return l.type=t.SecureNoteType.Generic,l},n.toView=function(n,l){return void 0===l&&(l=new u.SecureNoteView),l.type=n.type,l},n}();l.SecureNote=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(147),u=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId="00000000-0000-0000-0000-000000000000",l.name="Collection name",l},n.toView=function(n,l){return void 0===l&&(l=new t.CollectionView),l.name=n.name,null==l.organizationId&&(l.organizationId=n.organizationId),l},n.prototype.build=function(n){this.organizationId=n.organizationId,this.name=n.name},n}();l.Collection=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(146),u=function(){function n(){}return n.template=function(){var l=new n;return l.name="Folder name",l},n.toView=function(n,l){return void 0===l&&(l=new t.FolderView),l.name=n.name,l},n.prototype.build=function(n){this.name=n.name},n}();l.Folder=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(r=Math.floor(t.ciphers.length/2),o=t.ciphers.length-1,this.badData(t.ciphers[0])&&this.badData(t.ciphers[r])&&this.badData(t.ciphers[o]))?[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 g.BitwardenCsvImporter;case"bitwardenjson":return new m.BitwardenJsonImporter;case"lastpasscsv":case"passboltcsv":return new E.LastPassCsvImporter;case"keepassxcsv":return new N.KeePassXCsvImporter;case"aviracsv":return new h.AviraCsvImporter;case"blurcsv":return new y.BlurCsvImporter;case"safeincloudxml":return new H.SafeInCloudXmlImporter;case"padlockcsv":return new D.PadlockCsvImporter;case"keepass2xml":return new O.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new C.ChromeCsvImporter;case"firefoxcsv":return new R.FirefoxCsvImporter;case"upmcsv":return new Z.UpmCsvImporter;case"saferpasscsv":return new $.SaferPassCsvImporter;case"meldiumcsv":return new P.MeldiumCsvImporter;case"1password1pif":return new x.OnePassword1PifImporter;case"1passwordwincsv":return new M.OnePasswordWinCsvImporter;case"keepercsv":return new T.KeeperCsvImporter;case"passworddragonxml":return new j.PasswordDragonXmlImporter;case"enpasscsv":return new S.EnpassCsvImporter;case"enpassjson":return new _.EnpassJsonImporter;case"pwsafexml":return new q.PasswordSafeXmlImporter;case"dashlanejson":return new w.DashlaneJsonImporter;case"msecurecsv":return new V.MSecureCsvImporter;case"stickypasswordxml":return new Y.StickyPasswordXmlImporter;case"truekeycsv":return new J.TrueKeyCsvImporter;case"clipperzhtml":return new b.ClipperzHtmlImporter;case"roboformcsv":return new K.RoboFormCsvImporter;case"ascendocsv":return new f.AscendoCsvImporter;case"passwordbossjson":return new G.PasswordBossJsonImporter;case"zohovaultcsv":return new X.ZohoVaultCsvImporter;case"splashidcsv":return new W.SplashIdCsvImporter;case"passkeepcsv":return new U.PassKeepCsvImporter;case"gnomejson":return new k.GnomeJsonImporter;case"passwordagentcsv":return new z.PasswordAgentCsvImporter;case"passpackcsv":return new L.PasspackCsvImporter;case"passmanjson":return new F.PassmanJsonImporter;case"avastcsv":return new v.AvastCsvImporter;case"fsecurefsk":return new I.FSecureFskImporter;case"kasperskytxt":return new A.KasperskyTxtImporter;case"remembearcsv":return new B.RememBearCsvImporter;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,r,o,f;return u(this,function(u){switch(u.label){case 0:if(null!=l)return[3,10];e=new d.ImportCiphersRequest,o=0,u.label=1;case 1:return o2&&n.length%2==0)for(var u=0;u-1?t.login.password=l.getValueOrDefault(r):null==t.login.username&&l.usernameFieldNames.indexOf(i)>-1?t.login.username=l.getValueOrDefault(r):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(i)>-1?t.login.uris=l.makeUriArray(r):l.processKvp(t,o,r)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.AscendoCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name),t.login.uris=l.makeUriArray(n.web),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.login),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.AvastCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.AviraCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(135),a=e(147),s=e(195),d=e(145),c=e(89),p=e(38),f=e(194),v=e(108),h=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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;uo+2&&(h.value=u[r].substr(o+2)),t.fields.push(h)}}switch(null!=n.type?n.type.toLowerCase():null){case"note":t.type=p.CipherType.SecureNote,t.secureNote=new c.SecureNoteView,t.secureNote.type=v.SecureNoteType.Generic;break;default:t.type=p.CipherType.Login,t.login=new d.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}(r.BaseImporter);l.BitwardenCsvImporter=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(643),a=e(644),s=e(645),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||null==t.items||0===t.items.length)return e.success=!1,e;var u=new Map;return this.organization&&null!=t.collections?t.collections.forEach(function(n){var l=a.CollectionWithId.toView(n);null!=l&&(l.id=null,l.organizationId=null,u.set(n.id,e.collections.length),e.collections.push(l))}):this.organization||null==t.folders||t.folders.forEach(function(n){var l=s.FolderWithId.toView(n);null!=l&&(l.id=null,u.set(n.id,e.folders.length),e.folders.push(l))}),t.items.forEach(function(n){var t=i.CipherWithIds.toView(n);t.id=null,t.folderId=null,t.organizationId=null,t.collectionIds=null,!l.organization&&null!=n.folderId&&u.has(n.folderId)?e.folderRelationships.push([e.ciphers.length,u.get(n.folderId)]):l.organization&&null!=n.collectionIds&&n.collectionIds.forEach(function(n){u.has(n)&&e.collectionRelationships.push([e.ciphers.length,u.get(n)])}),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e},l}(r.BaseImporter);l.BitwardenJsonImporter=d},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.BlurCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.ChromeCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=n.currentVersion.fields[u];switch(null!=r.actionType?r.actionType.toLowerCase():null){case"password":t.login.password=l.getValueOrDefault(r.value);break;case"email":case"username":case"user":case"name":t.login.username=l.getValueOrDefault(r.value);break;case"url":t.login.uris=l.makeUriArray(r.value);break;default:var o=null!=r.label?r.label.toLowerCase():null;null==t.login.password&&l.passwordFieldNames.indexOf(o)>-1?t.login.password=l.getValueOrDefault(r.value):null==t.login.username&&l.usernameFieldNames.indexOf(o)>-1?t.login.username=l.getValueOrDefault(r.value):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(o)>-1?t.login.uris=l.makeUriArray(r.value):l.processKvp(t,r.label,r.value)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.ClipperzHtmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(135),s=e(170),d=e(89),c=e(38),p=e(108),f=new Set(["ADDRESS","AUTHENTIFIANT","BANKSTATEMENT","IDCARD","IDENTITY","PAYMENTMEANS_CREDITCARD","PAYMENTMEAN_PAYPAL","EMAIL"]),v=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){this.result=new o.ImportResult;var l=JSON.parse(n);if(null==l||0===l.length)return this.result.success=!1,this.result;for(var e in null!=l.ADDRESS&&this.processAddress(l.ADDRESS),null!=l.AUTHENTIFIANT&&this.processAuth(l.AUTHENTIFIANT),null!=l.BANKSTATEMENT&&this.processNote(l.BANKSTATEMENT,"BankAccountName"),null!=l.IDCARD&&this.processNote(l.IDCARD,"Fullname"),null!=l.PAYMENTMEANS_CREDITCARD&&this.processCard(l.PAYMENTMEANS_CREDITCARD),null!=l.IDENTITY&&this.processIdentity(l.IDENTITY),l)l.hasOwnProperty(e)&&!f.has(e)&&this.processNote(l[e],null,"Generic Note");return this.result.success=!0,this.result},l.prototype.processAuth=function(n){var l=this;n.forEach(function(n){var e=l.initLoginCipher();e.name=l.getValueOrDefault(n.title),e.login.username=l.getValueOrDefault(n.login,l.getValueOrDefault(n.secondaryLogin)),l.isNullOrWhitespace(e.login.username)?e.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(e.notes="Email: "+n.email+"\n"),e.login.password=l.getValueOrDefault(n.password),e.login.uris=l.makeUriArray(n.domain),e.notes+=l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(e),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processIdentity=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.identity=new s.IdentityView,e.type=c.CipherType.Identity,e.name=l.getValueOrDefault(n.fullName,"");var t=e.name.split(" ");t.length>0&&(e.identity.firstName=l.getValueOrDefault(t[0])),2===t.length?e.identity.lastName=l.getValueOrDefault(t[1]):3===t.length&&(e.identity.middleName=l.getValueOrDefault(t[1]),e.identity.lastName=l.getValueOrDefault(t[2])),e.identity.username=l.getValueOrDefault(n.pseudo),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processAddress=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.identity=new s.IdentityView,e.type=c.CipherType.Identity,e.name=l.getValueOrDefault(n.addressName),e.identity.address1=l.getValueOrDefault(n.addressFull),e.identity.city=l.getValueOrDefault(n.city),e.identity.state=l.getValueOrDefault(n.state),e.identity.postalCode=l.getValueOrDefault(n.zipcode),e.identity.country=l.getValueOrDefault(n.country),null!=e.identity.country&&(e.identity.country=e.identity.country.toUpperCase()),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processCard=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.card=new i.CardView,e.type=c.CipherType.Card,e.name=l.getValueOrDefault(n.bank),e.card.number=l.getValueOrDefault(n.cardNumber),e.card.brand=l.getCardBrand(e.card.number),e.card.cardholderName=l.getValueOrDefault(n.owner),l.isNullOrWhitespace(e.card.brand)||(l.isNullOrWhitespace(e.name)?e.name=e.card.brand:e.name+=" - "+e.card.brand),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processNote=function(n,l,e){var t=this;void 0===e&&(e=null),n.forEach(function(n){var u=new a.CipherView;for(var r in u.secureNote=new d.SecureNoteView,u.type=c.CipherType.SecureNote,u.secureNote.type=p.SecureNoteType.Generic,u.name=null!=e?e:t.getValueOrDefault(n[l]),n)n.hasOwnProperty(r)&&r!==l&&t.processKvp(u,r,n[r].toString());t.cleanupCipher(u),t.result.ciphers.push(u)})},l}(r.BaseImporter);l.DashlaneJsonImporter=v},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(108),s=e(88),d=e(89),c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=!0;return t.forEach(function(n){if(n.length<2||u&&("Title"===n[0]||"title"===n[0]))u=!1;else{var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[n.length-1]),t.name=l.getValueOrDefault(n[0],"--"),2!==n.length&&(l.containsField(n,"username")||l.containsField(n,"password")||l.containsField(n,"email")||l.containsField(n,"url"))||(t.type=i.CipherType.SecureNote,t.secureNote=new d.SecureNoteView,t.secureNote.type=a.SecureNoteType.Generic),l.containsField(n,"cardholder")&&l.containsField(n,"number")&&l.containsField(n,"expiry date")&&(t.type=i.CipherType.Card,t.card=new s.CardView),n.length>2&&n.length%2==0)for(var r=0;r0},l}(r.BaseImporter);l.EnpassCsvImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||null==t.items||0===t.items.length?(e.success=!1,e):(t.items.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title),t.favorite=n.favorite>0,null!=n.template_type&&null!=n.fields&&n.fields.length>0&&(0===n.template_type.indexOf("login.")||0===n.template_type.indexOf("password.")?l.processLogin(t,n.fields):0===n.template_type.indexOf("creditcard.")?l.processCard(t,n.fields):n.template_type.indexOf("identity.")<0&&n.fields.some(function(n){return"password"===n.type&&!l.isNullOrWhitespace(n.value)})?l.processLogin(t,n.fields):l.processNote(t,n.fields)),t.notes+="\n"+l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l.prototype.processLogin=function(n,l){var e=this,t=[];l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||("username"!==l.type&&"email"!==l.type||!e.isNullOrWhitespace(n.login.username)?"password"===l.type&&e.isNullOrWhitespace(n.login.password)?n.login.password=l.value:"totp"===l.type&&e.isNullOrWhitespace(n.login.totp)?n.login.totp=l.value:"url"===l.type?t.push(l.value):e.processKvp(n,l.label,l.value):n.login.username=l.value)}),n.login.uris=this.makeUriArray(t)},l.prototype.processCard=function(n,l){var e=this;n.card=new i.CardView,n.type=a.CipherType.Card,l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||"ccType"===l.type||("ccName"===l.type&&e.isNullOrWhitespace(n.card.cardholderName)?n.card.cardholderName=l.value:"ccNumber"===l.type&&e.isNullOrWhitespace(n.card.number)?(n.card.number=l.value,n.card.brand=e.getCardBrand(n.card.number)):"ccCvc"===l.type&&e.isNullOrWhitespace(n.card.code)?n.card.code=l.value:"ccExpiry"===l.type&&e.isNullOrWhitespace(n.card.expYear)&&e.setCardExpiration(n,l.value)||e.processKvp(n,l.label,l.value))})},l.prototype.processNote=function(n,l){var e=this;l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||e.processKvp(n,l.label,l.value)})},l}(r.BaseImporter);l.EnpassJsonImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.FirefoxCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=new o.ImportResult,e=JSON.parse(n);if(null==e||null==e.data)return l.success=!1,l;for(var t in e.data)if(e.data.hasOwnProperty(t)){var u=e.data[t],r=this.initLoginCipher();if(r.name=this.getValueOrDefault(u.service),r.notes=this.getValueOrDefault(u.notes),"website"===u.style)r.login.username=this.getValueOrDefault(u.username),r.login.password=this.getValueOrDefault(u.password),r.login.uris=this.makeUriArray(u.url);else{if("creditcard"!==u.style)continue;r.type=a.CipherType.Card,r.card=new i.CardView,r.card.cardholderName=this.getValueOrDefault(u.username),r.card.number=this.getValueOrDefault(u.creditNumber),r.card.brand=this.getCardBrand(r.card.number),r.card.code=this.getValueOrDefault(u.creditCvv),this.isNullOrWhitespace(u.creditExpiry)||this.setCardExpiration(r,u.creditExpiry)||this.processKvp(r,"Expiration",u.creditExpiry),this.isNullOrWhitespace(u.password)||this.processKvp(r,"PIN",u.password)}this.convertToNoteIfNeeded(r),this.cleanupCipher(r),l.ciphers.push(r)}return l.success=!0,l},l}(r.BaseImporter);l.FSecureFskImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r in u.login.username=null!=t.attributes?l.getValueOrDefault(t.attributes.username_value):null,t.attributes)t.attributes.hasOwnProperty(r)&&"username_value"!==r&&"xdg:schema"!==r&&l.processKvp(u,r,t.attributes[r]);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}(r.BaseImporter);l.GnomeJsonImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l,e,t,u,r=this,i=new o.ImportResult,a=this.splitNewLine(n).join("\n");-1!==a.indexOf("Notes\n\n")&&((u=a.split("Notes\n\n")).length>1&&(a=u[0],l=u[1]));-1!==a.indexOf("Applications\n\n")&&((u=a.split("Applications\n\n")).length>1&&(a=u[0],e=u[1]));0===a.indexOf("Websites\n\n")&&((u=a.split("Websites\n\n")).length>1&&(a=u[0],t=u[1]));var s=this.parseDataCategory(l),d=this.parseDataCategory(e),c=this.parseDataCategory(t);return s.forEach(function(n){var l=r.initLoginCipher();l.name=r.getValueOrDefault(n.get("Name")),l.notes=r.getValueOrDefault(n.get("Text")),r.cleanupCipher(l),i.ciphers.push(l)}),c.concat(d).forEach(function(n){var l=r.initLoginCipher(),e=n.has("Website name")?"Website name":"Application";l.name=r.getValueOrDefault(n.get(e),""),r.isNullOrWhitespace(n.get("Login name"))||(r.isNullOrWhitespace(l.name)||(l.name+=": "),l.name+=n.get("Login name")),l.notes=r.getValueOrDefault(n.get("Comment")),n.has("Website URL")&&(l.login.uris=r.makeUriArray(n.get("Website URL"))),l.login.username=r.getValueOrDefault(n.get("Login")),l.login.password=r.getValueOrDefault(n.get("Password")),r.cleanupCipher(l),i.ciphers.push(l)}),i.success=!0,i},l.prototype.parseDataCategory=function(n){if(this.isNullOrWhitespace(n)||-1===n.indexOf("\n---\n"))return[];var l=[];return n.split("\n---\n").forEach(function(n){if(-1!==n.indexOf("\n")){var e,t,u=new Map;n.split("\n").forEach(function(n){if(null==e){var l,r,o=n.indexOf(":");-1!==o&&(l=n.substring(0,o),n.length>o+1&&(r=n.substring(o+2)),null!=l&&u.set(l,r),"Comment"!==l&&"Text"!==l||(e=r,t=l))}else e+="\n"+n}),null!=e&&null!=t&&u.set(t,e),0!==u.size&&l.push(u)}}),l},l}(r.BaseImporter);l.KasperskyTxtImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(146),a=function(n){function l(){var l=null!==n&&n.apply(this,arguments)||this;return l.result=new o.ImportResult,l}return u(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,r=e;if(!l){""!==r&&(r+="/");var o=this.querySelectorDirectChild(n,"Name");r+=null==o?"-":o.textContent;var a=new i.FolderView;a.name=r,this.result.folders.push(a)}this.querySelectorAllDirectChild(n,"Entry").forEach(function(n){var e=t.result.ciphers.length,r=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"),o=null!=u?u.textContent:null;"URL"===o?r.login.uris=t.makeUriArray(e):"UserName"===o?r.login.username=e:"Password"===o?r.login.password=e:"Title"===o?r.name=e:"Notes"===o?r.notes+=e+"\n":t.processKvp(r,o,e)}}),t.cleanupCipher(r),t.result.ciphers.push(r),l||t.result.folderRelationships.push([e,u])}),this.querySelectorAllDirectChild(n,"Group").forEach(function(n){t.traverse(n,!1,r)})},l}(r.BaseImporter);l.KeePass2XmlImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.KeePassXCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 d.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 r=this.parseSecureNoteMapping(e,{Number:"number","Name on Card":"cardholderName","Security Code":"code"});l.type=f.CipherType.Card,l.card=r[0],l.notes=r[1]}else if("Address"===u[1]){r=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=f.CipherType.Identity,l.identity=r[0],l.notes=r[1]}t=!0}}t||(l.secureNote=new p.SecureNoteView,l.secureNote.type=v.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){if(!e.isNullOrWhitespace(n)){var r=null,o=null,i=n.indexOf(":");-1===i?r=n:(r=n.substring(0,i),n.length>i&&(o=n.substring(i+1))),e.isNullOrWhitespace(r)||e.isNullOrWhitespace(o)||"NoteType"===r||("Notes"===r?e.isNullOrWhitespace(t)?t=o:t+="\n"+o:l.hasOwnProperty(r)?u[l[r]]=o:(e.isNullOrWhitespace(t)?t="":t+="\n",t+=r+": "+o))}}),[u,t]},l}(r.BaseImporter);l.LastPassCsvImporter=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.MeldiumCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(108),s=e(89),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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=i.CipherType.SecureNote,u.secureNote=new s.SecureNoteView,u.secureNote.type=a.SecureNoteType.Generic;for(var r=3;r0&&(l.login.uris=this.makeUriArray(t))}null!=n.secureContents.fields&&this.parseFields(n.secureContents.fields,l,"designation","value","name"),null!=n.secureContents.sections&&n.secureContents.sections.forEach(function(n){null!=n.fields&&e.parseFields(n.fields,l,"n","v","t")})}},l.prototype.parseFields=function(n,l,e,t,u){var r=this;n.forEach(function(n){if(null!=n[t]&&""!==n[t].toString().trim()){var o=n[t].toString(),i=null!=n[e]?n[e].toString():null;if(l.type===s.CipherType.Login){if(r.isNullOrWhitespace(l.login.username)&&"username"===i)return void(l.login.username=o);if(r.isNullOrWhitespace(l.login.password)&&"password"===i)return void(l.login.password=o);if(r.isNullOrWhitespace(l.login.totp)&&null!=i&&i.startsWith("TOTP_"))return void(l.login.totp=o)}else if(l.type===s.CipherType.Card){if(r.isNullOrWhitespace(l.card.number)&&"ccnum"===i)return l.card.number=o,void(l.card.brand=r.getCardBrand(o));if(r.isNullOrWhitespace(l.card.code)&&"cvv"===i)return void(l.card.code=o);if(r.isNullOrWhitespace(l.card.cardholderName)&&"cardholder"===i)return void(l.card.cardholderName=o);if(r.isNullOrWhitespace(l.card.expiration)&&"expiry"===i&&6===o.length)return l.card.expMonth=o.substr(4,2),"0"===l.card.expMonth[0]&&(l.card.expMonth=l.card.expMonth.substr(1,1)),void(l.card.expYear=o.substr(0,4));if("type"===i)return}var a=r.isNullOrWhitespace(n[u])?"no_name":n[u];r.processKvp(l,a,o)}})},l}(r.BaseImporter);l.OnePassword1PifImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(1026),s=["ainfo","autosubmit","notesPlain","ps","scope","tags","title","uuid"],d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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)){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title,"--"),t.notes=l.getValueOrDefault(n.notesPlain,"")+"\n",l.isNullOrWhitespace(n.number)||l.isNullOrWhitespace(n["expiry date"])||(t.type=i.CipherType.Card,t.card=new a.CardView);var u=null;for(var r in n)if(n.hasOwnProperty(r)&&!l.isNullOrWhitespace(n[r])){if(t.type===i.CipherType.Login){if(l.isNullOrWhitespace(t.login.password)&&"password"===r){t.login.password=n[r];continue}if(l.isNullOrWhitespace(t.login.username)&&"username"===r){t.login.username=n[r];continue}if((null==t.login.uris||0===t.login.uri.length)&&"urls"===r){var o=n[r].split(l.newLineRegex);t.login.uris=l.makeUriArray(o);continue}}else if(t.type===i.CipherType.Card){if(l.isNullOrWhitespace(t.card.number)&&"number"===r){t.card.number=n[r],t.card.brand=l.getCardBrand(n.number);continue}if(l.isNullOrWhitespace(t.card.code)&&"verification number"===r){t.card.code=n[r];continue}if(l.isNullOrWhitespace(t.card.cardholderName)&&"cardholder name"===r){t.card.cardholderName=n[r];continue}if(l.isNullOrWhitespace(t.card.expiration)&&"expiry date"===r&&6===n[r].length){t.card.expMonth=n[r].substr(4,2),"0"===t.card.expMonth[0]&&(t.card.expMonth=t.card.expMonth.substr(1,1)),t.card.expYear=n[r].substr(0,4);continue}if("type"===r)continue}-1!==s.indexOf(r)||r.startsWith("section:")||(null==u&&"email"===r&&(u=n[r]),l.processKvp(t,r,n[r]))}t.type===i.CipherType.Login&&!l.isNullOrWhitespace(u)&&l.isNullOrWhitespace(t.login.username)&&-1===u.indexOf("://")&&(t.login.username=u),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.OnePasswordWinCsvImporter=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(583);l.AttachmentView=t.AttachmentView;var u=e(88);l.CardView=u.CardView;var r=e(135);l.CipherView=r.CipherView;var o=e(195);l.FieldView=o.FieldView;var i=e(170);l.IdentityView=i.IdentityView;var a=e(234);l.LoginUriView=a.LoginUriView;var s=e(145);l.LoginView=s.LoginView;var d=e(89);l.SecureNoteView=d.SecureNoteView;var c=e(1027);l.View=c.View},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.View=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(147),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=null;return t.forEach(function(n){if(null!=u){if(!(n.length<2||n.length!==u.length)){if(!l.isNullOrWhitespace(n[1]))if(l.organization){(t=n[1].split(",")).forEach(function(n){n=n.trim();for(var l=!0,t=e.collections.length,u=0;u0?t[0].trim():null;l.processFolder(e,r)}var o=l.initLoginCipher();o.name=l.getValueOrDefault(n[0],"--");for(var a=2;a-1?o.login.username=n[a]:l.passwordFieldNames.indexOf(s)>-1?o.login.password=n[a]:l.uriFieldNames.indexOf(s)>-1?o.login.uris=l.makeUriArray(n[a]):l.processKvp(o,u[a],n[a]))}l.cleanupCipher(o),e.ciphers.push(o)}}else u=n.map(function(n){return n})}),e.success=!0,e},l}(r.BaseImporter);l.PadlockCsvImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PassKeepCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PassmanJsonImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(147),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.initLoginCipher();r.notes=l.getValueOrDefault(n.Notes,""),r.notes+="\n\n"+l.getValueOrDefault(n["Shared Notes"],"")+"\n",r.name=l.getValueOrDefault(n["Entry Name"],"--"),r.login.username=l.getValueOrDefault(n["User ID"]),r.login.password=l.getValueOrDefault(n.Password),r.login.uris=l.makeUriArray(n.URL),null!=n.__parsed_extra&&n.__parsed_extra.length>0&&n.__parsed_extra.forEach(function(n){l.isNullOrWhitespace(n)||(r.notes+="\n"+n)});var o=l.isNullOrWhitespace(n["Extra Fields"])?null:JSON.parse(n["Extra Fields"]),a=null!=o&&null!=o.extraFields&&o.extraFields.length>0?o.extraFields.map(function(n){try{return JSON.parse(n)}catch(n){}return null}):null;null!=a&&a.forEach(function(n){null!=n&&l.processKvp(r,n.name,n.data)}),l.cleanupCipher(r),e.ciphers.push(r)}),e.success=!0,e)},l}(r.BaseImporter);l.PasspackCsvImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.initLoginCipher();r.notes=l.getValueOrDefault(n[3]),r.name=l.getValueOrDefault(n[0],"--"),r.login.username=l.getValueOrDefault(n[1]),r.login.password=l.getValueOrDefault(n[2]),r.login.uris=l.makeUriArray(n[4]),l.convertToNoteIfNeeded(r),l.cleanupCipher(r),e.ciphers.push(r)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(r.BaseImporter);l.PasswordAgentCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 i.CardView,t.type=a.CipherType.Card),n.identifiers)if(n.identifiers.hasOwnProperty(u)){var r=n.identifiers[u],o=null!=r?r.toString():null;if(!l.isNullOrWhitespace(o)&&"notes"!==u&&"ignoreItemInSecurityScore"!==u){if(t.type===a.CipherType.Card){if("cardNumber"===u){t.card.number=o,t.card.brand=l.getCardBrand(o);continue}if("nameOnCard"===u){t.card.cardholderName=o;continue}if("security_code"===u){t.card.code=o;continue}if("expires"===u){try{var s=new Date(o);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=o;continue}if("password"===u){t.login.password=o;continue}if((null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(u)>-1){t.login.uris=l.makeUriArray(o);continue}}l.processKvp(t,u,o)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.PasswordBossJsonImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.querySelectorDirectChild(n,"Account-Name"),o=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!=r?l.getValueOrDefault(r.textContent,"--"):"--",d.notes=null!=s?l.getValueOrDefault(s.textContent):"",d.login.username=null!=o?l.getValueOrDefault(o.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}(r.BaseImporter);l.PasswordDragonXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PasswordSafeXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(38),i=e(29),a=e(88),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new i.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if("true"!==n.trash){var t=l.initLoginCipher();if(t.name=l.getValueOrDefault(n.name),t.notes=l.getValueOrDefault(n.notes),"LoginItem"===n.type)t.login.uris=l.makeUriArray(n.website),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.username);else if("CreditCardItem"===n.type){t.type=o.CipherType.Card,t.card=new a.CardView,t.card.cardholderName=l.getValueOrDefault(n.cardholder),t.card.number=l.getValueOrDefault(n.number),t.card.brand=l.getCardBrand(t.card.number),t.card.code=l.getValueOrDefault(n.verification);try{var u=l.getValueOrDefault(n.expiryMonth);if(null!=u){var r=parseInt(u,null);null!=r&&r>=1&&r<=12&&(t.card.expMonth=r.toString())}}catch(n){}try{var i=l.getValueOrDefault(n.expiryYear);if(null!=i){var s=parseInt(i,null);null!=s&&(t.card.expYear=s.toString())}}catch(n){}var d=l.getValueOrDefault(n.pin);null!=d&&l.processKvp(t,"PIN",d);var c=l.getValueOrDefault(n.zipCode);null!=c&&l.processKvp(t,"Zip Code",c)}l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.RememBearCsvImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=!l.isNullOrWhitespace(n.Folder)&&n.Folder.startsWith("/")?n.Folder.replace("/",""):n.Folder,o=l.isNullOrWhitespace(r)?null:r;l.processFolder(e,o);var i=l.initLoginCipher();if(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.isNullOrWhitespace(n.Rf_fields)){var a=[n.Rf_fields];null!=n.__parsed_extra&&n.__parsed_extra.length>0&&(a=a.concat(n.__parsed_extra)),a.forEach(function(n){var e=n.split(":");if(!(e.length<3)){var t="-no-name-"===e[0]?null:e[0],u=4===e.length&&"rck"===e[2]?e[1]:e[2];l.processKvp(i,t,u)}})}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}(r.BaseImporter);l.RoboFormCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(146),a=e(89),s=e(38),d=e(108),c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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"),r=n.getAttribute("id");if(!l.isNullOrWhitespace(t)&&!l.isNullOrWhitespace(r)){u.set(r,e.folders.length);var o=new i.FolderView;o.name=t,e.folders.push(o)}}),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 r=t.textContent;!l.isNullOrWhitespace(r)&&u.has(r)&&e.folderRelationships.push([e.ciphers.length,u.get(r)])}var o=l.initLoginCipher();o.name=l.getValueOrDefault(n.getAttribute("title"),"--"),"note"===n.getAttribute("type")?(o.type=s.CipherType.SecureNote,o.secureNote=new a.SecureNoteView,o.secureNote.type=d.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?o.login.username=e:"password"===u?o.login.password=e:"notes"===u?o.notes+=e+"\n":"weblogin"===u||"website"===u?o.login.uris=l.makeUriArray(e):l.processKvp(o,t,e)}}),Array.from(l.querySelectorAllDirectChild(n,"notes")).forEach(function(n){o.notes+=n.textContent+"\n"}),l.cleanupCipher(o),e.ciphers.push(o)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(r.BaseImporter);l.SafeInCloudXmlImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.SaferPassCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=n.getAttribute("Name"),o=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(r),v.login.password=l.getValueOrDefault(o),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}(r.BaseImporter);l.StickyPasswordXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(89),s=e(38),d=e(108),c=["kind","autologin","favorite","hexcolor","protectedwithpassword","subdomainonly","type","tk_export_version","note","title","document_content"],p=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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=s.CipherType.Card,t.card=new i.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 r in t.type=s.CipherType.SecureNote,t.secureNote=new a.SecureNoteView,t.secureNote.type=d.SecureNoteType.Generic,l.isNullOrWhitespace(t.notes)||(t.notes=l.getValueOrDefault(n.document_content,"")),n)n.hasOwnProperty(r)&&c.indexOf(r.toLowerCase())<0&&!l.isNullOrWhitespace(n[r])&&l.processKvp(t,r,n[r]);l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.TrueKeyCsvImporter=p},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.UpmCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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),r=l.length>t?l.substring(t+1):null;if(!e.isNullOrWhitespace(u)&&!e.isNullOrWhitespace(r)&&"SecretType"!==u){var o=u.toLowerCase();null==n.login.username&&e.usernameFieldNames.indexOf(o)>-1?n.login.username=r:null==n.login.password&&e.passwordFieldNames.indexOf(o)>-1?n.login.password=r:e.processKvp(n,u,r)}}})},l}(r.BaseImporter);l.ZohoVaultCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r.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===o.CipherType.Card?n.subTitle.replace(/\*/g,""):n.subTitle}}),n.field("notes"),n.field("login.username",{extractor:function(n){return n.type===o.CipherType.Login&&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,o,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==(o=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=o.search(n.substr(1).trim())}catch(n){}else s=r.Query.wildcard.LEADING|r.Query.wildcard.TRAILING,a=o.query(function(l){r.tokenizer(n).forEach(function(n){var e=n.toString();l.term(e,{fields:["name"],wildcard:s}),l.term(e,{fields:["subtitle"],wildcard:s}),l.term(e,{fields:["login.uris"],wildcard:s}),l.term(e,{})})});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(n.type!==o.CipherType.Login||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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=r.pbkdf2(a,s,i,t,e),[2,o.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?r.md.md5.create():r.md.sha1.create(),t=this.toByteString(n),e.update(t,"raw"),[2,o.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=r.hmac.create(),i=this.toByteString(l),a=this.toByteString(n),t.start(e,i),t.update(a,"raw"),[2,o.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,r,o,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 r=u.sent(),[4,this.subtle.sign(t,r,n)];case 3:return o=u.sent(),[4,this.subtle.sign(t,r,l)];case 4:if(i=u.sent(),o.byteLength!==i.byteLength)return[2,!1];for(a=new Uint8Array(o),s=new Uint8Array(i),d=0;d1&&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});var t=function(){return function(){}}();l.MessagingService=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.CipherService=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=e(637),u=e(135),r=e(147),o=e(234),i=e(37),a=e(195),s=e(146),d=e(145),c=e(89),p=e(38),f=e(194),v=e(108),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 o.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 o.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 i.Utils.isNullOrWhitespace(n)},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.setCardExpiration=function(n,l){if(!this.isNullOrWhitespace(l)){var e=l.split("/");if(2===e.length){var t=null,u=null;if(1!==e[0].length&&2!==e[0].length||2===(t=e[0]).length&&"0"===t[0]&&(t=t.substr(1,1)),2!==e[1].length&&4!==e[1].length||(u=2===t.length?"20"+e[1]:e[1]),null!=t&&null!=u)return n.card.expMonth=t,n.card.expYear=u,!0}}return!1},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 r.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 r=0;r-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!=o)return o.URL?new o.URL(n):o.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.tldEndingRegex=/.*\.(com|net|org|edu|uk|gov|ca|de|jp|fr|au|ru|ch|io|es|us|co|xyz|info|ly|mil)$/,l}();l.Utils=i,i.init()}).call(this,e(132),e(95),e(116).Buffer)},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Login=1]="Login",n[n.SecureNote=2]="SecureNote",n[n.Card=3]="Card",n[n.Identity=4]="Identity"}(l.CipherType||(l.CipherType={}))},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){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.CollectionService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n,l){this.el=n,this.renderer=l}return Object.defineProperty(n.prototype,"appInputVerbatim",{set:function(n){this.disableComplete=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){this.disableComplete&&!this.el.nativeElement.hasAttribute("autocomplete")&&this.renderer.setAttribute(this.el.nativeElement,"autocomplete","off"),this.el.nativeElement.hasAttribute("autocapitalize")||this.renderer.setAttribute(this.el.nativeElement,"autocapitalize","none"),this.el.nativeElement.hasAttribute("autocorrect")||this.renderer.setAttribute(this.el.nativeElement,"autocorrect","none"),this.el.nativeElement.hasAttribute("spellcheck")||this.renderer.setAttribute(this.el.nativeElement,"spellcheck","false"),this.el.nativeElement.hasAttribute("inputmode")||this.renderer.setAttribute(this.el.nativeElement,"inputmode","verbatim")},n}();l.InputVerbatimDirective=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.FolderService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordGenerationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SyncService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.TokenService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordVerificationRequest=t},,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){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,this.defaultUriMatch=n.defaultUriMatch,this.pinProtectedKey=n.pinProtectedKey,this.protectedPin=n.protectedPin}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.defaultUriMatch="defaultUriMatch",n.pinProtectedKey="pinProtectedKey",n.protectedPin="protectedPin",n}();l.ConstantsService=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){this.cardholderName=null,this.expMonth=null,this.expYear=null,this.code=null,this._brand=null,this._number=null,this._subTitle=null}return Object.defineProperty(n.prototype,"maskedCode",{get:function(){return null!=this.code?"•".repeat(this.code.length):null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"brand",{get:function(){return this._brand},set:function(n){this._brand=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"number",{get:function(){return this._number},set:function(n){this._number=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){if(null==this._subTitle&&(this._subTitle=this.brand,null!=this.number&&this.number.length>=4)){null!=this._subTitle&&""!==this._subTitle?this._subTitle+=", ":this._subTitle="";var n=this.number.length>=5&&null!=this.number.match(new RegExp("^3[47]"))?5:4;this._subTitle+="*"+this.number.substr(this.number.length-n)}return 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=function(){function n(n){this.type=null,n&&(this.type=n.type)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){return null},enumerable:!0,configurable:!0}),n}();l.SecureNoteView=t},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuthService=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(765).BroadcasterService);l.BroadcasterService=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=e(37),u=function(){function n(n){this.el=n}return Object.defineProperty(n.prototype,"appAutofocus",{set:function(n){this.autofocus=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){!t.Utils.isMobileBrowser&&this.autofocus&&this.el.nativeElement.focus()},n}();l.AutofocusDirective=u},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(253),o=(e(0),e(781)),i=e(37),a=function(n){function l(l){var e=n.call(this,l)||this;return e.el=null,e}return u(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 u=this.componentFactoryResolver.resolveComponentFactory(n),o=this.container.createComponent(u),a=Array.from(document.querySelectorAll(".modal"));return a.length>0&&(this.el=r(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(),i.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()})),o.instance},l.prototype.close=function(){null!=this.el&&this.el.modal("hide")},l}(o.ModalComponent);l.ModalComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Authenticator=0]="Authenticator",n[n.Email=1]="Email",n[n.Duo=2]="Duo",n[n.Yubikey=3]="Yubikey",n[n.U2f=4]="U2f",n[n.Remember=5]="Remember",n[n.OrganizationDuo=6]="OrganizationDuo"}(l.TwoFactorProviderType||(l.TwoFactorProviderType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){}return n.prototype.onClick=function(n){n.stopPropagation()},n}();l.StopPropDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(812),r=e(4),o=e(97),i=e(72),a=e(32),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"img",[["alt",""]],[[8,"src",4]],[[null,"error"]],function(n,l,e){var u=!0;"error"===l&&(u=!1!==t.ɵnov(n,1).onError()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.FallbackSrcDirective,[t.ElementRef],{appFallbackSrc:[0,"appFallbackSrc"]},null)],function(n,l){var e=l.component;n(l,1,0,t.ɵinlineInterpolate(1,"",e.fallbackImage,""))},function(n,l){n(l,0,0,l.component.image)})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa fa-fw fa-lg ",e.icon,""))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,d)),t.ɵdid(3,16384,null,0,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(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"]))],function(n,l){var e=l.component;n(l,3,0,e.imageEnabled&&e.image),n(l,6,0,!e.imageEnabled||!e.image)},null)}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-icon",[],null,null,null,p,s)),t.ɵdid(1,573440,null,0,o.IconComponent,[i.EnvironmentService,a.StateService],null,null)],null,null)}l.RenderType_IconComponent=s,l.View_IconComponent_0=p,l.View_IconComponent_Host_0=f;var v=t.ɵccf("app-vault-icon",o.IconComponent,f,{cipher:"cipher"},{},[]);l.IconComponentNgFactory=v},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoFunctionService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuditService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Generic=0]="Generic"}(l.SecureNoteType||(l.SecureNoteType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1?n[o]=i||null:n[o]=i?new r.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 r=n[e[u]||u];t.indexOf(u)>-1?l[u]=null!=r?r:null:l[u]=null!=r?r.encryptedString:null}},n.prototype.decryptObj=function(n,l,e){return t(this,void 0,void 0,function(){var t,r,o;return u(this,function(u){switch(u.label){case 0:for(o in t=[],r=this,l)l.hasOwnProperty(o)&&function(u){var o=Promise.resolve().then(function(){var n=l[u]||u;return r[n]?r[n].decrypt(e):null}).then(function(l){n[u]=l});t.push(o)}(o);return[4,Promise.all(t)];case 1:return u.sent(),[2,n]}})})},n}();l.default=o},,,,,,,,,,,,,,,,,,,,,,,,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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SearchService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(88),r=e(170),o=e(145),i=e(89),a=function(){function n(n){this.id=null,this.organizationId=null,this.folderId=null,this.name=null,this.notes=null,this.type=null,this.favorite=!1,this.organizationUseTotp=!1,this.edit=!1,this.login=new o.LoginView,this.identity=new r.IdentityView,this.card=new u.CardView,this.secureNote=new i.SecureNoteView,this.attachments=null,this.fields=null,this.passwordHistory=null,this.collectionIds=null,this.revisionDate=null,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 this.type!==t.CipherType.Login||null==this.login?null:null==this.login.password||""===this.login.password?null:this.login.passwordRevisionDate},enumerable:!0,configurable:!0}),n}();l.CipherView=a},,,,,,,,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]1&&(e=this.getFirstLetters(t,this.charCount)),null==e&&(e=t.substr(0,this.charCount)),o=this.getCharText(e),i=this.stringToColor(t),(a=this.getSvg(this.size,i)).appendChild(o),s=window.document.createElement("div").appendChild(a).outerHTML,d=window.btoa(unescape(encodeURIComponent(s))),this.src="data:image/svg+xml;base64,"+d,u.label=4;case 4:return[2]}})})},n.prototype.stringToColor=function(n){for(var l=0,e=0;e>8*e&255).toString(16)).substr(-2)}return t},n.prototype.getFirstLetters=function(n,l){var e=n.split(" ");if(e.length>1){for(var t="",u=0;u0},enumerable:!0,configurable:!0}),n}();l.LoginView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=null,this.name=null,this.revisionDate=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});var t=function(){return function(n){this.id=null,this.organizationId=null,this.name=null,this.readOnly=null,n&&(this.id=n.id,this.organizationId=n.organizationId,this.readOnly=n.readOnly)}}();l.CollectionView=t},,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(144),o=e(42),i=e(106),a=e(32),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){var e=n(l,2,0,l.component.circle);n(l,1,0,e)},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,r.AvatarComponent,[o.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",r.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(37),u=function(){function n(n){this.title=null,this.middleName=null,this.address1=null,this.address2=null,this.address3=null,this.city=null,this.state=null,this.postalCode=null,this.country=null,this.company=null,this.email=null,this.phone=null,this.ssn=null,this.username=null,this.passportNumber=null,this.licenseNumber=null,this._firstName=null,this._lastName=null,this._subTitle=null}return Object.defineProperty(n.prototype,"firstName",{get:function(){return this._firstName},set:function(n){this._firstName=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"lastName",{get:function(){return this._lastName},set:function(n){this._lastName=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){return null!=this._subTitle||null==this.firstName&&null==this.lastName||(this._subTitle="",null!=this.firstName&&(this._subTitle=this.firstName),null!=this.lastName&&(""!==this._subTitle&&(this._subTitle+=" "),this._subTitle+=this.lastName)),this._subTitle},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"fullName",{get:function(){if(null!=this.title||null!=this.firstName||null!=this.middleName||null!=this.lastName){var n="";return null!=this.title&&(n+=this.title+" "),null!=this.firstName&&(n+=this.firstName+" "),null!=this.middleName&&(n+=this.middleName+" "),null!=this.lastName&&(n+=this.lastName),n.trim()}return null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"fullAddress",{get:function(){var n=this.address1;return t.Utils.isNullOrWhitespace(this.address2)&&(t.Utils.isNullOrWhitespace(n)&&(n+=", "),n+=this.address2),t.Utils.isNullOrWhitespace(this.address3)&&(t.Utils.isNullOrWhitespace(n)&&(n+=", "),n+=this.address3),n},enumerable:!0,configurable:!0}),n}();l.IdentityView=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(8);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:"",exp_year:"",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:""},{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:""}];for(var u=(new Date).getFullYear(),r=u;r-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,u=t?window.Stripe.card:window.Stripe.bankAccount,r=t?n.card:n.bank;u.createToken(r,function(n,t){200===n&&null!=t.id?l(t.id):null!=t.error?e(t.error.message):e()})}})},n.prototype.getCountry=function(){return this.card.address_country},n}();l.PaymentComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(574),r=e(575),o=e(576),i=e(577),a=e(578),s=e(580),d=e(581),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 r.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 o.FieldData(n))})),null!=n.attachments&&(this.attachments=[],n.attachments.forEach(function(n){c.attachments.push(new u.AttachmentData(n))})),null!=n.passwordHistory&&(this.passwordHistory=[],n.passwordHistory.forEach(function(n){c.passwordHistory.push(new s.PasswordHistoryData(n))}))}}}();l.CipherData=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.id,this.organizationId=n.organizationId,this.name=n.name,this.readOnly=n.readOnly}}();l.CollectionData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?(a=[],[4,this.attachments.reduce(function(n,l){return n.then(function(){return l.decrypt(r)}).then(function(n){a.push(n)})},Promise.resolve())]):[3,13];case 12:o.sent(),n.attachments=a,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(r)}).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(r)}).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 a.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 i.CipherType.Login:l.login=this.login.toLoginData();break;case i.CipherType.SecureNote:l.secureNote=this.secureNote.toSecureNoteData();break;case i.CipherType.Card:l.card=this.card.toCardData();break;case i.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}(p.default);l.Cipher=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(3);var t=e(192),u=e(863),r=function(){function n(n){this.i18nService=n}return n.prototype.getDefaultDateFilters=function(){var n=new Date,l=new Date(n.getFullYear(),n.getMonth(),n.getDate(),23,59);n.setDate(n.getDate()-30);var e=new Date(n.getFullYear(),n.getMonth(),n.getDate(),0,0);return[this.toDateTimeLocalString(e),this.toDateTimeLocalString(l)]},n.prototype.formatDateFilters=function(n,l){var e=new Date(n),t=new Date(l+":59.999");if(isNaN(e.getTime())||isNaN(t.getTime())||t"+e+"";var t=this.makeAnchor(e);return t.setAttribute("href","#/organizations/"+n.organizationId+"/vault?search="+e+"&viewEvents="+n.cipherId),t.outerHTML},n.prototype.formatGroupId=function(n){var l=this.getShortId(n.groupId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/groups?search="+l),e.outerHTML},n.prototype.formatCollectionId=function(n){var l=this.getShortId(n.collectionId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/collections?search="+l),e.outerHTML},n.prototype.formatOrgUserId=function(n){var l=this.getShortId(n.organizationUserId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/people?search="+l+"&viewEvents="+n.organizationUserId),e.outerHTML},n.prototype.makeAnchor=function(n){var l=document.createElement("a");return l.title=this.i18nService.t("view"),l.innerHTML=""+n+"",l},n.prototype.getShortId=function(n){return n.substring(0,8)},n.prototype.toDateTimeLocalString=function(n){return n.getFullYear()+"-"+this.pad(n.getMonth()+1)+"-"+this.pad(n.getDate())+"T"+this.pad(n.getHours())+":"+this.pad(n.getMinutes())},n.prototype.pad=function(n){var l=Math.floor(Math.abs(n));return(l<10?"0":"")+l},n}();l.EventService=r;var o=function(){return function(){}}();l.EventInfo=o;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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]t){if(r===o.TwoFactorProviderType.U2f&&!n)return;e=r,t=i.priority}}),e},n.prototype.makePreloginKey=function(n,l){return u(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:l=l.trim().toLowerCase(),this.kdf=null,this.kdfIterations=null,u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.apiService.postPrelogin(new d.PreloginRequest(l))];case 2:return null!=(e=u.sent())&&(this.kdf=e.kdf,this.kdfIterations=e.kdfIterations),[3,4];case 3:if(null==(t=u.sent())||404!==t.statusCode)throw t;return[3,4];case 4:return[2,this.cryptoService.makeKey(n,l,this.kdf,this.kdfIterations)]}})})},n.prototype.logInHelper=function(n,l,e,t,d,p){return u(this,void 0,void 0,function(){var u,f,v,h,g,m,y,C,b,w;return r(this,function(r){switch(r.label){case 0:return[4,this.tokenService.getTwoFactorToken(n)];case 1:return u=r.sent(),[4,this.appIdService.getAppId()];case 2:return f=r.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,o.TwoFactorProviderType.Remember,u,!1,v):new c.TokenRequest(n,l,null,null,!1,v),[4,this.apiService.postIdentityToken(h)];case 3:return g=r.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 r.sent(),[4,this.userService.setInformation(this.tokenService.getUserId(),this.tokenService.getEmail(),this.kdf,this.kdfIterations)];case 5:return r.sent(),this.setCryptoKeys?[4,this.cryptoService.setKey(e)]:[3,15];case 6:return r.sent(),[4,this.cryptoService.setKeyHash(l)];case 7:return r.sent(),[4,this.cryptoService.setEncKey(C.key)];case 8:if(r.sent(),null!=C.privateKey)return[3,13];r.label=9;case 9:return r.trys.push([9,12,,13]),[4,this.cryptoService.makeKeyPair()];case 10:return b=r.sent(),[4,this.apiService.postAccountKeys(new s.KeysRequest(b[0],b[1].encryptedString))];case 11:return r.sent(),C.privateKey=b[1].encryptedString,[3,13];case 12:return w=r.sent(),console.error(w),[3,13];case 13:return[4,this.cryptoService.setEncPrivateKey(C.privateKey)];case 14:r.sent(),r.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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(0),o=(e(44),e(57),e(62),e(9),function(n){function l(l,e,t,u){var o=n.call(this,l,e,t,u)||this;return o.onSearchTextChanged=new r.EventEmitter,o.searchText="",o.searchPlaceholder=null,o}return u(l,n),l.prototype.searchTextChanged=function(){this.onSearchTextChanged.emit(this.searchText)},l}(e(810).GroupingsComponent));l.GroupingsComponent=o},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]500?500:this.ciphers.length,e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r(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(815).AddEditComponent));l.AddEditComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Invited=0]="Invited",n[n.Accepted=1]="Accepted",n[n.Confirmed=2]="Confirmed"}(l.OrganizationUserStatusType||(l.OrganizationUserStatusType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Domain=0]="Domain",n[n.Host=1]="Host",n[n.StartsWith=2]="StartsWith",n[n.Exact=3]="Exact",n[n.RegularExpression=4]="RegularExpression",n[n.Never=5]="Never"}(l.UriMatchType||(l.UriMatchType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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!=(r=u.sent())&&(t=r),[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!=(o=u.sent())?(this.error(o),[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 r=(new DOMParser).parseFromString(u.target.result,"text/html").querySelector("pre");return null!=r?void e(r.textContent):void t()}e(u.target.result)},u.onerror=function(){t()}})},n}();l.ImportComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(23),e(237),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return u(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(849).ExportComponent);l.ExportComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]1}),this.ciphers=e,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(238).CipherReportComponent);l.ReusedPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1?r.concat(n.login.username.substr(0,o).trim().toLowerCase().split(/[^A-Za-z0-9]/)).filter(function(n){return n.length>=3}):n.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/).filter(function(n){return n.length>=3})}var a=e.passwordGenerationService.passwordStrength(n.login.password,r.length>0?r:null);e.passwordStrengthCache.set(u,a.score)}var s=e.passwordStrengthCache.get(u);null!=s&&s<=3&&(e.passwordStrengthMap.set(n.id,e.scoreKey(s)),l.push(n))}}),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l.prototype.scoreKey=function(n){switch(n){case 4:return["strong","success"];case 3:return["good","primary"];case 2:return["weak","warning"];default:return["veryWeak","danger"]}},l}(e(238).CipherReportComponent);l.WeakPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(l.push(n),t.exposedPasswordMap.set(n.id,e))});e.push(u)}}),[4,Promise.all(e)];case 2:return u.sent(),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(238).CipherReportComponent);l.ExposedPasswordsReportComponent=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?[4,this.getAllCiphers()]:[3,6];case 4:return n=r.sent(),l=[],e=[],t=new Map,n.forEach(function(n){if(n.type===i.CipherType.Login&&(null==n.login.totp||""===n.login.totp)&&n.login.hasUris)for(var e=0;e0?[2]:[4,fetch(new Request("https://twofactorauth.org/data.json"))];case 1:if(200!==(n=o.sent()).status)throw new Error;return[4,n.json()];case 2:for(e in l=o.sent())if(l.hasOwnProperty(e))for(u in t=l[e])t.hasOwnProperty(u)&&(r=t[u]).tfa&&null!=r.url&&null!=(i=a.Utils.getHostname(r.url))&&this.services.set(i,r.doc);return[2]}})})},l}(e(238).CipherReportComponent);l.InactiveTwoFactorReportComponent=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(){}return n.prototype.transform=function(n,l,e,t,u){return null==n||0===n.length?[]:null==l||l.length<2?n:(l=l.trim().toLowerCase(),n.filter(function(n){return null!=e&&null!=n[e]&&n[e].toString().toLowerCase().indexOf(l)>-1||(null!=t&&null!=n[t]&&n[t].toString().toLowerCase().indexOf(l)>-1||null!=u&&null!=n[u]&&n[u].toString().toLowerCase().indexOf(l)>-1)}))},n}();l.SearchPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.id=n,this.readOnly=l}}();l.SelectionReadOnlyRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.readOnly=n.ReadOnly}}();l.SelectionReadOnlyResponse=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.NotificationsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SettingsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(8);var t=function(){function n(n){this.platformUtilsService=n,this.year="2015"}return n.prototype.ngOnInit=function(){this.year=(new Date).getFullYear().toString(),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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(this.email=t.email),null!=t.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=t.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:t.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return e.sent(),null!=l&&l.unsubscribe(),[2]}})})}),[2]})})},l.prototype.goAfterLogIn=function(){return r(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(769).LoginComponent);l.LoginComponent=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(n.email=e.email),null!=e.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}})),null!=l&&l.unsubscribe()})},l}(e(789).RegisterComponent);l.RegisterComponent=r},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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(10),e(5),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u)||this}return u(l,n),l}(e(792).HintComponent);l.HintComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o,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(),o=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent),this.modal=this.attachmentsModalRef.createComponent(o).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(r.ModalComponent);this.modal=this.shareModalRef.createComponent(e).instance;var o=this.modal.show(v.ShareComponent,this.shareModalRef);o.cipherId=n.id,o.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(r.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var o=this.modal.show(p.CollectionsComponent,this.collectionsModalRef);o.cipherId=n.id,o.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(o){return null!=this.modal&&this.modal.close(),n=this.componentFactoryResolver.resolveComponentFactory(r.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,o=this;return u(this,function(i){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(l).instance,(e=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=n,e.onSavedFolder.subscribe(function(){return t(o,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(o,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(){o.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(r.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var o=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return o.cipherId=null==n?null:n.id,o.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]}})})}),o.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}),o},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(r.ModalComponent);this.modal=this.bulkDeleteModalRef.createComponent(e).instance;var o=this.modal.show(s.BulkDeleteComponent,this.bulkDeleteModalRef);o.cipherIds=l,o.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(r.ModalComponent);this.modal=this.bulkShareModalRef.createComponent(e).instance;var o=this.modal.show(c.BulkShareComponent,this.bulkShareModalRef);o.ciphers=l,o.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(r.ModalComponent);this.modal=this.bulkMoveModalRef.createComponent(e).instance;var o=this.modal.show(d.BulkMoveComponent,this.bulkMoveModalRef);o.cipherIds=l,o.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(r.ModalComponent);this.modal=this.updateKeyModalRef.createComponent(l).instance,this.modal.show(o.UpdateKeyComponent,this.updateKeyModalRef),this.modal.onClosed.subscribe(function(){n.modal=null})},n.prototype.clearFilters=function(){this.folderId=null,this.collectionId=null,this.favorites=!1,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={favorites:!!this.favorites||null,type:this.type,folderId:this.folderId,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(l){var e=n.call(this,l)||this;return e.id=l.id,e}return u(l,n),l}(e(193).CipherRequest);l.CipherWithIdRequest=r},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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.viewEvents(r[0]),null!=e&&e.unsubscribe(),[2]}})})}),[2]}})})})},n.prototype.ngOnDestroy=function(){this.broadcasterService.unsubscribe("OrgVaultComponent")},n.prototype.clearGroupingFilters=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchVault"),[4,this.ciphersComponent.applyFilter()];case 1:return n.sent(),this.clearFilters(),this.go(),[2]}})})},n.prototype.filterCipherType=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchType"),e=function(l){return l.type===n},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.type=n,this.go(),[2]}})})},n.prototype.filterCollection=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchCollection"),e=function(l){return"unassigned"===n?null==l.collectionIds||0===l.collectionIds.length:null!=l.collectionIds&&l.collectionIds.indexOf(n)>-1},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){var l=this;if(null!=this.organization.maxStorageGb&&0!==this.organization.maxStorageGb){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.attachmentsModalRef.createComponent(e).instance;var o=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef);o.organization=this.organization,o.cipherId=n.id;var i=!1;o.onUploadedAttachment.subscribe(function(){return i=!0}),o.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(r.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var o=this.modal.show(s.CollectionsComponent,this.collectionsModalRef);this.organization.isAdmin&&(o.collectionIds=n.collectionIds,o.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),o.organization=this.organization,o.cipherId=n.id,o.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(r.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var o=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return o.organization=this.organization,o.cipherId=null==n?null:n.id,o.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]}})})}),o.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}),o},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(r.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(o.EntityEventsComponent,this.eventsModalRef)).name=n.name,e.organizationId=this.organization.id,e.entityId=n.id,e.showUser=!0,e.entity="cipher",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.clearFilters=function(){this.collectionId=null,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={type:this.type,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?this.events=this.events.concat(r):this.events=r,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EntityEventsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?this.events=this.events.concat(r):this.events=r,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EventsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?n.data:[]).sort(r.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(o.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(o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&l[0].status===i.OrganizationUserStatusType.Confirmed&&this.events(l[0]),null!=e&&e.unsubscribe(),[2]})})}),[2]}})})}),[2]})})},n.prototype.load=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return[4,this.apiService.getOrganizationUsers(this.organizationId)];case 1:return n=e.sent(),this.statusMap.clear(),this.allUsers=null!=n.data&&n.data.length>0?n.data:[],this.allUsers.sort(s.Utils.getSortFunction(this.i18nService,"email")),this.allUsers.forEach(function(n){l.statusMap.has(n.status)?l.statusMap.get(n.status).push(n):l.statusMap.set(n.status,[n])}),this.filter(this.status),this.loading=!1,[2]}})})},n.prototype.filter=function(n){this.status=n,null!=this.status?this.users=this.statusMap.get(this.status):this.users=this.allUsers},Object.defineProperty(n.prototype,"invitedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Invited)?this.statusMap.get(i.OrganizationUserStatusType.Invited).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"acceptedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Accepted)?this.statusMap.get(i.OrganizationUserStatusType.Accepted).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"confirmedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Confirmed)?this.statusMap.get(i.OrganizationUserStatusType.Confirmed).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"showConfirmUsers",{get:function(){return null!=this.allUsers&&null!=this.statusMap&&this.allUsers.length>1&&this.confirmedCount>0&&this.confirmedCount<3&&this.acceptedCount>0},enumerable:!0,configurable:!0}),n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(p.UserAddEditComponent,this.addEditModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedUser.subscribe(function(){l.modal.close(),l.removeUser(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.invite=function(){this.edit(null)},n.prototype.groups=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.groupsModalRef.createComponent(e).instance;var t=this.modal.show(v.UserGroupsComponent,this.groupsModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.remove=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),n.name||n.email,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteOrganizationUser(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",n.name||n.email)),this.removeUser(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.reinvite=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return null!=this.actionPromise?[2]:(this.actionPromise=this.apiService.postOrganizationUserReinvite(this.organizationId,n.id),[4,this.actionPromise]);case 1:return l.sent(),this.analytics.eventTrack.next({action:"Reinvited User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenReinvited",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.confirm=function(n){return t(this,void 0,void 0,function(){function l(l){n.status=i.OrganizationUserStatusType.Confirmed;var e=l.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n);e>-1&&(l.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(e,1),l.statusMap.get(i.OrganizationUserStatusType.Confirmed).push(n))}var e,t,o,a=this;return u(this,function(u){switch(u.label){case 0:return null!=this.actionPromise?[2]:[4,this.storageService.get(r.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,(o=this.modal.show(f.UserConfirmComponent,this.confirmModalRef)).name=null!=n?n.name||n.email:null,o.organizationId=this.organizationId,o.organizationUserId=null!=n?n.id:null,o.userId=null!=n?n.userId:null,o.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,r,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=(r=console).log,a="User's fingerprint: ",[4,this.cryptoService.getFingerprint(n.userId,t.buffer)];case 4:return i.apply(r,[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});e(10),e(96),e(3),e(8);var r=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return u(l,n),l}(e(780).TwoFactorOptionsComponent);l.TwoFactorOptionsComponent=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(l,e){var t=n.call(this)||this;return t.masterPasswordHash=e,t.email=l,t}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorEmailRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.publicKey=n,this.encryptedPrivateKey=l}}();l.KeysRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(451),o=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,t=n(l,4,0,e.scoreWidth+"%");n(l,3,0,t),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,r.PasswordStrengthComponent,[o.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",r.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(102),r=e(169),o=e(144),i=e(42),a=e(106),s=e(32),d=e(7),c=e(3),p=e(4),f=e(10),v=e(463),h=e(19),g=e(8),m=e(71),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,r.View_AvatarComponent_0,r.RenderType_AvatarComponent)),t.ɵdid(4,638976,null,0,o.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,u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"loggedInAs"));n(l,9,0,u),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,t=n(l,3,0,e.selfHosted);n(l,2,0,"navbar navbar-expand navbar-dark bg-primary",t);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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,7,0,n(l,9,0,t.ɵnov(l,0),"pageTitle","Bitwarden")),"");n(l,7,0,e,t.ɵnov(l,8).target,t.ɵnov(l,8).href),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var u=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"myVault"));n(l,25,0,u),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href);var r=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"tools"));n(l,36,0,r),n(l,45,0,t.ɵnov(l,46).target,t.ɵnov(l,46).href);var o=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"settings"));n(l,47,0,o),n(l,69,0,t.ɵnov(l,70).target,t.ɵnov(l,70).href);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"myAccount"));n(l,73,0,i);var a=t.ɵunv(l,79,0,n(l,80,0,t.ɵnov(l,0),"getHelp"));n(l,79,0,a);var s=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"getApps"));n(l,85,0,s);var d=t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"lockNow"));n(l,93,0,d);var c=t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l,0),"logOut"));n(l,99,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,b,y)),t.ɵdid(1,114688,null,0,v.NavbarComponent,[h.MessagingService,g.PlatformUtilsService,m.TokenService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_NavbarComponent=y,l.View_NavbarComponent_0=b,l.View_NavbarComponent_Host_0=w;var S=t.ɵccf("app-navbar",v.NavbarComponent,w,{},{},[]);l.NavbarComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(464),i=e(8),a=t.ɵcrt({encapsulation:2,styles:[],data:{}});function s(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"versionNumber",e.version));n(l,11,0,u)})}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,o.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",o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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(235).TwoFactorBaseComponent);l.TwoFactorU2fComponent=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r(l,void 0,void 0,function(){var n;return o(this,function(l){switch(l.label){case 0:return this.formPromise=this.apiService.putTwoFactorYubiKey(e),[4,this.formPromise];case 1:return n=l.sent(),[4,this.processResponse(n)];case 2:return l.sent(),this.toasterService.popAsync("success",null,this.i18nService.t("yubikeysUpdated")),[2]}})})})},l.prototype.disable=function(){return n.prototype.disable.call(this,this.disablePromise)},l.prototype.remove=function(n){n.existingKey=null,n.key=null},l.prototype.processResponse=function(n){this.enabled=n.enabled,this.keys=[{key:n.key1,existingKey:this.padRight(n.key1)},{key:n.key2,existingKey:this.padRight(n.key2)},{key:n.key3,existingKey:this.padRight(n.key3)},{key:n.key4,existingKey:this.padRight(n.key4)},{key:n.key5,existingKey:this.padRight(n.key5)}],this.nfc=n.nfc||!n.enabled},l.prototype.padRight=function(n,l,e){if(void 0===l&&(l="•"),void 0===e&&(e=44),null==n||null==l||n.length>=e)return n;for(var t=(e-n.length)/l.length,u=0;u":t=">",u=!0;break;case" ":t=" ",u=!0}var r="letter";u||t.match(/[^\w ]/)?r="special":t.match(/\d/)&&(r="number"),l+=''+t+""}return l},n}();l.ColorPasswordPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(8);var t=function(){function n(n,l){this.el=n,this.platformUtilsService=l}return n.prototype.onCopy=function(){if(null!=window){for(var n="",l=window.getSelection(),e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(n.uris=[],this.uris.forEach(function(l){n.uris.push(l.toLoginUriData())})),n},l}(e(109).default);l.Login=d},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(579),o=e(234),i=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 u(l,n),l.prototype.decrypt=function(n){return this.decryptObj(new o.LoginUriView(this),{uri:null},n)},l.prototype.toLoginUriData=function(){var n=new r.LoginUriData;return this.buildDataModel(this,n,{uri:null},["match"]),n},l}(e(109).default);l.LoginUri=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 h.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 g.IdentityTwoFactorResponse(e)];case 6:return[2,Promise.reject(new c.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 o.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 w.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 f.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 f.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 f.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 a.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 a.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 m.ListResponse(l,a.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 a.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 a.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 a.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 a.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 a.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 a.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 a.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 a.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 s.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 m.ListResponse(n,s.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 m.ListResponse(l,s.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 _.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 s.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 s.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 v.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 m.ListResponse(l,v.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 v.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 v.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 b.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 m.ListResponse(l,b.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 R.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 d.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 d.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 m.ListResponse(n,O.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 m.ListResponse(l,O.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 I.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 A.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 k.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 k.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 T.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 T.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 N.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 I.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 A.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 k.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 k.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 T.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 T.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 O.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 O.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 C.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 y.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 C.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 C.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 C.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 m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsCipher=function(n,l,e,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("/ciphers/"+n+"/events",l,e,r),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsOrganization=function(n,l,e,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+"/events",l,e,r),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.EventResponse)]}})})},n.prototype.getEventsOrganizationUser=function(n,l,e,r,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+"/users/"+l+"/events",e,r,o),null,!0,!0)];case 1:return t=u.sent(),[2,new m.ListResponse(t,p.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 P.UserKeyResponse(l)]}})})},n.prototype.getHibpBreach=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/hibp/breach?username="+n,null,!0,!0)];case 1:return[2,l.sent().map(function(n){return new i.BreachAccountResponse(n)})]}})})},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,r,o){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},r?[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)))),o&&t.set("Accept","application/json"),i.headers=t,[4,this.fetch(new Request(this.apiBaseUrl+l,i))];case 3:return s=u.sent(),o&&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 c.ErrorResponse(e,n.status,l)]}})})},n.prototype.doRefreshToken=function(){return t(this,void 0,void 0,function(){var n,l,e,t,r,o;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(),r=new h.IdentityTokenResponse(t),[4,this.tokenService.setTokens(r.accessToken,r.refreshToken)];case 4:return u.sent(),[2,r];case 5:return[4,this.handleError(e,!0)];case 6:return o=u.sent(),[2,Promise.reject(o)]}})})},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=V},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(){return function(n){this.charges=[],this.invoices=[],this.transactions=[],this.storageName=n.StorageName,this.storageGb=n.StorageGb,this.maxStorageGb=n.MaxStorageGb,this.paymentSource=null==n.PaymentSource?null:new o(n.PaymentSource),this.subscription=null==n.Subscription?null:new i(n.Subscription),this.upcomingInvoice=null==n.UpcomingInvoice?null:new s(n.UpcomingInvoice),null!=n.Charges&&(this.charges=n.Charges.map(function(n){return new d(n)})),null!=n.Transactions&&(this.transactions=n.Transactions.map(function(n){return new p(n)})),null!=n.Invoices&&(this.invoices=n.Invoices.map(function(n){return new c(n)})),this.license=n.License,this.expiration=n.Expiration}}();l.BillingResponse=r;var o=function(){return function(n){this.type=n.Type,this.cardBrand=n.CardBrand,this.description=n.Description,this.needsVerification=n.NeedsVerification}}();l.BillingSourceResponse=o;var i=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 a(n)}))}}();l.BillingSubscriptionResponse=i;var a=function(){return function(n){this.name=n.Name,this.amount=n.Amount,this.quantity=n.Quantity,this.interval=n.Interval}}();l.BillingSubscriptionItemResponse=a;var s=function(){return function(n){this.date=n.Date,this.amount=n.Amount}}();l.BillingInvoiceInfoResponse=s;var d=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.paymentSource=null!=n.PaymentSource?new o(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=d;var c=function(n){function l(l){var e=n.call(this,l)||this;return e.url=l.Url,e.pdfUrl=l.PdfUrl,e.number=l.Number,e.paid=l.Paid,e}return u(l,n),l}(s);l.BillingInvoiceResponse=c;var p=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.refunded=n.Refunded,this.partiallyRefunded=n.PartiallyRefunded,this.refundedAmount=n.RefundedAmount,this.type=n.Type,this.paymentMethodType=n.PaymentMethodType,this.details=n.Details}}();l.BillingTransactionResponse=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(929),u=e(930),r=e(931),o=e(932),i=e(933),a=e(934),s=e(936),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 r.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 o.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,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name}}();l.CollectionResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.readOnly=l.ReadOnly||!1,e}return u(l,n),l}(o);l.CollectionDetailsResponse=i;var a=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 r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.CollectionGroupDetailsResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(937),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(947),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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]5&&(n.passwordHistory=n.passwordHistory.slice(0,5)),o.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=o.sent()))throw new Error("Cannot encrypt cipher for organization. No key.");o.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 o.sent(),[2,d]}})})},l.prototype.encryptAttachments=function(n,l){return r(this,void 0,void 0,function(){var e,t,u=this;return o(this,function(i){switch(i.label){case 0:return null==n||0===n.length?[2,null]:(e=[],t=[],n.forEach(function(n){return r(u,void 0,void 0,function(){var u,i,a=this;return o(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 r(a,void 0,void 0,function(){var e;return o(this,function(r){switch(r.label){case 0:return null==n.key?[3,2]:(e=u,[4,this.cryptoService.encrypt(n.key.key,l)]);case 1:e.key=r.sent(),r.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 r(this,void 0,void 0,function(){var e,t;return o(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 r(this,void 0,void 0,function(){var e;return o(this,function(t){switch(t.label){case 0:return(e=new v.Field).type=n.type,n.type===a.FieldType.Boolean&&"true"!==n.value&&(n.value="false"),[4,this.encryptObjProperty(n,e,{name:null,value:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.encryptPasswordHistories=function(n,l){return r(this,void 0,void 0,function(){var e,t;return o(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 r(this,void 0,void 0,function(){var e;return o(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 r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.userService.getUserId()];case 1:return l=u.sent(),[4,this.storageService.get(P)];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 r(this,void 0,void 0,function(){var n,l,e,t,u;return o(this,function(r){switch(r.label){case 0:return[4,this.userService.getUserId()];case 1:return n=r.sent(),[4,this.storageService.get(P)];case 2:return l=r.sent(),[4,this.storageService.get(E+n)];case 3:for(u in e=r.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 r(this,void 0,void 0,function(){var n,l;return o(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),r(this,void 0,void 0,function(){return o(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 r(this,void 0,void 0,function(){var e,t,u,r,a,d;return o(this,function(o){switch(o.label){case 0:return null!=n||l?(e=T.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=o.sent(),r=u[0],a=u[1],[4,this.storageService.get(O.ConstantsService.defaultUriMatch)];case 2:return null==(d=o.sent())&&(d=s.UriMatchType.Domain),[2,a.filter(function(t){if(l&&l.indexOf(t.type)>-1)return!0;if(null!=n&&t.type===i.CipherType.Login&&null!=t.login.uris)for(var u=0;u-1){if(!x.has(o.domain))return!0;var a=T.Utils.getHost(n);if(!x.get(o.domain).has(a))return!0}break;case s.UriMatchType.Host:var c=T.Utils.getHost(n);if(null!=c&&c===T.Utils.getHost(o.uri))return!0;break;case s.UriMatchType.Exact:if(n===o.uri)return!0;break;case s.UriMatchType.StartsWith:if(n.startsWith(o.uri))return!0;break;case s.UriMatchType.RegularExpression:try{if(new RegExp(o.uri,"i").test(n))return!0}catch(n){}break;case s.UriMatchType.Never:}}return!1})]}})})},l.prototype.getAllFromApiForOrganization=function(n){return r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.apiService.getCiphersOrganization(n)];case 1:return null!=(l=u.sent())&&null!=l.data&&l.data.length?(e=[],t=[],l.data.forEach(function(n){var l=new d.CipherData(n),u=new f.Cipher(l);t.push(u.decrypt().then(function(n){return e.push(n)}))}),[4,Promise.all(t)]):[3,3];case 2:return u.sent(),e.sort(this.getLocaleSortingFunction()),[2,e];case 3:return[2,[]]}})})},l.prototype.getLastUsedForUrl=function(n){return r(this,void 0,void 0,function(){var l;return o(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 r(this,void 0,void 0,function(){var l,e,t;return o(this,function(u){switch(u.label){case 0:return[4,this.storageService.get(P)];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(P,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 r=n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u);return 0!==r||l.type!==i.CipherType.Login||e.type!==i.CipherType.Login?r:(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 r(this,void 0,void 0,function(){var u,r,i,a,s,d,c,p,f,v;return o(this,function(o){switch(o.label){case 0:return[4,fetch(new Request(l.url,{cache:"no-cache"}))];case 1:if(200!==(u=o.sent()).status)throw Error("Failed to download attachment: "+u.status.toString());return[4,u.arrayBuffer()];case 2:return r=o.sent(),[4,this.cryptoService.decryptFromBytes(r,null)];case 3:return i=o.sent(),[4,this.cryptoService.getOrgKey(t)];case 4:return a=o.sent(),[4,this.cryptoService.encrypt(l.fileName,a)];case 5:return s=o.sent(),[4,this.cryptoService.makeEncKey(a)];case 6:return d=o.sent(),[4,this.cryptoService.encryptToBytes(i,d[0])];case 7:c=o.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(!T.Utils.isNode||T.Utils.isBrowser)throw l;p.append("key",d[1].encryptedString),p.append("data",n.from(c),{filepath:s.encryptedString,contentType:"application/octet-stream"})}o.label=8;case 8:return o.trys.push([8,10,,11]),[4,this.apiService.postShareCipherAttachment(e,l.id,p,t)];case 9:return o.sent(),[3,11];case 10:throw v=o.sent(),new Error(v.getSingleMessage());case 11:return[2]}})})},l.prototype.encryptObjProperty=function(n,l,e,t){return r(this,void 0,void 0,function(){var u,r,i;return o(this,function(o){switch(o.label){case 0:for(i in u=[],r=this,e)e.hasOwnProperty(i)&&function(l,o){var i=Promise.resolve().then(function(){var u=n[e[l]||l];return u&&""!==u?r.cryptoService.encrypt(u,t):null}).then(function(n){o[l]=n});u.push(i)}(i,l);return[4,Promise.all(u)];case 1:return o.sent(),[2]}})})},l.prototype.encryptCipherData=function(n,l,e){return r(this,void 0,void 0,function(){var t,u;return o(this,function(r){switch(r.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(r.sent(),null==l.login.uris)return[3,6];n.login.uris=[],t=0,r.label=3;case 3:return t0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0;i--)(u=n[i])&&(o=(r<3?u(o):r>3?u(l,e,o):u(l,e))||o);return r>3&&o&&Object.defineProperty(l,e,o),o},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0?[2,this.orgKeys]:[4,this.storageService.get(y)];case 1:if(null==(n=o.sent()))return[2,null];for(u in l=new Map,e=!1,t=[],n)t.push(u);r=0,o.label=2;case 2:return r53)throw new Error("We cannot generate numbers larger than 53 bits.");return r=Math.ceil(u/8),i=Math.pow(2,u)-1,s=Uint8Array.bind,[4,this.cryptoFunctionService.randomBytes(r)];case 1:for(a=new(s.apply(Uint8Array,[void 0,o.sent()])),d=8*(r-1),c=0;c=t?[2,this.randomNumber(n,l)]:[2,n+e]}})})},n.prototype.aesEncrypt=function(n,l){return r(this,void 0,void 0,function(){var e,t,u,r,i,a;return o(this,function(o){switch(o.label){case 0:return e=new c.EncryptedObject,t=e,[4,this.getKeyForEncryption(l)];case 1:return t.key=o.sent(),u=e,[4,this.cryptoFunctionService.randomBytes(16)];case 2:return u.iv=o.sent(),r=e,[4,this.cryptoFunctionService.aesEncrypt(n,e.iv,e.key.encKey)];case 3:return r.data=o.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=o.sent(),o.label=5;case 5:return[2,e]}})})},n.prototype.aesDecryptToUtf8=function(n,l,e,t,u){return r(this,void 0,void 0,function(){var r,i,a,s;return o(this,function(o){switch(o.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return r=o.sent(),null!=(i=this.resolveLegacyKey(n,r)).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=o.sent(),[4,this.cryptoFunctionService.compareFast(a.mac,s)];case 3:if(!o.sent())return console.error("mac failed."),[2,null];o.label=4;case 4:return[2,this.cryptoFunctionService.aesDecryptFast(a)]}})})},n.prototype.aesDecryptToBytes=function(n,l,e,t,u){return r(this,void 0,void 0,function(){var r,i,a,s;return o(this,function(o){switch(o.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return r=o.sent(),null!=(i=this.resolveLegacyKey(n,r)).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=o.sent())?[2,null]:[4,this.cryptoFunctionService.compare(t,s)];case 3:if(!o.sent())return console.error("mac failed."),[2,null];o.label=4;case 4:return[4,this.cryptoFunctionService.aesDecrypt(l,e,i.encKey)];case 5:return[2,o.sent()]}})})},n.prototype.rsaDecrypt=function(n){return r(this,void 0,void 0,function(){var l,e,t,u,r,i;return o(this,function(o){switch(o.label){case 0:if(l=n.split("."),e=null,1===l.length)e=a.EncryptionType.Rsa2048_OaepSha256_B64,t=[l[0]];else if(2===l.length)try{e=parseInt(l[0],null),t=l[1].split("|")}catch(n){}switch(e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}if(null==t||t.length<=0)throw new Error("encPieces unavailable.");return u=h.Utils.fromB64ToArray(t[0]).buffer,[4,this.getPrivateKey()];case 1:if(null==(r=o.sent()))throw new Error("No private key.");switch(i="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:i="sha256";break;case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}return[2,this.cryptoFunctionService.rsaDecrypt(u,r,i)]}})})},n.prototype.getKeyForEncryption=function(n){return r(this,void 0,void 0,function(){var l;return o(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 r(this,void 0,void 0,function(){var l,e,t,u,r;return o(this,function(o){switch(o.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,[o.sent()]),r=(u=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("mac"),32)];case 2:return r.apply(u,[o.sent(),32]),[2,new p.SymmetricCryptoKey(l.buffer)]}})})},n.prototype.hkdfExpand=function(n,l,e){return r(this,void 0,void 0,function(){var t,u,r,i,a,s,d;return o(this,function(o){switch(o.label){case 0:t=32,u=new Uint8Array(e),r=new Uint8Array(0),i=Math.ceil(e/t),a=0,o.label=1;case 1:return ar)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),r(this,void 0,void 0,function(){var e,t;return o(this,function(u){switch(u.label){case 0:return e=null,32!==n.key.byteLength?[3,3]:[4,this.stretchKey(n)];case 1:return t=u.sent(),[4,this.encrypt(l,t)];case 2:return e=u.sent(),[3,6];case 3:return 64!==n.key.byteLength?[3,5]:[4,this.encrypt(l,n)];case 4:return e=u.sent(),[3,6];case 5:throw new Error("Invalid key size.");case 6:return[2,[new p.SymmetricCryptoKey(l),e]]}})})},t([v.sequentialize(S),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getEncKey",null),t([v.sequentialize(_),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getOrgKeys",null),n}();l.CryptoService=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.EEFLongWordList=["abacus","abdomen","abdominal","abide","abiding","ability","ablaze","able","abnormal","abrasion","abrasive","abreast","abridge","abroad","abruptly","absence","absentee","absently","absinthe","absolute","absolve","abstain","abstract","absurd","accent","acclaim","acclimate","accompany","account","accuracy","accurate","accustom","acetone","achiness","aching","acid","acorn","acquaint","acquire","acre","acrobat","acronym","acting","action","activate","activator","active","activism","activist","activity","actress","acts","acutely","acuteness","aeration","aerobics","aerosol","aerospace","afar","affair","affected","affecting","affection","affidavit","affiliate","affirm","affix","afflicted","affluent","afford","affront","aflame","afloat","aflutter","afoot","afraid","afterglow","afterlife","aftermath","aftermost","afternoon","aged","ageless","agency","agenda","agent","aggregate","aghast","agile","agility","aging","agnostic","agonize","agonizing","agony","agreeable","agreeably","agreed","agreeing","agreement","aground","ahead","ahoy","aide","aids","aim","ajar","alabaster","alarm","albatross","album","alfalfa","algebra","algorithm","alias","alibi","alienable","alienate","aliens","alike","alive","alkaline","alkalize","almanac","almighty","almost","aloe","aloft","aloha","alone","alongside","aloof","alphabet","alright","although","altitude","alto","aluminum","alumni","always","amaretto","amaze","amazingly","amber","ambiance","ambiguity","ambiguous","ambition","ambitious","ambulance","ambush","amendable","amendment","amends","amenity","amiable","amicably","amid","amigo","amino","amiss","ammonia","ammonium","amnesty","amniotic","among","amount","amperage","ample","amplifier","amplify","amply","amuck","amulet","amusable","amused","amusement","amuser","amusing","anaconda","anaerobic","anagram","anatomist","anatomy","anchor","anchovy","ancient","android","anemia","anemic","aneurism","anew","angelfish","angelic","anger","angled","angler","angles","angling","angrily","angriness","anguished","angular","animal","animate","animating","animation","animator","anime","animosity","ankle","annex","annotate","announcer","annoying","annually","annuity","anointer","another","answering","antacid","antarctic","anteater","antelope","antennae","anthem","anthill","anthology","antibody","antics","antidote","antihero","antiquely","antiques","antiquity","antirust","antitoxic","antitrust","antiviral","antivirus","antler","antonym","antsy","anvil","anybody","anyhow","anymore","anyone","anyplace","anything","anytime","anyway","anywhere","aorta","apache","apostle","appealing","appear","appease","appeasing","appendage","appendix","appetite","appetizer","applaud","applause","apple","appliance","applicant","applied","apply","appointee","appraisal","appraiser","apprehend","approach","approval","approve","apricot","april","apron","aptitude","aptly","aqua","aqueduct","arbitrary","arbitrate","ardently","area","arena","arguable","arguably","argue","arise","armadillo","armband","armchair","armed","armful","armhole","arming","armless","armoire","armored","armory","armrest","army","aroma","arose","around","arousal","arrange","array","arrest","arrival","arrive","arrogance","arrogant","arson","art","ascend","ascension","ascent","ascertain","ashamed","ashen","ashes","ashy","aside","askew","asleep","asparagus","aspect","aspirate","aspire","aspirin","astonish","astound","astride","astrology","astronaut","astronomy","astute","atlantic","atlas","atom","atonable","atop","atrium","atrocious","atrophy","attach","attain","attempt","attendant","attendee","attention","attentive","attest","attic","attire","attitude","attractor","attribute","atypical","auction","audacious","audacity","audible","audibly","audience","audio","audition","augmented","august","authentic","author","autism","autistic","autograph","automaker","automated","automatic","autopilot","available","avalanche","avatar","avenge","avenging","avenue","average","aversion","avert","aviation","aviator","avid","avoid","await","awaken","award","aware","awhile","awkward","awning","awoke","awry","axis","babble","babbling","babied","baboon","backache","backboard","backboned","backdrop","backed","backer","backfield","backfire","backhand","backing","backlands","backlash","backless","backlight","backlit","backlog","backpack","backpedal","backrest","backroom","backshift","backside","backslid","backspace","backspin","backstab","backstage","backtalk","backtrack","backup","backward","backwash","backwater","backyard","bacon","bacteria","bacterium","badass","badge","badland","badly","badness","baffle","baffling","bagel","bagful","baggage","bagged","baggie","bagginess","bagging","baggy","bagpipe","baguette","baked","bakery","bakeshop","baking","balance","balancing","balcony","balmy","balsamic","bamboo","banana","banish","banister","banjo","bankable","bankbook","banked","banker","banking","banknote","bankroll","banner","bannister","banshee","banter","barbecue","barbed","barbell","barber","barcode","barge","bargraph","barista","baritone","barley","barmaid","barman","barn","barometer","barrack","barracuda","barrel","barrette","barricade","barrier","barstool","bartender","barterer","bash","basically","basics","basil","basin","basis","basket","batboy","batch","bath","baton","bats","battalion","battered","battering","battery","batting","battle","bauble","bazooka","blabber","bladder","blade","blah","blame","blaming","blanching","blandness","blank","blaspheme","blasphemy","blast","blatancy","blatantly","blazer","blazing","bleach","bleak","bleep","blemish","blend","bless","blighted","blimp","bling","blinked","blinker","blinking","blinks","blip","blissful","blitz","blizzard","bloated","bloating","blob","blog","bloomers","blooming","blooper","blot","blouse","blubber","bluff","bluish","blunderer","blunt","blurb","blurred","blurry","blurt","blush","blustery","boaster","boastful","boasting","boat","bobbed","bobbing","bobble","bobcat","bobsled","bobtail","bodacious","body","bogged","boggle","bogus","boil","bok","bolster","bolt","bonanza","bonded","bonding","bondless","boned","bonehead","boneless","bonelike","boney","bonfire","bonnet","bonsai","bonus","bony","boogeyman","boogieman","book","boondocks","booted","booth","bootie","booting","bootlace","bootleg","boots","boozy","borax","boring","borough","borrower","borrowing","boss","botanical","botanist","botany","botch","both","bottle","bottling","bottom","bounce","bouncing","bouncy","bounding","boundless","bountiful","bovine","boxcar","boxer","boxing","boxlike","boxy","breach","breath","breeches","breeching","breeder","breeding","breeze","breezy","brethren","brewery","brewing","briar","bribe","brick","bride","bridged","brigade","bright","brilliant","brim","bring","brink","brisket","briskly","briskness","bristle","brittle","broadband","broadcast","broaden","broadly","broadness","broadside","broadways","broiler","broiling","broken","broker","bronchial","bronco","bronze","bronzing","brook","broom","brought","browbeat","brownnose","browse","browsing","bruising","brunch","brunette","brunt","brush","brussels","brute","brutishly","bubble","bubbling","bubbly","buccaneer","bucked","bucket","buckle","buckshot","buckskin","bucktooth","buckwheat","buddhism","buddhist","budding","buddy","budget","buffalo","buffed","buffer","buffing","buffoon","buggy","bulb","bulge","bulginess","bulgur","bulk","bulldog","bulldozer","bullfight","bullfrog","bullhorn","bullion","bullish","bullpen","bullring","bullseye","bullwhip","bully","bunch","bundle","bungee","bunion","bunkbed","bunkhouse","bunkmate","bunny","bunt","busboy","bush","busily","busload","bust","busybody","buzz","cabana","cabbage","cabbie","cabdriver","cable","caboose","cache","cackle","cacti","cactus","caddie","caddy","cadet","cadillac","cadmium","cage","cahoots","cake","calamari","calamity","calcium","calculate","calculus","caliber","calibrate","calm","caloric","calorie","calzone","camcorder","cameo","camera","camisole","camper","campfire","camping","campsite","campus","canal","canary","cancel","candied","candle","candy","cane","canine","canister","cannabis","canned","canning","cannon","cannot","canola","canon","canopener","canopy","canteen","canyon","capable","capably","capacity","cape","capillary","capital","capitol","capped","capricorn","capsize","capsule","caption","captivate","captive","captivity","capture","caramel","carat","caravan","carbon","cardboard","carded","cardiac","cardigan","cardinal","cardstock","carefully","caregiver","careless","caress","caretaker","cargo","caring","carless","carload","carmaker","carnage","carnation","carnival","carnivore","carol","carpenter","carpentry","carpool","carport","carried","carrot","carrousel","carry","cartel","cartload","carton","cartoon","cartridge","cartwheel","carve","carving","carwash","cascade","case","cash","casing","casino","casket","cassette","casually","casualty","catacomb","catalog","catalyst","catalyze","catapult","cataract","catatonic","catcall","catchable","catcher","catching","catchy","caterer","catering","catfight","catfish","cathedral","cathouse","catlike","catnap","catnip","catsup","cattail","cattishly","cattle","catty","catwalk","caucasian","caucus","causal","causation","cause","causing","cauterize","caution","cautious","cavalier","cavalry","caviar","cavity","cedar","celery","celestial","celibacy","celibate","celtic","cement","census","ceramics","ceremony","certainly","certainty","certified","certify","cesarean","cesspool","chafe","chaffing","chain","chair","chalice","challenge","chamber","chamomile","champion","chance","change","channel","chant","chaos","chaperone","chaplain","chapped","chaps","chapter","character","charbroil","charcoal","charger","charging","chariot","charity","charm","charred","charter","charting","chase","chasing","chaste","chastise","chastity","chatroom","chatter","chatting","chatty","cheating","cheddar","cheek","cheer","cheese","cheesy","chef","chemicals","chemist","chemo","cherisher","cherub","chess","chest","chevron","chevy","chewable","chewer","chewing","chewy","chief","chihuahua","childcare","childhood","childish","childless","childlike","chili","chill","chimp","chip","chirping","chirpy","chitchat","chivalry","chive","chloride","chlorine","choice","chokehold","choking","chomp","chooser","choosing","choosy","chop","chosen","chowder","chowtime","chrome","chubby","chuck","chug","chummy","chump","chunk","churn","chute","cider","cilantro","cinch","cinema","cinnamon","circle","circling","circular","circulate","circus","citable","citadel","citation","citizen","citric","citrus","city","civic","civil","clad","claim","clambake","clammy","clamor","clamp","clamshell","clang","clanking","clapped","clapper","clapping","clarify","clarinet","clarity","clash","clasp","class","clatter","clause","clavicle","claw","clay","clean","clear","cleat","cleaver","cleft","clench","clergyman","clerical","clerk","clever","clicker","client","climate","climatic","cling","clinic","clinking","clip","clique","cloak","clobber","clock","clone","cloning","closable","closure","clothes","clothing","cloud","clover","clubbed","clubbing","clubhouse","clump","clumsily","clumsy","clunky","clustered","clutch","clutter","coach","coagulant","coastal","coaster","coasting","coastland","coastline","coat","coauthor","cobalt","cobbler","cobweb","cocoa","coconut","cod","coeditor","coerce","coexist","coffee","cofounder","cognition","cognitive","cogwheel","coherence","coherent","cohesive","coil","coke","cola","cold","coleslaw","coliseum","collage","collapse","collar","collected","collector","collide","collie","collision","colonial","colonist","colonize","colony","colossal","colt","coma","come","comfort","comfy","comic","coming","comma","commence","commend","comment","commerce","commode","commodity","commodore","common","commotion","commute","commuting","compacted","compacter","compactly","compactor","companion","company","compare","compel","compile","comply","component","composed","composer","composite","compost","composure","compound","compress","comprised","computer","computing","comrade","concave","conceal","conceded","concept","concerned","concert","conch","concierge","concise","conclude","concrete","concur","condense","condiment","condition","condone","conducive","conductor","conduit","cone","confess","confetti","confidant","confident","confider","confiding","configure","confined","confining","confirm","conflict","conform","confound","confront","confused","confusing","confusion","congenial","congested","congrats","congress","conical","conjoined","conjure","conjuror","connected","connector","consensus","consent","console","consoling","consonant","constable","constant","constrain","constrict","construct","consult","consumer","consuming","contact","container","contempt","contend","contented","contently","contents","contest","context","contort","contour","contrite","control","contusion","convene","convent","copartner","cope","copied","copier","copilot","coping","copious","copper","copy","coral","cork","cornball","cornbread","corncob","cornea","corned","corner","cornfield","cornflake","cornhusk","cornmeal","cornstalk","corny","coronary","coroner","corporal","corporate","corral","correct","corridor","corrode","corroding","corrosive","corsage","corset","cortex","cosigner","cosmetics","cosmic","cosmos","cosponsor","cost","cottage","cotton","couch","cough","could","countable","countdown","counting","countless","country","county","courier","covenant","cover","coveted","coveting","coyness","cozily","coziness","cozy","crabbing","crabgrass","crablike","crabmeat","cradle","cradling","crafter","craftily","craftsman","craftwork","crafty","cramp","cranberry","crane","cranial","cranium","crank","crate","crave","craving","crawfish","crawlers","crawling","crayfish","crayon","crazed","crazily","craziness","crazy","creamed","creamer","creamlike","crease","creasing","creatable","create","creation","creative","creature","credible","credibly","credit","creed","creme","creole","crepe","crept","crescent","crested","cresting","crestless","crevice","crewless","crewman","crewmate","crib","cricket","cried","crier","crimp","crimson","cringe","cringing","crinkle","crinkly","crisped","crisping","crisply","crispness","crispy","criteria","critter","croak","crock","crook","croon","crop","cross","crouch","crouton","crowbar","crowd","crown","crucial","crudely","crudeness","cruelly","cruelness","cruelty","crumb","crummiest","crummy","crumpet","crumpled","cruncher","crunching","crunchy","crusader","crushable","crushed","crusher","crushing","crust","crux","crying","cryptic","crystal","cubbyhole","cube","cubical","cubicle","cucumber","cuddle","cuddly","cufflink","culinary","culminate","culpable","culprit","cultivate","cultural","culture","cupbearer","cupcake","cupid","cupped","cupping","curable","curator","curdle","cure","curfew","curing","curled","curler","curliness","curling","curly","curry","curse","cursive","cursor","curtain","curtly","curtsy","curvature","curve","curvy","cushy","cusp","cussed","custard","custodian","custody","customary","customer","customize","customs","cut","cycle","cyclic","cycling","cyclist","cylinder","cymbal","cytoplasm","cytoplast","dab","dad","daffodil","dagger","daily","daintily","dainty","dairy","daisy","dallying","dance","dancing","dandelion","dander","dandruff","dandy","danger","dangle","dangling","daredevil","dares","daringly","darkened","darkening","darkish","darkness","darkroom","darling","darn","dart","darwinism","dash","dastardly","data","datebook","dating","daughter","daunting","dawdler","dawn","daybed","daybreak","daycare","daydream","daylight","daylong","dayroom","daytime","dazzler","dazzling","deacon","deafening","deafness","dealer","dealing","dealmaker","dealt","dean","debatable","debate","debating","debit","debrief","debtless","debtor","debug","debunk","decade","decaf","decal","decathlon","decay","deceased","deceit","deceiver","deceiving","december","decency","decent","deception","deceptive","decibel","decidable","decimal","decimeter","decipher","deck","declared","decline","decode","decompose","decorated","decorator","decoy","decrease","decree","dedicate","dedicator","deduce","deduct","deed","deem","deepen","deeply","deepness","deface","defacing","defame","default","defeat","defection","defective","defendant","defender","defense","defensive","deferral","deferred","defiance","defiant","defile","defiling","define","definite","deflate","deflation","deflator","deflected","deflector","defog","deforest","defraud","defrost","deftly","defuse","defy","degraded","degrading","degrease","degree","dehydrate","deity","dejected","delay","delegate","delegator","delete","deletion","delicacy","delicate","delicious","delighted","delirious","delirium","deliverer","delivery","delouse","delta","deluge","delusion","deluxe","demanding","demeaning","demeanor","demise","democracy","democrat","demote","demotion","demystify","denatured","deniable","denial","denim","denote","dense","density","dental","dentist","denture","deny","deodorant","deodorize","departed","departure","depict","deplete","depletion","deplored","deploy","deport","depose","depraved","depravity","deprecate","depress","deprive","depth","deputize","deputy","derail","deranged","derby","derived","desecrate","deserve","deserving","designate","designed","designer","designing","deskbound","desktop","deskwork","desolate","despair","despise","despite","destiny","destitute","destruct","detached","detail","detection","detective","detector","detention","detergent","detest","detonate","detonator","detoxify","detract","deuce","devalue","deviancy","deviant","deviate","deviation","deviator","device","devious","devotedly","devotee","devotion","devourer","devouring","devoutly","dexterity","dexterous","diabetes","diabetic","diabolic","diagnoses","diagnosis","diagram","dial","diameter","diaper","diaphragm","diary","dice","dicing","dictate","dictation","dictator","difficult","diffused","diffuser","diffusion","diffusive","dig","dilation","diligence","diligent","dill","dilute","dime","diminish","dimly","dimmed","dimmer","dimness","dimple","diner","dingbat","dinghy","dinginess","dingo","dingy","dining","dinner","diocese","dioxide","diploma","dipped","dipper","dipping","directed","direction","directive","directly","directory","direness","dirtiness","disabled","disagree","disallow","disarm","disarray","disaster","disband","disbelief","disburse","discard","discern","discharge","disclose","discolor","discount","discourse","discover","discuss","disdain","disengage","disfigure","disgrace","dish","disinfect","disjoin","disk","dislike","disliking","dislocate","dislodge","disloyal","dismantle","dismay","dismiss","dismount","disobey","disorder","disown","disparate","disparity","dispatch","dispense","dispersal","dispersed","disperser","displace","display","displease","disposal","dispose","disprove","dispute","disregard","disrupt","dissuade","distance","distant","distaste","distill","distinct","distort","distract","distress","district","distrust","ditch","ditto","ditzy","dividable","divided","dividend","dividers","dividing","divinely","diving","divinity","divisible","divisibly","division","divisive","divorcee","dizziness","dizzy","doable","docile","dock","doctrine","document","dodge","dodgy","doily","doing","dole","dollar","dollhouse","dollop","dolly","dolphin","domain","domelike","domestic","dominion","dominoes","donated","donation","donator","donor","donut","doodle","doorbell","doorframe","doorknob","doorman","doormat","doornail","doorpost","doorstep","doorstop","doorway","doozy","dork","dormitory","dorsal","dosage","dose","dotted","doubling","douche","dove","down","dowry","doze","drab","dragging","dragonfly","dragonish","dragster","drainable","drainage","drained","drainer","drainpipe","dramatic","dramatize","drank","drapery","drastic","draw","dreaded","dreadful","dreadlock","dreamboat","dreamily","dreamland","dreamless","dreamlike","dreamt","dreamy","drearily","dreary","drench","dress","drew","dribble","dried","drier","drift","driller","drilling","drinkable","drinking","dripping","drippy","drivable","driven","driver","driveway","driving","drizzle","drizzly","drone","drool","droop","drop-down","dropbox","dropkick","droplet","dropout","dropper","drove","drown","drowsily","drudge","drum","dry","dubbed","dubiously","duchess","duckbill","ducking","duckling","ducktail","ducky","duct","dude","duffel","dugout","duh","duke","duller","dullness","duly","dumping","dumpling","dumpster","duo","dupe","duplex","duplicate","duplicity","durable","durably","duration","duress","during","dusk","dust","dutiful","duty","duvet","dwarf","dweeb","dwelled","dweller","dwelling","dwindle","dwindling","dynamic","dynamite","dynasty","dyslexia","dyslexic","each","eagle","earache","eardrum","earflap","earful","earlobe","early","earmark","earmuff","earphone","earpiece","earplugs","earring","earshot","earthen","earthlike","earthling","earthly","earthworm","earthy","earwig","easeful","easel","easiest","easily","easiness","easing","eastbound","eastcoast","easter","eastward","eatable","eaten","eatery","eating","eats","ebay","ebony","ebook","ecard","eccentric","echo","eclair","eclipse","ecologist","ecology","economic","economist","economy","ecosphere","ecosystem","edge","edginess","edging","edgy","edition","editor","educated","education","educator","eel","effective","effects","efficient","effort","eggbeater","egging","eggnog","eggplant","eggshell","egomaniac","egotism","egotistic","either","eject","elaborate","elastic","elated","elbow","eldercare","elderly","eldest","electable","election","elective","elephant","elevate","elevating","elevation","elevator","eleven","elf","eligible","eligibly","eliminate","elite","elitism","elixir","elk","ellipse","elliptic","elm","elongated","elope","eloquence","eloquent","elsewhere","elude","elusive","elves","email","embargo","embark","embassy","embattled","embellish","ember","embezzle","emblaze","emblem","embody","embolism","emboss","embroider","emcee","emerald","emergency","emission","emit","emote","emoticon","emotion","empathic","empathy","emperor","emphases","emphasis","emphasize","emphatic","empirical","employed","employee","employer","emporium","empower","emptier","emptiness","empty","emu","enable","enactment","enamel","enchanted","enchilada","encircle","enclose","enclosure","encode","encore","encounter","encourage","encroach","encrust","encrypt","endanger","endeared","endearing","ended","ending","endless","endnote","endocrine","endorphin","endorse","endowment","endpoint","endurable","endurance","enduring","energetic","energize","energy","enforced","enforcer","engaged","engaging","engine","engorge","engraved","engraver","engraving","engross","engulf","enhance","enigmatic","enjoyable","enjoyably","enjoyer","enjoying","enjoyment","enlarged","enlarging","enlighten","enlisted","enquirer","enrage","enrich","enroll","enslave","ensnare","ensure","entail","entangled","entering","entertain","enticing","entire","entitle","entity","entomb","entourage","entrap","entree","entrench","entrust","entryway","entwine","enunciate","envelope","enviable","enviably","envious","envision","envoy","envy","enzyme","epic","epidemic","epidermal","epidermis","epidural","epilepsy","epileptic","epilogue","epiphany","episode","equal","equate","equation","equator","equinox","equipment","equity","equivocal","eradicate","erasable","erased","eraser","erasure","ergonomic","errand","errant","erratic","error","erupt","escalate","escalator","escapable","escapade","escapist","escargot","eskimo","esophagus","espionage","espresso","esquire","essay","essence","essential","establish","estate","esteemed","estimate","estimator","estranged","estrogen","etching","eternal","eternity","ethanol","ether","ethically","ethics","euphemism","evacuate","evacuee","evade","evaluate","evaluator","evaporate","evasion","evasive","even","everglade","evergreen","everybody","everyday","everyone","evict","evidence","evident","evil","evoke","evolution","evolve","exact","exalted","example","excavate","excavator","exceeding","exception","excess","exchange","excitable","exciting","exclaim","exclude","excluding","exclusion","exclusive","excretion","excretory","excursion","excusable","excusably","excuse","exemplary","exemplify","exemption","exerciser","exert","exes","exfoliate","exhale","exhaust","exhume","exile","existing","exit","exodus","exonerate","exorcism","exorcist","expand","expanse","expansion","expansive","expectant","expedited","expediter","expel","expend","expenses","expensive","expert","expire","expiring","explain","expletive","explicit","explode","exploit","explore","exploring","exponent","exporter","exposable","expose","exposure","express","expulsion","exquisite","extended","extending","extent","extenuate","exterior","external","extinct","extortion","extradite","extras","extrovert","extrude","extruding","exuberant","fable","fabric","fabulous","facebook","facecloth","facedown","faceless","facelift","faceplate","faceted","facial","facility","facing","facsimile","faction","factoid","factor","factsheet","factual","faculty","fade","fading","failing","falcon","fall","false","falsify","fame","familiar","family","famine","famished","fanatic","fancied","fanciness","fancy","fanfare","fang","fanning","fantasize","fantastic","fantasy","fascism","fastball","faster","fasting","fastness","faucet","favorable","favorably","favored","favoring","favorite","fax","feast","federal","fedora","feeble","feed","feel","feisty","feline","felt-tip","feminine","feminism","feminist","feminize","femur","fence","fencing","fender","ferment","fernlike","ferocious","ferocity","ferret","ferris","ferry","fervor","fester","festival","festive","festivity","fetal","fetch","fever","fiber","fiction","fiddle","fiddling","fidelity","fidgeting","fidgety","fifteen","fifth","fiftieth","fifty","figment","figure","figurine","filing","filled","filler","filling","film","filter","filth","filtrate","finale","finalist","finalize","finally","finance","financial","finch","fineness","finer","finicky","finished","finisher","finishing","finite","finless","finlike","fiscally","fit","five","flaccid","flagman","flagpole","flagship","flagstick","flagstone","flail","flakily","flaky","flame","flammable","flanked","flanking","flannels","flap","flaring","flashback","flashbulb","flashcard","flashily","flashing","flashy","flask","flatbed","flatfoot","flatly","flatness","flatten","flattered","flatterer","flattery","flattop","flatware","flatworm","flavored","flavorful","flavoring","flaxseed","fled","fleshed","fleshy","flick","flier","flight","flinch","fling","flint","flip","flirt","float","flock","flogging","flop","floral","florist","floss","flounder","flyable","flyaway","flyer","flying","flyover","flypaper","foam","foe","fog","foil","folic","folk","follicle","follow","fondling","fondly","fondness","fondue","font","food","fool","footage","football","footbath","footboard","footer","footgear","foothill","foothold","footing","footless","footman","footnote","footpad","footpath","footprint","footrest","footsie","footsore","footwear","footwork","fossil","foster","founder","founding","fountain","fox","foyer","fraction","fracture","fragile","fragility","fragment","fragrance","fragrant","frail","frame","framing","frantic","fraternal","frayed","fraying","frays","freckled","freckles","freebase","freebee","freebie","freedom","freefall","freehand","freeing","freeload","freely","freemason","freeness","freestyle","freeware","freeway","freewill","freezable","freezing","freight","french","frenzied","frenzy","frequency","frequent","fresh","fretful","fretted","friction","friday","fridge","fried","friend","frighten","frightful","frigidity","frigidly","frill","fringe","frisbee","frisk","fritter","frivolous","frolic","from","front","frostbite","frosted","frostily","frosting","frostlike","frosty","froth","frown","frozen","fructose","frugality","frugally","fruit","frustrate","frying","gab","gaffe","gag","gainfully","gaining","gains","gala","gallantly","galleria","gallery","galley","gallon","gallows","gallstone","galore","galvanize","gambling","game","gaming","gamma","gander","gangly","gangrene","gangway","gap","garage","garbage","garden","gargle","garland","garlic","garment","garnet","garnish","garter","gas","gatherer","gathering","gating","gauging","gauntlet","gauze","gave","gawk","gazing","gear","gecko","geek","geiger","gem","gender","generic","generous","genetics","genre","gentile","gentleman","gently","gents","geography","geologic","geologist","geology","geometric","geometry","geranium","gerbil","geriatric","germicide","germinate","germless","germproof","gestate","gestation","gesture","getaway","getting","getup","giant","gibberish","giblet","giddily","giddiness","giddy","gift","gigabyte","gigahertz","gigantic","giggle","giggling","giggly","gigolo","gilled","gills","gimmick","girdle","giveaway","given","giver","giving","gizmo","gizzard","glacial","glacier","glade","gladiator","gladly","glamorous","glamour","glance","glancing","glandular","glare","glaring","glass","glaucoma","glazing","gleaming","gleeful","glider","gliding","glimmer","glimpse","glisten","glitch","glitter","glitzy","gloater","gloating","gloomily","gloomy","glorified","glorifier","glorify","glorious","glory","gloss","glove","glowing","glowworm","glucose","glue","gluten","glutinous","glutton","gnarly","gnat","goal","goatskin","goes","goggles","going","goldfish","goldmine","goldsmith","golf","goliath","gonad","gondola","gone","gong","good","gooey","goofball","goofiness","goofy","google","goon","gopher","gore","gorged","gorgeous","gory","gosling","gossip","gothic","gotten","gout","gown","grab","graceful","graceless","gracious","gradation","graded","grader","gradient","grading","gradually","graduate","graffiti","grafted","grafting","grain","granddad","grandkid","grandly","grandma","grandpa","grandson","granite","granny","granola","grant","granular","grape","graph","grapple","grappling","grasp","grass","gratified","gratify","grating","gratitude","gratuity","gravel","graveness","graves","graveyard","gravitate","gravity","gravy","gray","grazing","greasily","greedily","greedless","greedy","green","greeter","greeting","grew","greyhound","grid","grief","grievance","grieving","grievous","grill","grimace","grimacing","grime","griminess","grimy","grinch","grinning","grip","gristle","grit","groggily","groggy","groin","groom","groove","grooving","groovy","grope","ground","grouped","grout","grove","grower","growing","growl","grub","grudge","grudging","grueling","gruffly","grumble","grumbling","grumbly","grumpily","grunge","grunt","guacamole","guidable","guidance","guide","guiding","guileless","guise","gulf","gullible","gully","gulp","gumball","gumdrop","gumminess","gumming","gummy","gurgle","gurgling","guru","gush","gusto","gusty","gutless","guts","gutter","guy","guzzler","gyration","habitable","habitant","habitat","habitual","hacked","hacker","hacking","hacksaw","had","haggler","haiku","half","halogen","halt","halved","halves","hamburger","hamlet","hammock","hamper","hamster","hamstring","handbag","handball","handbook","handbrake","handcart","handclap","handclasp","handcraft","handcuff","handed","handful","handgrip","handgun","handheld","handiness","handiwork","handlebar","handled","handler","handling","handmade","handoff","handpick","handprint","handrail","handsaw","handset","handsfree","handshake","handstand","handwash","handwork","handwoven","handwrite","handyman","hangnail","hangout","hangover","hangup","hankering","hankie","hanky","haphazard","happening","happier","happiest","happily","happiness","happy","harbor","hardcopy","hardcore","hardcover","harddisk","hardened","hardener","hardening","hardhat","hardhead","hardiness","hardly","hardness","hardship","hardware","hardwired","hardwood","hardy","harmful","harmless","harmonica","harmonics","harmonize","harmony","harness","harpist","harsh","harvest","hash","hassle","haste","hastily","hastiness","hasty","hatbox","hatchback","hatchery","hatchet","hatching","hatchling","hate","hatless","hatred","haunt","haven","hazard","hazelnut","hazily","haziness","hazing","hazy","headache","headband","headboard","headcount","headdress","headed","header","headfirst","headgear","heading","headlamp","headless","headlock","headphone","headpiece","headrest","headroom","headscarf","headset","headsman","headstand","headstone","headway","headwear","heap","heat","heave","heavily","heaviness","heaving","hedge","hedging","heftiness","hefty","helium","helmet","helper","helpful","helping","helpless","helpline","hemlock","hemstitch","hence","henchman","henna","herald","herbal","herbicide","herbs","heritage","hermit","heroics","heroism","herring","herself","hertz","hesitancy","hesitant","hesitate","hexagon","hexagram","hubcap","huddle","huddling","huff","hug","hula","hulk","hull","human","humble","humbling","humbly","humid","humiliate","humility","humming","hummus","humongous","humorist","humorless","humorous","humpback","humped","humvee","hunchback","hundredth","hunger","hungrily","hungry","hunk","hunter","hunting","huntress","huntsman","hurdle","hurled","hurler","hurling","hurray","hurricane","hurried","hurry","hurt","husband","hush","husked","huskiness","hut","hybrid","hydrant","hydrated","hydration","hydrogen","hydroxide","hyperlink","hypertext","hyphen","hypnoses","hypnosis","hypnotic","hypnotism","hypnotist","hypnotize","hypocrisy","hypocrite","ibuprofen","ice","iciness","icing","icky","icon","icy","idealism","idealist","idealize","ideally","idealness","identical","identify","identity","ideology","idiocy","idiom","idly","igloo","ignition","ignore","iguana","illicitly","illusion","illusive","image","imaginary","imagines","imaging","imbecile","imitate","imitation","immature","immerse","immersion","imminent","immobile","immodest","immorally","immortal","immovable","immovably","immunity","immunize","impaired","impale","impart","impatient","impeach","impeding","impending","imperfect","imperial","impish","implant","implement","implicate","implicit","implode","implosion","implosive","imply","impolite","important","importer","impose","imposing","impotence","impotency","impotent","impound","imprecise","imprint","imprison","impromptu","improper","improve","improving","improvise","imprudent","impulse","impulsive","impure","impurity","iodine","iodize","ion","ipad","iphone","ipod","irate","irk","iron","irregular","irrigate","irritable","irritably","irritant","irritate","islamic","islamist","isolated","isolating","isolation","isotope","issue","issuing","italicize","italics","item","itinerary","itunes","ivory","ivy","jab","jackal","jacket","jackknife","jackpot","jailbird","jailbreak","jailer","jailhouse","jalapeno","jam","janitor","january","jargon","jarring","jasmine","jaundice","jaunt","java","jawed","jawless","jawline","jaws","jaybird","jaywalker","jazz","jeep","jeeringly","jellied","jelly","jersey","jester","jet","jiffy","jigsaw","jimmy","jingle","jingling","jinx","jitters","jittery","job","jockey","jockstrap","jogger","jogging","john","joining","jokester","jokingly","jolliness","jolly","jolt","jot","jovial","joyfully","joylessly","joyous","joyride","joystick","jubilance","jubilant","judge","judgingly","judicial","judiciary","judo","juggle","juggling","jugular","juice","juiciness","juicy","jujitsu","jukebox","july","jumble","jumbo","jump","junction","juncture","june","junior","juniper","junkie","junkman","junkyard","jurist","juror","jury","justice","justifier","justify","justly","justness","juvenile","kabob","kangaroo","karaoke","karate","karma","kebab","keenly","keenness","keep","keg","kelp","kennel","kept","kerchief","kerosene","kettle","kick","kiln","kilobyte","kilogram","kilometer","kilowatt","kilt","kimono","kindle","kindling","kindly","kindness","kindred","kinetic","kinfolk","king","kinship","kinsman","kinswoman","kissable","kisser","kissing","kitchen","kite","kitten","kitty","kiwi","kleenex","knapsack","knee","knelt","knickers","knoll","koala","kooky","kosher","krypton","kudos","kung","labored","laborer","laboring","laborious","labrador","ladder","ladies","ladle","ladybug","ladylike","lagged","lagging","lagoon","lair","lake","lance","landed","landfall","landfill","landing","landlady","landless","landline","landlord","landmark","landmass","landmine","landowner","landscape","landside","landslide","language","lankiness","lanky","lantern","lapdog","lapel","lapped","lapping","laptop","lard","large","lark","lash","lasso","last","latch","late","lather","latitude","latrine","latter","latticed","launch","launder","laundry","laurel","lavender","lavish","laxative","lazily","laziness","lazy","lecturer","left","legacy","legal","legend","legged","leggings","legible","legibly","legislate","lego","legroom","legume","legwarmer","legwork","lemon","lend","length","lens","lent","leotard","lesser","letdown","lethargic","lethargy","letter","lettuce","level","leverage","levers","levitate","levitator","liability","liable","liberty","librarian","library","licking","licorice","lid","life","lifter","lifting","liftoff","ligament","likely","likeness","likewise","liking","lilac","lilly","lily","limb","limeade","limelight","limes","limit","limping","limpness","line","lingo","linguini","linguist","lining","linked","linoleum","linseed","lint","lion","lip","liquefy","liqueur","liquid","lisp","list","litigate","litigator","litmus","litter","little","livable","lived","lively","liver","livestock","lividly","living","lizard","lubricant","lubricate","lucid","luckily","luckiness","luckless","lucrative","ludicrous","lugged","lukewarm","lullaby","lumber","luminance","luminous","lumpiness","lumping","lumpish","lunacy","lunar","lunchbox","luncheon","lunchroom","lunchtime","lung","lurch","lure","luridness","lurk","lushly","lushness","luster","lustfully","lustily","lustiness","lustrous","lusty","luxurious","luxury","lying","lyrically","lyricism","lyricist","lyrics","macarena","macaroni","macaw","mace","machine","machinist","magazine","magenta","maggot","magical","magician","magma","magnesium","magnetic","magnetism","magnetize","magnifier","magnify","magnitude","magnolia","mahogany","maimed","majestic","majesty","majorette","majority","makeover","maker","makeshift","making","malformed","malt","mama","mammal","mammary","mammogram","manager","managing","manatee","mandarin","mandate","mandatory","mandolin","manger","mangle","mango","mangy","manhandle","manhole","manhood","manhunt","manicotti","manicure","manifesto","manila","mankind","manlike","manliness","manly","manmade","manned","mannish","manor","manpower","mantis","mantra","manual","many","map","marathon","marauding","marbled","marbles","marbling","march","mardi","margarine","margarita","margin","marigold","marina","marine","marital","maritime","marlin","marmalade","maroon","married","marrow","marry","marshland","marshy","marsupial","marvelous","marxism","mascot","masculine","mashed","mashing","massager","masses","massive","mastiff","matador","matchbook","matchbox","matcher","matching","matchless","material","maternal","maternity","math","mating","matriarch","matrimony","matrix","matron","matted","matter","maturely","maturing","maturity","mauve","maverick","maximize","maximum","maybe","mayday","mayflower","moaner","moaning","mobile","mobility","mobilize","mobster","mocha","mocker","mockup","modified","modify","modular","modulator","module","moisten","moistness","moisture","molar","molasses","mold","molecular","molecule","molehill","mollusk","mom","monastery","monday","monetary","monetize","moneybags","moneyless","moneywise","mongoose","mongrel","monitor","monkhood","monogamy","monogram","monologue","monopoly","monorail","monotone","monotype","monoxide","monsieur","monsoon","monstrous","monthly","monument","moocher","moodiness","moody","mooing","moonbeam","mooned","moonlight","moonlike","moonlit","moonrise","moonscape","moonshine","moonstone","moonwalk","mop","morale","morality","morally","morbidity","morbidly","morphine","morphing","morse","mortality","mortally","mortician","mortified","mortify","mortuary","mosaic","mossy","most","mothball","mothproof","motion","motivate","motivator","motive","motocross","motor","motto","mountable","mountain","mounted","mounting","mourner","mournful","mouse","mousiness","moustache","mousy","mouth","movable","move","movie","moving","mower","mowing","much","muck","mud","mug","mulberry","mulch","mule","mulled","mullets","multiple","multiply","multitask","multitude","mumble","mumbling","mumbo","mummified","mummify","mummy","mumps","munchkin","mundane","municipal","muppet","mural","murkiness","murky","murmuring","muscular","museum","mushily","mushiness","mushroom","mushy","music","musket","muskiness","musky","mustang","mustard","muster","mustiness","musty","mutable","mutate","mutation","mute","mutilated","mutilator","mutiny","mutt","mutual","muzzle","myself","myspace","mystified","mystify","myth","nacho","nag","nail","name","naming","nanny","nanometer","nape","napkin","napped","napping","nappy","narrow","nastily","nastiness","national","native","nativity","natural","nature","naturist","nautical","navigate","navigator","navy","nearby","nearest","nearly","nearness","neatly","neatness","nebula","nebulizer","nectar","negate","negation","negative","neglector","negligee","negligent","negotiate","nemeses","nemesis","neon","nephew","nerd","nervous","nervy","nest","net","neurology","neuron","neurosis","neurotic","neuter","neutron","never","next","nibble","nickname","nicotine","niece","nifty","nimble","nimbly","nineteen","ninetieth","ninja","nintendo","ninth","nuclear","nuclei","nucleus","nugget","nullify","number","numbing","numbly","numbness","numeral","numerate","numerator","numeric","numerous","nuptials","nursery","nursing","nurture","nutcase","nutlike","nutmeg","nutrient","nutshell","nuttiness","nutty","nuzzle","nylon","oaf","oak","oasis","oat","obedience","obedient","obituary","object","obligate","obliged","oblivion","oblivious","oblong","obnoxious","oboe","obscure","obscurity","observant","observer","observing","obsessed","obsession","obsessive","obsolete","obstacle","obstinate","obstruct","obtain","obtrusive","obtuse","obvious","occultist","occupancy","occupant","occupier","occupy","ocean","ocelot","octagon","octane","october","octopus","ogle","oil","oink","ointment","okay","old","olive","olympics","omega","omen","ominous","omission","omit","omnivore","onboard","oncoming","ongoing","onion","online","onlooker","only","onscreen","onset","onshore","onslaught","onstage","onto","onward","onyx","oops","ooze","oozy","opacity","opal","open","operable","operate","operating","operation","operative","operator","opium","opossum","opponent","oppose","opposing","opposite","oppressed","oppressor","opt","opulently","osmosis","other","otter","ouch","ought","ounce","outage","outback","outbid","outboard","outbound","outbreak","outburst","outcast","outclass","outcome","outdated","outdoors","outer","outfield","outfit","outflank","outgoing","outgrow","outhouse","outing","outlast","outlet","outline","outlook","outlying","outmatch","outmost","outnumber","outplayed","outpost","outpour","output","outrage","outrank","outreach","outright","outscore","outsell","outshine","outshoot","outsider","outskirts","outsmart","outsource","outspoken","outtakes","outthink","outward","outweigh","outwit","oval","ovary","oven","overact","overall","overarch","overbid","overbill","overbite","overblown","overboard","overbook","overbuilt","overcast","overcoat","overcome","overcook","overcrowd","overdraft","overdrawn","overdress","overdrive","overdue","overeager","overeater","overexert","overfed","overfeed","overfill","overflow","overfull","overgrown","overhand","overhang","overhaul","overhead","overhear","overheat","overhung","overjoyed","overkill","overlabor","overlaid","overlap","overlay","overload","overlook","overlord","overlying","overnight","overpass","overpay","overplant","overplay","overpower","overprice","overrate","overreach","overreact","override","overripe","overrule","overrun","overshoot","overshot","oversight","oversized","oversleep","oversold","overspend","overstate","overstay","overstep","overstock","overstuff","oversweet","overtake","overthrow","overtime","overtly","overtone","overture","overturn","overuse","overvalue","overview","overwrite","owl","oxford","oxidant","oxidation","oxidize","oxidizing","oxygen","oxymoron","oyster","ozone","paced","pacemaker","pacific","pacifier","pacifism","pacifist","pacify","padded","padding","paddle","paddling","padlock","pagan","pager","paging","pajamas","palace","palatable","palm","palpable","palpitate","paltry","pampered","pamperer","pampers","pamphlet","panama","pancake","pancreas","panda","pandemic","pang","panhandle","panic","panning","panorama","panoramic","panther","pantomime","pantry","pants","pantyhose","paparazzi","papaya","paper","paprika","papyrus","parabola","parachute","parade","paradox","paragraph","parakeet","paralegal","paralyses","paralysis","paralyze","paramedic","parameter","paramount","parasail","parasite","parasitic","parcel","parched","parchment","pardon","parish","parka","parking","parkway","parlor","parmesan","parole","parrot","parsley","parsnip","partake","parted","parting","partition","partly","partner","partridge","party","passable","passably","passage","passcode","passenger","passerby","passing","passion","passive","passivism","passover","passport","password","pasta","pasted","pastel","pastime","pastor","pastrami","pasture","pasty","patchwork","patchy","paternal","paternity","path","patience","patient","patio","patriarch","patriot","patrol","patronage","patronize","pauper","pavement","paver","pavestone","pavilion","paving","pawing","payable","payback","paycheck","payday","payee","payer","paying","payment","payphone","payroll","pebble","pebbly","pecan","pectin","peculiar","peddling","pediatric","pedicure","pedigree","pedometer","pegboard","pelican","pellet","pelt","pelvis","penalize","penalty","pencil","pendant","pending","penholder","penknife","pennant","penniless","penny","penpal","pension","pentagon","pentagram","pep","perceive","percent","perch","percolate","perennial","perfected","perfectly","perfume","periscope","perish","perjurer","perjury","perkiness","perky","perm","peroxide","perpetual","perplexed","persecute","persevere","persuaded","persuader","pesky","peso","pessimism","pessimist","pester","pesticide","petal","petite","petition","petri","petroleum","petted","petticoat","pettiness","petty","petunia","phantom","phobia","phoenix","phonebook","phoney","phonics","phoniness","phony","phosphate","photo","phrase","phrasing","placard","placate","placidly","plank","planner","plant","plasma","plaster","plastic","plated","platform","plating","platinum","platonic","platter","platypus","plausible","plausibly","playable","playback","player","playful","playgroup","playhouse","playing","playlist","playmaker","playmate","playoff","playpen","playroom","playset","plaything","playtime","plaza","pleading","pleat","pledge","plentiful","plenty","plethora","plexiglas","pliable","plod","plop","plot","plow","ploy","pluck","plug","plunder","plunging","plural","plus","plutonium","plywood","poach","pod","poem","poet","pogo","pointed","pointer","pointing","pointless","pointy","poise","poison","poker","poking","polar","police","policy","polio","polish","politely","polka","polo","polyester","polygon","polygraph","polymer","poncho","pond","pony","popcorn","pope","poplar","popper","poppy","popsicle","populace","popular","populate","porcupine","pork","porous","porridge","portable","portal","portfolio","porthole","portion","portly","portside","poser","posh","posing","possible","possibly","possum","postage","postal","postbox","postcard","posted","poster","posting","postnasal","posture","postwar","pouch","pounce","pouncing","pound","pouring","pout","powdered","powdering","powdery","power","powwow","pox","praising","prance","prancing","pranker","prankish","prankster","prayer","praying","preacher","preaching","preachy","preamble","precinct","precise","precision","precook","precut","predator","predefine","predict","preface","prefix","preflight","preformed","pregame","pregnancy","pregnant","preheated","prelaunch","prelaw","prelude","premiere","premises","premium","prenatal","preoccupy","preorder","prepaid","prepay","preplan","preppy","preschool","prescribe","preseason","preset","preshow","president","presoak","press","presume","presuming","preteen","pretended","pretender","pretense","pretext","pretty","pretzel","prevail","prevalent","prevent","preview","previous","prewar","prewashed","prideful","pried","primal","primarily","primary","primate","primer","primp","princess","print","prior","prism","prison","prissy","pristine","privacy","private","privatize","prize","proactive","probable","probably","probation","probe","probing","probiotic","problem","procedure","process","proclaim","procreate","procurer","prodigal","prodigy","produce","product","profane","profanity","professed","professor","profile","profound","profusely","progeny","prognosis","program","progress","projector","prologue","prolonged","promenade","prominent","promoter","promotion","prompter","promptly","prone","prong","pronounce","pronto","proofing","proofread","proofs","propeller","properly","property","proponent","proposal","propose","props","prorate","protector","protegee","proton","prototype","protozoan","protract","protrude","proud","provable","proved","proven","provided","provider","providing","province","proving","provoke","provoking","provolone","prowess","prowler","prowling","proximity","proxy","prozac","prude","prudishly","prune","pruning","pry","psychic","public","publisher","pucker","pueblo","pug","pull","pulmonary","pulp","pulsate","pulse","pulverize","puma","pumice","pummel","punch","punctual","punctuate","punctured","pungent","punisher","punk","pupil","puppet","puppy","purchase","pureblood","purebred","purely","pureness","purgatory","purge","purging","purifier","purify","purist","puritan","purity","purple","purplish","purposely","purr","purse","pursuable","pursuant","pursuit","purveyor","pushcart","pushchair","pusher","pushiness","pushing","pushover","pushpin","pushup","pushy","putdown","putt","puzzle","puzzling","pyramid","pyromania","python","quack","quadrant","quail","quaintly","quake","quaking","qualified","qualifier","qualify","quality","qualm","quantum","quarrel","quarry","quartered","quarterly","quarters","quartet","quench","query","quicken","quickly","quickness","quicksand","quickstep","quiet","quill","quilt","quintet","quintuple","quirk","quit","quiver","quizzical","quotable","quotation","quote","rabid","race","racing","racism","rack","racoon","radar","radial","radiance","radiantly","radiated","radiation","radiator","radio","radish","raffle","raft","rage","ragged","raging","ragweed","raider","railcar","railing","railroad","railway","raisin","rake","raking","rally","ramble","rambling","ramp","ramrod","ranch","rancidity","random","ranged","ranger","ranging","ranked","ranking","ransack","ranting","rants","rare","rarity","rascal","rash","rasping","ravage","raven","ravine","raving","ravioli","ravishing","reabsorb","reach","reacquire","reaction","reactive","reactor","reaffirm","ream","reanalyze","reappear","reapply","reappoint","reapprove","rearrange","rearview","reason","reassign","reassure","reattach","reawake","rebalance","rebate","rebel","rebirth","reboot","reborn","rebound","rebuff","rebuild","rebuilt","reburial","rebuttal","recall","recant","recapture","recast","recede","recent","recess","recharger","recipient","recital","recite","reckless","reclaim","recliner","reclining","recluse","reclusive","recognize","recoil","recollect","recolor","reconcile","reconfirm","reconvene","recopy","record","recount","recoup","recovery","recreate","rectal","rectangle","rectified","rectify","recycled","recycler","recycling","reemerge","reenact","reenter","reentry","reexamine","referable","referee","reference","refill","refinance","refined","refinery","refining","refinish","reflected","reflector","reflex","reflux","refocus","refold","reforest","reformat","reformed","reformer","reformist","refract","refrain","refreeze","refresh","refried","refueling","refund","refurbish","refurnish","refusal","refuse","refusing","refutable","refute","regain","regalia","regally","reggae","regime","region","register","registrar","registry","regress","regretful","regroup","regular","regulate","regulator","rehab","reheat","rehire","rehydrate","reimburse","reissue","reiterate","rejoice","rejoicing","rejoin","rekindle","relapse","relapsing","relatable","related","relation","relative","relax","relay","relearn","release","relenting","reliable","reliably","reliance","reliant","relic","relieve","relieving","relight","relish","relive","reload","relocate","relock","reluctant","rely","remake","remark","remarry","rematch","remedial","remedy","remember","reminder","remindful","remission","remix","remnant","remodeler","remold","remorse","remote","removable","removal","removed","remover","removing","rename","renderer","rendering","rendition","renegade","renewable","renewably","renewal","renewed","renounce","renovate","renovator","rentable","rental","rented","renter","reoccupy","reoccur","reopen","reorder","repackage","repacking","repaint","repair","repave","repaying","repayment","repeal","repeated","repeater","repent","rephrase","replace","replay","replica","reply","reporter","repose","repossess","repost","repressed","reprimand","reprint","reprise","reproach","reprocess","reproduce","reprogram","reps","reptile","reptilian","repugnant","repulsion","repulsive","repurpose","reputable","reputably","request","require","requisite","reroute","rerun","resale","resample","rescuer","reseal","research","reselect","reseller","resemble","resend","resent","reset","reshape","reshoot","reshuffle","residence","residency","resident","residual","residue","resigned","resilient","resistant","resisting","resize","resolute","resolved","resonant","resonate","resort","resource","respect","resubmit","result","resume","resupply","resurface","resurrect","retail","retainer","retaining","retake","retaliate","retention","rethink","retinal","retired","retiree","retiring","retold","retool","retorted","retouch","retrace","retract","retrain","retread","retreat","retrial","retrieval","retriever","retry","return","retying","retype","reunion","reunite","reusable","reuse","reveal","reveler","revenge","revenue","reverb","revered","reverence","reverend","reversal","reverse","reversing","reversion","revert","revisable","revise","revision","revisit","revivable","revival","reviver","reviving","revocable","revoke","revolt","revolver","revolving","reward","rewash","rewind","rewire","reword","rework","rewrap","rewrite","rhyme","ribbon","ribcage","rice","riches","richly","richness","rickety","ricotta","riddance","ridden","ride","riding","rifling","rift","rigging","rigid","rigor","rimless","rimmed","rind","rink","rinse","rinsing","riot","ripcord","ripeness","ripening","ripping","ripple","rippling","riptide","rise","rising","risk","risotto","ritalin","ritzy","rival","riverbank","riverbed","riverboat","riverside","riveter","riveting","roamer","roaming","roast","robbing","robe","robin","robotics","robust","rockband","rocker","rocket","rockfish","rockiness","rocking","rocklike","rockslide","rockstar","rocky","rogue","roman","romp","rope","roping","roster","rosy","rotten","rotting","rotunda","roulette","rounding","roundish","roundness","roundup","roundworm","routine","routing","rover","roving","royal","rubbed","rubber","rubbing","rubble","rubdown","ruby","ruckus","rudder","rug","ruined","rule","rumble","rumbling","rummage","rumor","runaround","rundown","runner","running","runny","runt","runway","rupture","rural","ruse","rush","rust","rut","sabbath","sabotage","sacrament","sacred","sacrifice","sadden","saddlebag","saddled","saddling","sadly","sadness","safari","safeguard","safehouse","safely","safeness","saffron","saga","sage","sagging","saggy","said","saint","sake","salad","salami","salaried","salary","saline","salon","saloon","salsa","salt","salutary","salute","salvage","salvaging","salvation","same","sample","sampling","sanction","sanctity","sanctuary","sandal","sandbag","sandbank","sandbar","sandblast","sandbox","sanded","sandfish","sanding","sandlot","sandpaper","sandpit","sandstone","sandstorm","sandworm","sandy","sanitary","sanitizer","sank","santa","sapling","sappiness","sappy","sarcasm","sarcastic","sardine","sash","sasquatch","sassy","satchel","satiable","satin","satirical","satisfied","satisfy","saturate","saturday","sauciness","saucy","sauna","savage","savanna","saved","savings","savior","savor","saxophone","say","scabbed","scabby","scalded","scalding","scale","scaling","scallion","scallop","scalping","scam","scandal","scanner","scanning","scant","scapegoat","scarce","scarcity","scarecrow","scared","scarf","scarily","scariness","scarring","scary","scavenger","scenic","schedule","schematic","scheme","scheming","schilling","schnapps","scholar","science","scientist","scion","scoff","scolding","scone","scoop","scooter","scope","scorch","scorebook","scorecard","scored","scoreless","scorer","scoring","scorn","scorpion","scotch","scoundrel","scoured","scouring","scouting","scouts","scowling","scrabble","scraggly","scrambled","scrambler","scrap","scratch","scrawny","screen","scribble","scribe","scribing","scrimmage","script","scroll","scrooge","scrounger","scrubbed","scrubber","scruffy","scrunch","scrutiny","scuba","scuff","sculptor","sculpture","scurvy","scuttle","secluded","secluding","seclusion","second","secrecy","secret","sectional","sector","secular","securely","security","sedan","sedate","sedation","sedative","sediment","seduce","seducing","segment","seismic","seizing","seldom","selected","selection","selective","selector","self","seltzer","semantic","semester","semicolon","semifinal","seminar","semisoft","semisweet","senate","senator","send","senior","senorita","sensation","sensitive","sensitize","sensually","sensuous","sepia","september","septic","septum","sequel","sequence","sequester","series","sermon","serotonin","serpent","serrated","serve","service","serving","sesame","sessions","setback","setting","settle","settling","setup","sevenfold","seventeen","seventh","seventy","severity","shabby","shack","shaded","shadily","shadiness","shading","shadow","shady","shaft","shakable","shakily","shakiness","shaking","shaky","shale","shallot","shallow","shame","shampoo","shamrock","shank","shanty","shape","shaping","share","sharpener","sharper","sharpie","sharply","sharpness","shawl","sheath","shed","sheep","sheet","shelf","shell","shelter","shelve","shelving","sherry","shield","shifter","shifting","shiftless","shifty","shimmer","shimmy","shindig","shine","shingle","shininess","shining","shiny","ship","shirt","shivering","shock","shone","shoplift","shopper","shopping","shoptalk","shore","shortage","shortcake","shortcut","shorten","shorter","shorthand","shortlist","shortly","shortness","shorts","shortwave","shorty","shout","shove","showbiz","showcase","showdown","shower","showgirl","showing","showman","shown","showoff","showpiece","showplace","showroom","showy","shrank","shrapnel","shredder","shredding","shrewdly","shriek","shrill","shrimp","shrine","shrink","shrivel","shrouded","shrubbery","shrubs","shrug","shrunk","shucking","shudder","shuffle","shuffling","shun","shush","shut","shy","siamese","siberian","sibling","siding","sierra","siesta","sift","sighing","silenced","silencer","silent","silica","silicon","silk","silliness","silly","silo","silt","silver","similarly","simile","simmering","simple","simplify","simply","sincere","sincerity","singer","singing","single","singular","sinister","sinless","sinner","sinuous","sip","siren","sister","sitcom","sitter","sitting","situated","situation","sixfold","sixteen","sixth","sixties","sixtieth","sixtyfold","sizable","sizably","size","sizing","sizzle","sizzling","skater","skating","skedaddle","skeletal","skeleton","skeptic","sketch","skewed","skewer","skid","skied","skier","skies","skiing","skilled","skillet","skillful","skimmed","skimmer","skimming","skimpily","skincare","skinhead","skinless","skinning","skinny","skintight","skipper","skipping","skirmish","skirt","skittle","skydiver","skylight","skyline","skype","skyrocket","skyward","slab","slacked","slacker","slacking","slackness","slacks","slain","slam","slander","slang","slapping","slapstick","slashed","slashing","slate","slather","slaw","sled","sleek","sleep","sleet","sleeve","slept","sliceable","sliced","slicer","slicing","slick","slider","slideshow","sliding","slighted","slighting","slightly","slimness","slimy","slinging","slingshot","slinky","slip","slit","sliver","slobbery","slogan","sloped","sloping","sloppily","sloppy","slot","slouching","slouchy","sludge","slug","slum","slurp","slush","sly","small","smartly","smartness","smasher","smashing","smashup","smell","smelting","smile","smilingly","smirk","smite","smith","smitten","smock","smog","smoked","smokeless","smokiness","smoking","smoky","smolder","smooth","smother","smudge","smudgy","smuggler","smuggling","smugly","smugness","snack","snagged","snaking","snap","snare","snarl","snazzy","sneak","sneer","sneeze","sneezing","snide","sniff","snippet","snipping","snitch","snooper","snooze","snore","snoring","snorkel","snort","snout","snowbird","snowboard","snowbound","snowcap","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowiness","snowless","snowman","snowplow","snowshoe","snowstorm","snowsuit","snowy","snub","snuff","snuggle","snugly","snugness","speak","spearfish","spearhead","spearman","spearmint","species","specimen","specked","speckled","specks","spectacle","spectator","spectrum","speculate","speech","speed","spellbind","speller","spelling","spendable","spender","spending","spent","spew","sphere","spherical","sphinx","spider","spied","spiffy","spill","spilt","spinach","spinal","spindle","spinner","spinning","spinout","spinster","spiny","spiral","spirited","spiritism","spirits","spiritual","splashed","splashing","splashy","splatter","spleen","splendid","splendor","splice","splicing","splinter","splotchy","splurge","spoilage","spoiled","spoiler","spoiling","spoils","spoken","spokesman","sponge","spongy","sponsor","spoof","spookily","spooky","spool","spoon","spore","sporting","sports","sporty","spotless","spotlight","spotted","spotter","spotting","spotty","spousal","spouse","spout","sprain","sprang","sprawl","spray","spree","sprig","spring","sprinkled","sprinkler","sprint","sprite","sprout","spruce","sprung","spry","spud","spur","sputter","spyglass","squabble","squad","squall","squander","squash","squatted","squatter","squatting","squeak","squealer","squealing","squeamish","squeegee","squeeze","squeezing","squid","squiggle","squiggly","squint","squire","squirt","squishier","squishy","stability","stabilize","stable","stack","stadium","staff","stage","staging","stagnant","stagnate","stainable","stained","staining","stainless","stalemate","staleness","stalling","stallion","stamina","stammer","stamp","stand","stank","staple","stapling","starboard","starch","stardom","stardust","starfish","stargazer","staring","stark","starless","starlet","starlight","starlit","starring","starry","starship","starter","starting","startle","startling","startup","starved","starving","stash","state","static","statistic","statue","stature","status","statute","statutory","staunch","stays","steadfast","steadier","steadily","steadying","steam","steed","steep","steerable","steering","steersman","stegosaur","stellar","stem","stench","stencil","step","stereo","sterile","sterility","sterilize","sterling","sternness","sternum","stew","stick","stiffen","stiffly","stiffness","stifle","stifling","stillness","stilt","stimulant","stimulate","stimuli","stimulus","stinger","stingily","stinging","stingray","stingy","stinking","stinky","stipend","stipulate","stir","stitch","stock","stoic","stoke","stole","stomp","stonewall","stoneware","stonework","stoning","stony","stood","stooge","stool","stoop","stoplight","stoppable","stoppage","stopped","stopper","stopping","stopwatch","storable","storage","storeroom","storewide","storm","stout","stove","stowaway","stowing","straddle","straggler","strained","strainer","straining","strangely","stranger","strangle","strategic","strategy","stratus","straw","stray","streak","stream","street","strength","strenuous","strep","stress","stretch","strewn","stricken","strict","stride","strife","strike","striking","strive","striving","strobe","strode","stroller","strongbox","strongly","strongman","struck","structure","strudel","struggle","strum","strung","strut","stubbed","stubble","stubbly","stubborn","stucco","stuck","student","studied","studio","study","stuffed","stuffing","stuffy","stumble","stumbling","stump","stung","stunned","stunner","stunning","stunt","stupor","sturdily","sturdy","styling","stylishly","stylist","stylized","stylus","suave","subarctic","subatomic","subdivide","subdued","subduing","subfloor","subgroup","subheader","subject","sublease","sublet","sublevel","sublime","submarine","submerge","submersed","submitter","subpanel","subpar","subplot","subprime","subscribe","subscript","subsector","subside","subsiding","subsidize","subsidy","subsoil","subsonic","substance","subsystem","subtext","subtitle","subtly","subtotal","subtract","subtype","suburb","subway","subwoofer","subzero","succulent","such","suction","sudden","sudoku","suds","sufferer","suffering","suffice","suffix","suffocate","suffrage","sugar","suggest","suing","suitable","suitably","suitcase","suitor","sulfate","sulfide","sulfite","sulfur","sulk","sullen","sulphate","sulphuric","sultry","superbowl","superglue","superhero","superior","superjet","superman","supermom","supernova","supervise","supper","supplier","supply","support","supremacy","supreme","surcharge","surely","sureness","surface","surfacing","surfboard","surfer","surgery","surgical","surging","surname","surpass","surplus","surprise","surreal","surrender","surrogate","surround","survey","survival","survive","surviving","survivor","sushi","suspect","suspend","suspense","sustained","sustainer","swab","swaddling","swagger","swampland","swan","swapping","swarm","sway","swear","sweat","sweep","swell","swept","swerve","swifter","swiftly","swiftness","swimmable","swimmer","swimming","swimsuit","swimwear","swinger","swinging","swipe","swirl","switch","swivel","swizzle","swooned","swoop","swoosh","swore","sworn","swung","sycamore","sympathy","symphonic","symphony","symptom","synapse","syndrome","synergy","synopses","synopsis","synthesis","synthetic","syrup","system","t-shirt","tabasco","tabby","tableful","tables","tablet","tableware","tabloid","tackiness","tacking","tackle","tackling","tacky","taco","tactful","tactical","tactics","tactile","tactless","tadpole","taekwondo","tag","tainted","take","taking","talcum","talisman","tall","talon","tamale","tameness","tamer","tamper","tank","tanned","tannery","tanning","tantrum","tapeless","tapered","tapering","tapestry","tapioca","tapping","taps","tarantula","target","tarmac","tarnish","tarot","tartar","tartly","tartness","task","tassel","taste","tastiness","tasting","tasty","tattered","tattle","tattling","tattoo","taunt","tavern","thank","that","thaw","theater","theatrics","thee","theft","theme","theology","theorize","thermal","thermos","thesaurus","these","thesis","thespian","thicken","thicket","thickness","thieving","thievish","thigh","thimble","thing","think","thinly","thinner","thinness","thinning","thirstily","thirsting","thirsty","thirteen","thirty","thong","thorn","those","thousand","thrash","thread","threaten","threefold","thrift","thrill","thrive","thriving","throat","throbbing","throng","throttle","throwaway","throwback","thrower","throwing","thud","thumb","thumping","thursday","thus","thwarting","thyself","tiara","tibia","tidal","tidbit","tidiness","tidings","tidy","tiger","tighten","tightly","tightness","tightrope","tightwad","tigress","tile","tiling","till","tilt","timid","timing","timothy","tinderbox","tinfoil","tingle","tingling","tingly","tinker","tinkling","tinsel","tinsmith","tint","tinwork","tiny","tipoff","tipped","tipper","tipping","tiptoeing","tiptop","tiring","tissue","trace","tracing","track","traction","tractor","trade","trading","tradition","traffic","tragedy","trailing","trailside","train","traitor","trance","tranquil","transfer","transform","translate","transpire","transport","transpose","trapdoor","trapeze","trapezoid","trapped","trapper","trapping","traps","trash","travel","traverse","travesty","tray","treachery","treading","treadmill","treason","treat","treble","tree","trekker","tremble","trembling","tremor","trench","trend","trespass","triage","trial","triangle","tribesman","tribunal","tribune","tributary","tribute","triceps","trickery","trickily","tricking","trickle","trickster","tricky","tricolor","tricycle","trident","tried","trifle","trifocals","trillion","trilogy","trimester","trimmer","trimming","trimness","trinity","trio","tripod","tripping","triumph","trivial","trodden","trolling","trombone","trophy","tropical","tropics","trouble","troubling","trough","trousers","trout","trowel","truce","truck","truffle","trump","trunks","trustable","trustee","trustful","trusting","trustless","truth","try","tubby","tubeless","tubular","tucking","tuesday","tug","tuition","tulip","tumble","tumbling","tummy","turban","turbine","turbofan","turbojet","turbulent","turf","turkey","turmoil","turret","turtle","tusk","tutor","tutu","tux","tweak","tweed","tweet","tweezers","twelve","twentieth","twenty","twerp","twice","twiddle","twiddling","twig","twilight","twine","twins","twirl","twistable","twisted","twister","twisting","twisty","twitch","twitter","tycoon","tying","tyke","udder","ultimate","ultimatum","ultra","umbilical","umbrella","umpire","unabashed","unable","unadorned","unadvised","unafraid","unaired","unaligned","unaltered","unarmored","unashamed","unaudited","unawake","unaware","unbaked","unbalance","unbeaten","unbend","unbent","unbiased","unbitten","unblended","unblessed","unblock","unbolted","unbounded","unboxed","unbraided","unbridle","unbroken","unbuckled","unbundle","unburned","unbutton","uncanny","uncapped","uncaring","uncertain","unchain","unchanged","uncharted","uncheck","uncivil","unclad","unclaimed","unclamped","unclasp","uncle","unclip","uncloak","unclog","unclothed","uncoated","uncoiled","uncolored","uncombed","uncommon","uncooked","uncork","uncorrupt","uncounted","uncouple","uncouth","uncover","uncross","uncrown","uncrushed","uncured","uncurious","uncurled","uncut","undamaged","undated","undaunted","undead","undecided","undefined","underage","underarm","undercoat","undercook","undercut","underdog","underdone","underfed","underfeed","underfoot","undergo","undergrad","underhand","underline","underling","undermine","undermost","underpaid","underpass","underpay","underrate","undertake","undertone","undertook","undertow","underuse","underwear","underwent","underwire","undesired","undiluted","undivided","undocked","undoing","undone","undrafted","undress","undrilled","undusted","undying","unearned","unearth","unease","uneasily","uneasy","uneatable","uneaten","unedited","unelected","unending","unengaged","unenvied","unequal","unethical","uneven","unexpired","unexposed","unfailing","unfair","unfasten","unfazed","unfeeling","unfiled","unfilled","unfitted","unfitting","unfixable","unfixed","unflawed","unfocused","unfold","unfounded","unframed","unfreeze","unfrosted","unfrozen","unfunded","unglazed","ungloved","unglue","ungodly","ungraded","ungreased","unguarded","unguided","unhappily","unhappy","unharmed","unhealthy","unheard","unhearing","unheated","unhelpful","unhidden","unhinge","unhitched","unholy","unhook","unicorn","unicycle","unified","unifier","uniformed","uniformly","unify","unimpeded","uninjured","uninstall","uninsured","uninvited","union","uniquely","unisexual","unison","unissued","unit","universal","universe","unjustly","unkempt","unkind","unknotted","unknowing","unknown","unlaced","unlatch","unlawful","unleaded","unlearned","unleash","unless","unleveled","unlighted","unlikable","unlimited","unlined","unlinked","unlisted","unlit","unlivable","unloaded","unloader","unlocked","unlocking","unlovable","unloved","unlovely","unloving","unluckily","unlucky","unmade","unmanaged","unmanned","unmapped","unmarked","unmasked","unmasking","unmatched","unmindful","unmixable","unmixed","unmolded","unmoral","unmovable","unmoved","unmoving","unnamable","unnamed","unnatural","unneeded","unnerve","unnerving","unnoticed","unopened","unopposed","unpack","unpadded","unpaid","unpainted","unpaired","unpaved","unpeeled","unpicked","unpiloted","unpinned","unplanned","unplanted","unpleased","unpledged","unplowed","unplug","unpopular","unproven","unquote","unranked","unrated","unraveled","unreached","unread","unreal","unreeling","unrefined","unrelated","unrented","unrest","unretired","unrevised","unrigged","unripe","unrivaled","unroasted","unrobed","unroll","unruffled","unruly","unrushed","unsaddle","unsafe","unsaid","unsalted","unsaved","unsavory","unscathed","unscented","unscrew","unsealed","unseated","unsecured","unseeing","unseemly","unseen","unselect","unselfish","unsent","unsettled","unshackle","unshaken","unshaved","unshaven","unsheathe","unshipped","unsightly","unsigned","unskilled","unsliced","unsmooth","unsnap","unsocial","unsoiled","unsold","unsolved","unsorted","unspoiled","unspoken","unstable","unstaffed","unstamped","unsteady","unsterile","unstirred","unstitch","unstopped","unstuck","unstuffed","unstylish","unsubtle","unsubtly","unsuited","unsure","unsworn","untagged","untainted","untaken","untamed","untangled","untapped","untaxed","unthawed","unthread","untidy","untie","until","untimed","untimely","untitled","untoasted","untold","untouched","untracked","untrained","untreated","untried","untrimmed","untrue","untruth","unturned","untwist","untying","unusable","unused","unusual","unvalued","unvaried","unvarying","unveiled","unveiling","unvented","unviable","unvisited","unvocal","unwanted","unwarlike","unwary","unwashed","unwatched","unweave","unwed","unwelcome","unwell","unwieldy","unwilling","unwind","unwired","unwitting","unwomanly","unworldly","unworn","unworried","unworthy","unwound","unwoven","unwrapped","unwritten","unzip","upbeat","upchuck","upcoming","upcountry","update","upfront","upgrade","upheaval","upheld","uphill","uphold","uplifted","uplifting","upload","upon","upper","upright","uprising","upriver","uproar","uproot","upscale","upside","upstage","upstairs","upstart","upstate","upstream","upstroke","upswing","uptake","uptight","uptown","upturned","upward","upwind","uranium","urban","urchin","urethane","urgency","urgent","urging","urologist","urology","usable","usage","useable","used","uselessly","user","usher","usual","utensil","utility","utilize","utmost","utopia","utter","vacancy","vacant","vacate","vacation","vagabond","vagrancy","vagrantly","vaguely","vagueness","valiant","valid","valium","valley","valuables","value","vanilla","vanish","vanity","vanquish","vantage","vaporizer","variable","variably","varied","variety","various","varmint","varnish","varsity","varying","vascular","vaseline","vastly","vastness","veal","vegan","veggie","vehicular","velcro","velocity","velvet","vendetta","vending","vendor","veneering","vengeful","venomous","ventricle","venture","venue","venus","verbalize","verbally","verbose","verdict","verify","verse","version","versus","vertebrae","vertical","vertigo","very","vessel","vest","veteran","veto","vexingly","viability","viable","vibes","vice","vicinity","victory","video","viewable","viewer","viewing","viewless","viewpoint","vigorous","village","villain","vindicate","vineyard","vintage","violate","violation","violator","violet","violin","viper","viral","virtual","virtuous","virus","visa","viscosity","viscous","viselike","visible","visibly","vision","visiting","visitor","visor","vista","vitality","vitalize","vitally","vitamins","vivacious","vividly","vividness","vixen","vocalist","vocalize","vocally","vocation","voice","voicing","void","volatile","volley","voltage","volumes","voter","voting","voucher","vowed","vowel","voyage","wackiness","wad","wafer","waffle","waged","wager","wages","waggle","wagon","wake","waking","walk","walmart","walnut","walrus","waltz","wand","wannabe","wanted","wanting","wasabi","washable","washbasin","washboard","washbowl","washcloth","washday","washed","washer","washhouse","washing","washout","washroom","washstand","washtub","wasp","wasting","watch","water","waviness","waving","wavy","whacking","whacky","wham","wharf","wheat","whenever","whiff","whimsical","whinny","whiny","whisking","whoever","whole","whomever","whoopee","whooping","whoops","why","wick","widely","widen","widget","widow","width","wieldable","wielder","wife","wifi","wikipedia","wildcard","wildcat","wilder","wildfire","wildfowl","wildland","wildlife","wildly","wildness","willed","willfully","willing","willow","willpower","wilt","wimp","wince","wincing","wind","wing","winking","winner","winnings","winter","wipe","wired","wireless","wiring","wiry","wisdom","wise","wish","wisplike","wispy","wistful","wizard","wobble","wobbling","wobbly","wok","wolf","wolverine","womanhood","womankind","womanless","womanlike","womanly","womb","woof","wooing","wool","woozy","word","work","worried","worrier","worrisome","worry","worsening","worshiper","worst","wound","woven","wow","wrangle","wrath","wreath","wreckage","wrecker","wrecking","wrench","wriggle","wriggly","wrinkle","wrinkly","wrist","writing","written","wrongdoer","wronged","wrongful","wrongly","wrongness","wrought","xbox","xerox","yahoo","yam","yanking","yapping","yard","yarn","yeah","yearbook","yearling","yearly","yearning","yeast","yelling","yelp","yen","yesterday","yiddish","yield","yin","yippee","yo-yo","yodel","yoga","yogurt","yonder","yoyo","yummy","zap","zealous","zebra","zen","zeppelin","zero","zestfully","zesty","zigzagged","zipfile","zipping","zippy","zips","zit","zodiac","zombie","zone","zoning","zookeeper","zoologist","zoology","zoom"]},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.cipherService.upsert(r)}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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=e?[4,this.lock(!0)]:[3,5]);case 4:t.sent(),t.label=5;case 5:return[2]}})})},n.prototype.lock=function(n){return void 0===n&&(n=!1),t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return n?[4,this.isPinLockSet()]:[3,4];case 1:return l.sent()[0]?(this.pinLocked=!0,this.messagingService.send("locked"),null==this.lockedCallback?[3,3]:[4,this.lockedCallback()]):[3,4];case 2:l.sent(),l.label=3;case 3:return[2];case 4:return[4,Promise.all([this.cryptoService.clearKey(),this.cryptoService.clearOrgKeys(!0),this.cryptoService.clearKeyPair(!0),this.cryptoService.clearEncKey(!0)])];case 5:return l.sent(),this.folderService.clearCache(),this.cipherService.clearCache(),this.collectionService.clearCache(),this.searchService.clearIndex(),this.messagingService.send("locked"),null==this.lockedCallback?[3,7]:[4,this.lockedCallback()];case 6:l.sent(),l.label=7;case 7: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(r.ConstantsService.lockOptionKey,n)];case 1:return l.sent(),[4,this.cryptoService.toggleKey()];case 2:return l.sent(),[2]}})})},n.prototype.isPinLockSet=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.storageService.get(r.ConstantsService.protectedPin)];case 1:return n=e.sent(),[4,this.storageService.get(r.ConstantsService.pinProtectedKey)];case 2:return l=e.sent(),[2,[null!=n,null!=l]]}})})},n.prototype.clear=function(){return this.storageService.remove(r.ConstantsService.protectedPin)},n}();l.LockService=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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),r=0,u.label=1;case 1:return r100&&l.pop(),[4,this.encryptHistory(l)]);case 3:return e=t.sent(),[4,this.storageService.save(c,e)];case 4:return[2,t.sent()]}})})},n.prototype.clear=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.history=[],[4,this.storageService.remove(c)];case 1:return[2,n.sent()]}})})},n.prototype.passwordStrength=function(n,l){if(void 0===l&&(l=null),null==n||0===n.length)return null;var e=["bitwarden","bit","warden"];null!=l&&l.length>0&&(e=e.concat(l));var t=Array.from(new Set(e));return r(n,t)},n.prototype.encryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(r){switch(r.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,r.sent()]}})})},n.prototype.decryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(r){switch(r.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 o.CipherString(n.password))];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=n.revisionDate&&(e=!1),o=!1,e&&(l?(e=null!=t,o=!0):null==n.collectionIds||null==n.organizationId?e=null==t:(e=!1,o=!0)),!e&&o&&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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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")&&(r=d.get("secret")),d.has("algorithm")&&null!=d.get("algorithm")&&("sha1"!==(f=d.get("algorithm").toLowerCase())&&"sha256"!==f&&"sha512"!==f||(e=f))}else s&&(r=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=o.Utils.fromHexToArray(h),(m=this.b32ToBytes(r)).length&&g.length?[4,this.sign(m,g,e)]:[2,null];case 1:if(0===(y=u.sent()).length)return[2,null];if(C=15&y[y.length-1],b=(127&y[C])<<24|(255&y[C+1])<<16|(255&y[C+2])<<8|255&y[C+3],w="",s)for(S=2147483647&b,_=0;_=n.length&&(n=Array(l+1-n.length).join(e)+n),n},n.prototype.decToHex=function(n){return(n<15.5?"0":"")+Math.round(n).toString(16)},n.prototype.b32ToHex=function(n){n=n.toUpperCase();for(var l="",e=0;e0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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()===r.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===o.TwoFactorProviderType.U2f){if(null==this.u2f)return[2];this.u2f.stop()}else this.selectedProviderType!==o.TwoFactorProviderType.Email&&this.selectedProviderType!==o.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===o.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!==o.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,r){this.email=n,this.masterPasswordHash=l,this.token=t,this.provider=e,this.remember=u,this.device=null!=r?r: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(35),r=e(33),o=e(3),i=e(7),a=e(12),s=e(20),d=e(18),c=e(4),p=e(99),f=e(51),v=e(540),h=e(451),g=e(10),m=e(452),y=e(96),C=e(23),b=e(5),w=e(32),S=e(8),_=e(63),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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"createOrganizationStep1")),"");n(l,1,0,"info","fa-thumb-tack",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"createOrganizationCreatePersonalAccount"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"submitAgreePolicies"));n(l,1,0,e);var u=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"termsOfService"));n(l,4,0,u);var r=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"privacyPolicy"));n(l,8,0,r)})}function A(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[o.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,r=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!==r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.masterPassword=e)&&u);"input"===l&&(u=!1!==r.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,[o.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,r=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!==(r.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,r=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!==(r.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);var t=n(l,94,0,!e.showPassword,e.showPassword);n(l,93,0,"fa fa-lg",t);n(l,116,0,"");n(l,119,0,"MasterPasswordRetype",e.confirmMasterPassword);n(l,122,0,"");var u=n(l,129,0,!e.showPassword,e.showPassword);n(l,128,0,"fa fa-lg",u);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);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"createAccount"));n(l,12,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"emailAddress"));n(l,25,0,r),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);var o=t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"emailAddressDesc"));n(l,40,0,o);var i=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"yourName"));n(l,47,0,i),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);var a=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"yourNameDesc"));n(l,59,0,a);var s=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"masterPass"));n(l,66,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"toggleVisibility")),"");n(l,89,0,d);var c=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l,0),"masterPassDesc"));n(l,102,0,c);var p=t.ɵunv(l,109,0,n(l,110,0,t.ɵnov(l,0),"reTypeMasterPass"));n(l,109,0,p),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);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,124,0,n(l,125,0,t.ɵnov(l,0),"toggleVisibility")),"");n(l,124,0,f);var v=t.ɵunv(l,137,0,n(l,138,0,t.ɵnov(l,0),"masterPassHint"));n(l,137,0,v),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);var h=t.ɵunv(l,148,0,n(l,149,0,t.ɵnov(l,0),"masterPassHintDesc"));n(l,148,0,h),n(l,156,0,t.ɵnov(l,1).loading);var g=t.ɵunv(l,159,0,n(l,160,0,t.ɵnov(l,0),"submit"));n(l,159,0,g);var m=t.ɵinlineInterpolate(1,"",t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l,0),"loading")),"");n(l,162,0,m),n(l,166,0,t.ɵnov(l,167).target,t.ɵnov(l,167).href);var y=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l,0),"cancel"));n(l,168,0,y)})}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,o.I18nService,C.CryptoService,b.ApiService,g.ActivatedRoute,w.StateService,S.PlatformUtilsService,_.PasswordGenerationService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_RegisterComponent=R,l.View_RegisterComponent_0=A,l.View_RegisterComponent_Host_0=O;var N=t.ɵccf("app-register",m.RegisterComponent,O,{},{},[]);l.RegisterComponentNgFactory=N},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r,o){this.name=l,this.email=n,this.masterPasswordHash=e,this.masterPasswordHint=t||null,this.key=u,this.kdf=r,this.kdfIterations=o}}();l.RegisterRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(454),v=e(5),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,r=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!==(r.email=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(27,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(30,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(32,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHint"));n(l,12,0,e);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"emailAddress"));n(l,22,0,u),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);var r=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"enterEmailToGetHint"));n(l,37,0,r),n(l,45,0,t.ɵnov(l,1).loading),n(l,47,0,t.ɵnov(l,1).loading);var o=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"));n(l,48,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"");n(l,51,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel"));n(l,57,0,a)})}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,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=5)return this.messagingService.send("logout"),[2];this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("invalidPin"))}return[3,18];case 14:return[4,this.cryptoService.makeKey(this.masterPassword,this.email,n,l)];case 15:return f=u.sent(),[4,this.cryptoService.hashPassword(this.masterPassword,f)];case 16:return v=u.sent(),[4,this.cryptoService.getKeyHash()];case 17:null!=(h=u.sent())&&null!=v&&h===v?this.setKeyAndContinue(f):this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("invalidMasterPassword")),u.label=18;case 18:return[2]}})})},n.prototype.logOut=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("logOutConfirmation"),this.i18nService.t("logOut"),this.i18nService.t("logOut"),this.i18nService.t("cancel"))];case 1:return n.sent()&&this.messagingService.send("logout"),[2]}})})},n.prototype.togglePassword=function(){this.platformUtilsService.eventTrack("Toggled Master Password on Unlock"),this.showPassword=!this.showPassword,document.getElementById(this.pinLock?"pin":"masterPassword").focus()},n.prototype.setKeyAndContinue=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.cryptoService.setKey(n)];case 1:return l.sent(),this.doContinue(),[2]}})})},n.prototype.doContinue=function(){this.messagingService.send("unlocked"),null!=this.onSuccessfulSubmit?this.onSuccessfulSubmit():null!=this.router&&this.router.navigate([this.successRoute])},n}();l.LockComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(458),i=e(10),a=e(13),s=e(5),d=e(9),c=t.ɵcrt({encapsulation:2,styles:[],data:{}});function p(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,12,"div",[["class","mt-5 d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,0,"img",[["alt","Bitwarden"],["class","mb-4 logo"],["src","images/logo-dark@2x.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-2x text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(10,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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"loading")),"");n(l,9,0,e)})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email-token",[],null,null,null,p,c)),t.ɵdid(1,114688,null,0,o.VerifyEmailTokenComponent,[i.Router,a.ToasterService,r.I18nService,i.ActivatedRoute,s.ApiService,d.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VerifyEmailTokenComponent=c,l.View_VerifyEmailTokenComponent_0=p,l.View_VerifyEmailTokenComponent_Host_0=f;var v=t.ɵccf("app-verify-email-token",o.VerifyEmailTokenComponent,f,{},{},[]);l.VerifyEmailTokenComponentNgFactory=v},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=n,this.token=l}}();l.VerifyEmailRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(459),s=e(13),d=e(5),c=e(9),p=e(32),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,12,"div",[["class","mt-5 d-flex justify-content-center"]],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,0,"img",[["alt","Bitwarden"],["class","mb-4 logo"],["src","images/logo-dark@2x.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-2x text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"loading")),"");n(l,8,0,e)})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,44,"div",[["class","container"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,41,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,38,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"p",[["class","lead text-center mb-4"]],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,31,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,28,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),(n()(),t.ɵeld(16,0,null,null,1,"strong",[["class","d-block mt-2"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"p",[],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,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,13,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"a",[["class","btn btn-primary btn-block"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,29).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(29,671744,null,0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,r.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),t.ɵpod(30,{email:0}),(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,"a",[["class","btn btn-primary btn-block ml-2 mt-0"],["routerLink","/register"]],[[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,null,0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,r.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),t.ɵpod(36,{email:0}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,t=n(l,30,0,e.email);n(l,29,0,t,"/");var u=n(l,36,0,e.email);n(l,35,0,u,"/register")},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"joinOrganization"));n(l,7,0,u),n(l,15,0,e.orgName),n(l,17,0,e.email);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"joinOrganizationDesc"));n(l,21,0,r),n(l,28,0,t.ɵnov(l,29).target,t.ɵnov(l,29).href);var o=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"logIn"));n(l,31,0,o),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"createAccount"));n(l,37,0,i)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[i.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(2,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,h)),t.ɵdid(5,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,2,0,e.loading),n(l,5,0,!e.loading&&!e.authed)},null)}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-accept-organization",[],null,null,null,g,f)),t.ɵdid(1,114688,null,0,a.AcceptOrganizationComponent,[u.Router,s.ToasterService,i.I18nService,u.ActivatedRoute,d.ApiService,c.UserService,p.StateService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AcceptOrganizationComponent=f,l.View_AcceptOrganizationComponent_0=g,l.View_AcceptOrganizationComponent_Host_0=m;var y=t.ɵccf("app-accept-organization",a.AcceptOrganizationComponent,m,{},{},[]);l.AcceptOrganizationComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUserAcceptRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(460),v=e(5),h=e(6),g=e(13),m=e(23),y=e(96),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,101,"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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,94,"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,91,"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,84,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,81,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["","\n "])),t.ɵppd(21,1),(n()(),t.ɵeld(22,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/lost-two-step-device/"],["rel","noopener"],["target","_blank"]],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.ɵeld(27,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[["for","email"]],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,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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,34)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,34).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,34)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,34)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.email=e)&&u);return u},null,null)),t.ɵdid(34,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(35,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(38,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(40,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(41,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(42,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},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","masterPassword"]],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,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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(52,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(53,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(56,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(58,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(59,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"label",[["for","recoveryCode"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control"],["id","recoveryCode"],["name","RecoveryCode"],["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,r=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);"ngModelChange"===l&&(u=!1!==(r.recoveryCode=e)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(70,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(73,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(75,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(76,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(83,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(85,0,null,null,2,"span",[],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,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(90,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,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,94).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(94,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(95,null,["\n ","\n "])),t.ɵppd(96,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,35,0,"");n(l,38,0,"Email",e.email);n(l,41,0,"");n(l,42,0,"false");n(l,53,0,"");n(l,56,0,"MasterPassword",e.masterPassword);n(l,59,0,"");n(l,70,0,"");n(l,73,0,"RecoveryCode",e.recoveryCode);n(l,76,0,"");n(l,94,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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"recoverAccountTwoStep"));n(l,12,0,e);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"recoverAccountTwoStepDesc"));n(l,20,0,u);var r=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l,0),"learnMore"));n(l,23,0,r);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"emailAddress"));n(l,30,0,o),n(l,33,0,t.ɵnov(l,35).required?"":null,t.ɵnov(l,40).ngClassUntouched,t.ɵnov(l,40).ngClassTouched,t.ɵnov(l,40).ngClassPristine,t.ɵnov(l,40).ngClassDirty,t.ɵnov(l,40).ngClassValid,t.ɵnov(l,40).ngClassInvalid,t.ɵnov(l,40).ngClassPending);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"masterPass"));n(l,48,0,i),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);var a=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,65,0,a),n(l,68,0,t.ɵnov(l,70).required?"":null,t.ɵnov(l,75).ngClassUntouched,t.ɵnov(l,75).ngClassTouched,t.ɵnov(l,75).ngClassPristine,t.ɵnov(l,75).ngClassDirty,t.ɵnov(l,75).ngClassValid,t.ɵnov(l,75).ngClassInvalid,t.ɵnov(l,75).ngClassPending),n(l,83,0,t.ɵnov(l,1).loading);var s=t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l,0),"submit"));n(l,86,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"loading")),"");n(l,89,0,d),n(l,93,0,t.ɵnov(l,94).target,t.ɵnov(l,94).href);var c=t.ɵunv(l,95,0,n(l,96,0,t.ɵnov(l,0),"cancel"));n(l,95,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-recover-two-factor",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.RecoverTwoFactorComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService,m.CryptoService,y.AuthService],null,null)],null,null)}l.RenderType_RecoverTwoFactorComponent=C,l.View_RecoverTwoFactorComponent_0=b,l.View_RecoverTwoFactorComponent_Host_0=w;var S=t.ɵccf("app-recover-two-factor",f.RecoverTwoFactorComponent,w,{},{},[]);l.RecoverTwoFactorComponentNgFactory=S},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorRecoveryRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(99),d=e(51),c=e(10),p=e(4),f=e(461),v=e(5),h=e(6),g=e(13),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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"]],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,2,"p",[],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,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,30)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,30).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,30)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,30)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.email=e)&&u);return u},null,null)),t.ɵdid(30,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(31,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(37,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(38,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(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",[],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,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,31,0,"");n(l,34,0,"Email",e.email);n(l,37,0,"");n(l,38,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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"deleteAccount"));n(l,12,0,e);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"deleteRecoverDesc"));n(l,20,0,u);var r=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"emailAddress"));n(l,26,0,r),n(l,29,0,t.ɵnov(l,31).required?"":null,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,45,0,t.ɵnov(l,1).loading);var o=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"));n(l,48,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"");n(l,51,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel"));n(l,57,0,a)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-recover-delete",[],null,null,null,y,m)),t.ɵdid(1,49152,null,0,f.RecoverDeleteComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService],null,null)],null,null)}l.RenderType_RecoverDeleteComponent=m,l.View_RecoverDeleteComponent_0=y,l.View_RecoverDeleteComponent_Host_0=C;var b=t.ɵccf("app-recover-delete",f.RecoverDeleteComponent,C,{},{},[]);l.RecoverDeleteComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.DeleteRecoverRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(10),p=e(4),f=e(462),v=e(5),h=e(6),g=e(13),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,56,"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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,49,"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,46,"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,39,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,36,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(20,114688,null,0,d.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(21,0,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"p",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,1,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(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,1),(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,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-danger btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"span",[],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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,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,49).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(49,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(50,null,["\n ","\n "])),t.ɵppd(51,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){n(l,5,0,l.component.formPromise);n(l,20,0,"warning");n(l,49,0,"/")},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);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"deleteAccount"));n(l,12,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"deleteAccountWarning"));n(l,21,0,r),n(l,27,0,e.email);var o=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"deleteRecoverConfirmDesc"));n(l,31,0,o),n(l,38,0,t.ɵnov(l,1).loading);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"deleteAccount"));n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"");n(l,44,0,a),n(l,48,0,t.ɵnov(l,49).target,t.ɵnov(l,49).href);var s=t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"cancel"));n(l,50,0,s)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-recover-delete",[],null,null,null,y,m)),t.ɵdid(1,114688,null,0,f.VerifyRecoverDeleteComponent,[c.Router,v.ApiService,h.Angulartics2,g.ToasterService,r.I18nService,c.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VerifyRecoverDeleteComponent=m,l.View_VerifyRecoverDeleteComponent_0=y,l.View_VerifyRecoverDeleteComponent_Host_0=C;var b=t.ɵccf("app-verify-recover-delete",f.VerifyRecoverDeleteComponent,C,{},{},[]);l.VerifyRecoverDeleteComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=n,this.token=l}}();l.VerifyDeleteRecoverRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(541),r=e(463),o=e(19),i=e(8),a=e(71),s=e(10),d=e(542),c=e(464),p=e(465),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,u.View_NavbarComponent_0,u.RenderType_NavbarComponent)),t.ɵdid(1,114688,null,0,r.NavbarComponent,[o.MessagingService,i.PlatformUtilsService,a.TokenService],null,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,s.RouterOutlet,[s.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(6,0,null,null,1,"app-footer",[],null,null,null,d.View_FooterComponent_0,d.RenderType_FooterComponent)),t.ɵdid(7,114688,null,0,c.FooterComponent,[i.PlatformUtilsService],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0),n(l,4,0),n(l,7,0)},null)}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-layout",[],null,null,null,v,f)),t.ɵdid(1,114688,null,0,p.UserLayoutComponent,[],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserLayoutComponent=f,l.View_UserLayoutComponent_0=v,l.View_UserLayoutComponent_Host_0=h;var g=t.ɵccf("app-user-layout",p.UserLayoutComponent,h,{},{},[]);l.UserLayoutComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(808),r=e(543),o=e(5),i=e(3),a=e(6),s=e(13),d=e(10),c=e(4),p=e(7),f=e(809),v=e(259),h=e(44),g=e(57),m=e(62),y=e(9),C=e(20),b=e(18),w=e(40),S=e(811),_=e(260),R=e(134),I=e(8),k=e(22),A=e(544),O=e(232),N=e(64),T=e(466),E=e(71),P=e(23),V=e(19),x=e(98),M=t.ɵcrt({encapsulation:2,styles:[],data:{}});function D(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","card border-warning mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-warning fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"button",[["class","btn btn-block btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateKey()&&t);return t},null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"updateKeyTitle"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"updateEncryptionKeyShortDesc"));n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"updateEncryptionKey"));n(l,15,0,r)})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email",[["class","d-block mb-4"]],null,null,null,u.View_VerifyEmailComponent_0,u.RenderType_VerifyEmailComponent)),t.ɵdid(1,49152,null,0,r.VerifyEmailComponent,[o.ApiService,i.I18nService,a.Angulartics2,s.ToasterService],null,null)],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","card border-warning mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-warning fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"a",[["class","btn btn-block btn-outline-secondary"],["href","https://browser-update.org/update-browser.html"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"updateBrowser"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"updateBrowserDesc"));n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"updateBrowser"));n(l,15,0,r)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","card border-success mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"div",[["class","card-header bg-success text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-star fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,[" ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,10,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,3,"a",[["class","btn btn-block btn-outline-secondary"],["routerLink","/settings/premium"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,15).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(15,671744,null,0,d.RouterLinkWithHref,[d.Router,d.ActivatedRoute,c.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(16,null,["\n ","\n "])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,15,0,"/settings/premium")},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"goPremium"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"premiumUpgradeUnlockFeatures"));n(l,11,0,u),n(l,14,0,t.ɵnov(l,15).target,t.ɵnov(l,15).href);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"goPremium"));n(l,16,0,r)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function B(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 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 J(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[i.I18nService]),t.ɵqud(402653184,1,{groupingsComponent:0}),t.ɵqud(402653184,2,{ciphersComponent:0}),t.ɵqud(402653184,3,{organizationsComponent:0}),t.ɵqud(402653184,4,{attachmentsModalRef:0}),t.ɵqud(402653184,5,{folderAddEditModalRef:0}),t.ɵqud(402653184,6,{cipherAddEditModalRef:0}),t.ɵqud(402653184,7,{shareModalRef:0}),t.ɵqud(402653184,8,{collectionsModalRef:0}),t.ɵqud(402653184,9,{bulkDeleteModalRef:0}),t.ɵqud(402653184,10,{bulkMoveModalRef:0}),t.ɵqud(402653184,11,{bulkShareModalRef:0}),t.ɵqud(402653184,12,{updateKeyModalRef:0}),(n()(),t.ɵeld(13,0,null,null,122,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,119,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"app-vault-groupings",[],null,[[null,"onAllClicked"],[null,"onFavoritesClicked"],[null,"onCipherTypeClicked"],[null,"onFolderClicked"],[null,"onAddFolder"],[null,"onEditFolder"],[null,"onCollectionClicked"],[null,"onSearchTextChanged"]],function(n,l,e){var t=!0,u=n.component;"onAllClicked"===l&&(t=!1!==u.clearGroupingFilters()&&t);"onFavoritesClicked"===l&&(t=!1!==u.filterFavorites()&&t);"onCipherTypeClicked"===l&&(t=!1!==u.filterCipherType(e)&&t);"onFolderClicked"===l&&(t=!1!==u.filterFolder(e.id)&&t);"onAddFolder"===l&&(t=!1!==u.addFolder()&&t);"onEditFolder"===l&&(t=!1!==u.editFolder(e.id)&&t);"onCollectionClicked"===l&&(t=!1!==u.filterCollection(e.id)&&t);"onSearchTextChanged"===l&&(t=!1!==u.filterSearchText(e)&&t);return t},f.View_GroupingsComponent_0,f.RenderType_GroupingsComponent)),t.ɵdid(20,49152,[[1,4]],0,v.GroupingsComponent,[h.CollectionService,g.FolderService,m.StorageService,y.UserService],null,{onAllClicked:"onAllClicked",onFavoritesClicked:"onFavoritesClicked",onCipherTypeClicked:"onCipherTypeClicked",onFolderClicked:"onFolderClicked",onAddFolder:"onAddFolder",onEditFolder:"onEditFolder",onCollectionClicked:"onCollectionClicked",onSearchTextChanged:"onSearchTextChanged"}),(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,75,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,68,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,9,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵeld(31,0,[["actionSpinner",1]],null,5,"small",[],null,null,null,null,null)),t.ɵdid(32,540672,null,0,C.ApiActionDirective,[t.ElementRef,b.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(35,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.ɵeld(39,0,null,null,54,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,45,"div",[["appListDropdown",""],["class","dropdown mr-2"]],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-sm btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["id","bulkActionsButton"],["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"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,37,"div",[["aria-labelledby","bulkActionsButton"],["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,51).onClick(e)&&u);"click"===l&&(u=!1!==r.bulkMove()&&u);return u},null,null)),t.ɵdid(51,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-fw fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["\n ","\n "])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,58).onClick(e)&&u);"click"===l&&(u=!1!==r.bulkShare()&&u);return u},null,null)),t.ɵdid(58,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-fw fa-share-alt"]],null,null,null,null,null)),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,4,"a",[["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.bulkDelete()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(67,null,["\n ","\n "])),t.ɵppd(68,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll(!0)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,0,"i",[["class","fa fa-fw fa-check-square-o"]],null,null,null,null,null)),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll(!1)&&u);return u},null,null)),t.ɵdid(80,16384,null,0,w.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,0,"i",[["class","fa fa-fw fa-minus-square-o"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["\n ","\n "])),t.ɵppd(84,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,4,"button",[["class","btn btn-outline-primary btn-sm"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.addCipher()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(91,null,["","\n "])),t.ɵppd(92,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,2,"app-vault-ciphers",[],null,[[null,"onCipherClicked"],[null,"onAttachmentsClicked"],[null,"onAddCipher"],[null,"onShareClicked"],[null,"onCollectionsClicked"]],function(n,l,e){var t=!0,u=n.component;"onCipherClicked"===l&&(t=!1!==u.editCipher(e)&&t);"onAttachmentsClicked"===l&&(t=!1!==u.editCipherAttachments(e)&&t);"onAddCipher"===l&&(t=!1!==u.addCipher()&&t);"onShareClicked"===l&&(t=!1!==u.shareCipher(e)&&t);"onCollectionsClicked"===l&&(t=!1!==u.editCipherCollections(e)&&t);return t},S.View_CiphersComponent_0,S.RenderType_CiphersComponent)),t.ɵdid(97,180224,[[2,4]],0,_.CiphersComponent,[R.SearchService,a.Angulartics2,s.ToasterService,i.I18nService,I.PlatformUtilsService,k.CipherService],null,{onCipherClicked:"onCipherClicked",onAddCipher:"onAddCipher",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked"}),(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,32,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(104,16384,null,0,c.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(107,16384,null,0,c.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(110,16384,null,0,c.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(113,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,0,null,null,17,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(118,null,["\n ","\n "])),t.ɵppd(119,1),(n()(),t.ɵeld(120,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/what-is-an-organization/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,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(127,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(129,0,null,null,1,"app-organizations",[],null,null,null,A.View_OrganizationsComponent_0,A.RenderType_OrganizationsComponent)),t.ɵdid(130,114688,[[3,4]],0,O.OrganizationsComponent,[y.UserService,I.PlatformUtilsService,i.I18nService,o.ApiService,a.Angulartics2,s.ToasterService,N.SyncService],{vault:[0,"vault"]},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.ɵand(16777216,[[4,3],["attachments",2]],null,0,null,G)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["folderAddEdit",2]],null,0,null,j)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["cipherAddEdit",2]],null,0,null,q)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[7,3],["share",2]],null,0,null,B)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[8,3],["collections",2]],null,0,null,K)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[9,3],["bulkDeleteTemplate",2]],null,0,null,H)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[10,3],["bulkMoveTemplate",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[11,3],["bulkShareTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[12,3],["updateKeyTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,32,0,e.ciphersComponent.actionPromise),n(l,35,0,t.ɵnov(l,31).loading),n(l,104,0,e.showUpdateKey),n(l,107,0,e.showVerifyEmail),n(l,110,0,e.showBrowserOutdated),n(l,113,0,e.showPremiumCallout);n(l,130,0,!0)},function(n,l){var e=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"myVault"));n(l,29,0,e);var u=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"moveSelected"));n(l,54,0,u);var r=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"shareSelected"));n(l,61,0,r);var o=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l,0),"deleteSelected"));n(l,67,0,o);var i=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"selectAll"));n(l,76,0,i);var a=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l,0),"unselectAll"));n(l,83,0,a);var s=t.ɵunv(l,91,0,n(l,92,0,t.ɵnov(l,0),"addItem"));n(l,91,0,s);var d=t.ɵunv(l,118,0,n(l,119,0,t.ɵnov(l,0),"organizations"));n(l,118,0,d);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l,0),"learnMore")),"");n(l,120,0,c)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault",[],null,null,null,J,M)),t.ɵdid(1,245760,null,0,T.VaultComponent,[N.SyncService,d.ActivatedRoute,d.Router,t.ChangeDetectorRef,i.I18nService,t.ComponentFactoryResolver,E.TokenService,P.CryptoService,V.MessagingService,y.UserService,I.PlatformUtilsService,s.ToasterService,x.BroadcasterService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_VaultComponent=M,l.View_VaultComponent_0=J,l.View_VaultComponent_Host_0=Z;var X=t.ɵccf("app-vault",T.VaultComponent,Z,{},{},[]);l.VaultComponentNgFactory=X},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(20),i=e(18),a=e(543),s=e(5),d=e(6),c=e(13),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,25,"div",[["class","card border-warning"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,4,"div",[["class","card-header bg-warning text-white"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,0,"i",[["class","fa fa-envelope-o fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,[" ","\n "])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,16,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[],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,[["sendBtn",1]],null,9,"button",[["class","btn btn-block 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.send()&&t);return t},null,null)),t.ɵdid(16,540672,null,0,o.ApiActionDirective,[t.ElementRef,i.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"i",[["class","fa fa-spin fa-spinner"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"span",[],null,null,null,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 "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,16,0,l.component.actionPromise)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"verifyEmail"));n(l,6,0,e);var u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"verifyEmailDesc"));n(l,12,0,u),n(l,15,0,t.ɵnov(l,15).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"loading")),"");n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"sendEmail"));n(l,22,0,o)})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-verify-email",[],null,null,null,f,p)),t.ɵdid(1,49152,null,0,a.VerifyEmailComponent,[s.ApiService,r.I18nService,d.Angulartics2,c.ToasterService],null,null)],null,null)}l.RenderType_VerifyEmailComponent=p,l.View_VerifyEmailComponent_0=f,l.View_VerifyEmailComponent_Host_0=v;var h=t.ɵccf("app-verify-email",a.VerifyEmailComponent,v,{},{},[]);l.VerifyEmailComponentNgFactory=h},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(40),o=e(7),i=e(3),a=e(12),s=e(99),d=e(259),c=e(44),p=e(57),f=e(62),v=e(9),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.selectFavorites()&&u);return u},null,null)),t.ɵdid(5,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-star"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["","\n "])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,2,0,l.component.selectedFavorites);n(l,1,0,e)},function(n,l){var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"favorites"));n(l,8,0,e)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"p",[["class","text-muted"]],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"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","text-muted ml-auto show-active"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.editFolder(n.parent.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-pencil fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"editFolder")),"");n(l,0,0,e)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,C)),t.ɵdid(3,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(4,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,4,0,l.parent.context.$implicit.children);n(l,3,0,e,t.ɵnov(l.parent.parent.parent,15))},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,13,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"i",[["class","fa-li fa"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.collapse(n.context.$implicit.node)&&t);return t},null,null)),t.ɵdid(7,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(8,{"fa-caret-right":0,"fa-caret-down":1}),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,12).onClick(e)&&u);"click"===l&&(u=!1!==r.selectFolder(n.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(16,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,b)),t.ɵdid(20,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,t=n(l,2,0,e.selectedFolder&&l.context.$implicit.node.id===e.selectedFolderId);n(l,1,0,t);var u=n(l,8,0,e.isCollapsed(l.context.$implicit.node),!e.isCollapsed(l.context.$implicit.node));n(l,7,0,"fa-li fa",u),n(l,16,0,l.context.$implicit.node.id),n(l,20,0,l.context.$implicit.children.length&&!e.isCollapsed(l.context.$implicit.node))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleCollapse")),"");n(l,6,0,e),n(l,13,0,l.context.$implicit.node.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(2,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,2,0,l.context.$implicit)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function R(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,9,"h3",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵeld(5,0,null,null,5,"a",[["appStopClick",""],["class","text-muted ml-auto"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==r.addFolder()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,0,"i",[["class","fa fa-plus 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.ɵeld(13,0,null,null,7,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(0,[["recursiveFolders",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,_)),t.ɵdid(18,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(19,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,19,0,l.component.nestedFolders);n(l,18,0,e,t.ɵnov(l,15))},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folders"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addFolder")),"");n(l,5,0,u)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,I)),t.ɵdid(3,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(4,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,4,0,l.parent.context.$implicit.children);n(l,3,0,e,t.ɵnov(l.parent.parent.parent,8))},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"li",[],null,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,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,3,"i",[["class","fa-li fa"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.collapse(n.context.$implicit.node)&&t);return t},null,null)),t.ɵdid(5,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(6,{"fa-caret-right":0,"fa-caret-down":1}),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCollection(n.context.$implicit.node)&&u);return u},null,null)),t.ɵdid(10,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(11,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,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,t=n(l,2,0,l.context.$implicit.node.id===e.selectedCollectionId);n(l,1,0,t);var u=n(l,6,0,e.isCollapsed(l.context.$implicit.node),!e.isCollapsed(l.context.$implicit.node));n(l,5,0,"fa-li fa",u),n(l,14,0,l.context.$implicit.children.length&&!e.isCollapsed(l.context.$implicit.node))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleCollapse")),"");n(l,4,0,e),n(l,11,0,l.context.$implicit.node.name)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(2,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,2,0,l.context.$implicit)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function T(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,2,"h3",[],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,"ul",[["class","fa-ul card-ul carets"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(0,[["recursiveCollections",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,N)),t.ɵdid(11,540672,null,0,u.NgTemplateOutlet,[t.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),t.ɵpod(12,{$implicit:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=n(l,12,0,l.component.nestedCollections);n(l,11,0,e,t.ɵnov(l,8))},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}function E(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,R)),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,T)),t.ɵdid(6,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.showFolders),n(l,6,0,e.showCollections&&e.collections&&e.collections.length)},null)}function P(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,102,"div",[["class","card vault-filters"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1),(n()(),t.ɵeld(6,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/searching-vault/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,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(13,0,null,null,89,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,7,"input",[["appAutofocus",""],["class","form-control"],["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,r=n.component;"input"===l&&(u=!1!==t.ɵnov(n,16)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,16).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,16)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,16)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(r.searchText=e)&&u);"input"===l&&(u=!1!==r.searchTextChanged()&&u);return u},null,null)),t.ɵdid(16,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(18,671744,null,0,a.NgModel,[[8,null],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(20,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(21,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,16,"ul",[["class","fa-ul card-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(27,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(28,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.selectAll()&&u);return u},null,null)),t.ɵdid(31,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-th"]],null,null,null,null,null)),(n()(),t.ɵted(34,null,["","\n "])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(39,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(42,0,null,null,2,"h3",[],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,49,"ul",[["class","fa-ul card-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(49,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(50,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,53).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Login)&&u);return u},null,null)),t.ɵdid(53,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-globe"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["","\n "])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(61,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(62,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Card)&&u);return u},null,null)),t.ɵdid(65,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-credit-card"]],null,null,null,null,null)),(n()(),t.ɵted(68,null,["","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(73,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(74,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,77).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.Identity)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-id-card-o"]],null,null,null,null,null)),(n()(),t.ɵted(80,null,["","\n "])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,10,"li",[],null,null,null,null,null)),t.ɵdid(85,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(86,{active:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,5,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e)&&u);"click"===l&&(u=!1!==r.selectType(r.cipherType.SecureNote)&&u);return u},null,null)),t.ɵdid(89,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,0,"i",[["class","fa-li fa fa-fw fa-sticky-note-o"]],null,null,null,null,null)),(n()(),t.ɵted(92,null,["","\n "])),t.ɵppd(93,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(98,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,E)),t.ɵdid(101,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,18,0,e.searchText);n(l,21,0,"");var t=n(l,28,0,e.selectedAll);n(l,27,0,t),n(l,39,0,e.showFavorites);var u=n(l,50,0,e.selectedType===e.cipherType.Login);n(l,49,0,u);var r=n(l,62,0,e.selectedType===e.cipherType.Card);n(l,61,0,r);var o=n(l,74,0,e.selectedType===e.cipherType.Identity);n(l,73,0,o);var i=n(l,86,0,e.selectedType===e.cipherType.SecureNote);n(l,85,0,i),n(l,98,0,!e.loaded),n(l,101,0,e.loaded)},function(n,l){var e=l.component,u=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"filters"));n(l,4,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"learnMore")),"");n(l,6,0,r);var o=t.ɵinlineInterpolate(1,"",e.searchPlaceholder||t.ɵunv(l,15,0,n(l,22,0,t.ɵnov(l,0),"searchVault")),"");n(l,15,0,o,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);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"allItems"));n(l,34,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"types"));n(l,43,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"typeLogin"));n(l,56,0,s);var d=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"typeCard"));n(l,68,0,d);var c=t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l,0),"typeIdentity"));n(l,80,0,c);var p=t.ɵunv(l,92,0,n(l,93,0,t.ɵnov(l,0),"typeSecureNote"));n(l,92,0,p)})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-groupings",[],null,null,null,P,h)),t.ɵdid(1,49152,null,0,d.GroupingsComponent,[c.CollectionService,p.FolderService,f.StorageService,v.UserService],null,null)],null,null)}l.RenderType_GroupingsComponent=h,l.View_GroupingsComponent_0=P,l.View_GroupingsComponent_Host_0=V;var x=t.ɵccf("app-vault-groupings",d.GroupingsComponent,V,{showFolders:"showFolders",showCollections:"showCollections",showFavorites:"showFavorites"},{onAllClicked:"onAllClicked",onFavoritesClicked:"onFavoritesClicked",onCipherTypeClicked:"onCipherTypeClicked",onFolderClicked:"onFolderClicked",onAddFolder:"onAddFolder",onEditFolder:"onEditFolder",onCollectionClicked:"onCollectionClicked",onSearchTextChanged:"onSearchTextChanged"},[]);l.GroupingsComponentNgFactory=x},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&this.collections.length>0&&this.collections.forEach(function(n){r.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!==o.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),this.messagingService.send(this.editMode?"editedCipher":"addedCipher"),[2,!0];case 4:return l.sent(),[3,5];case 5:return[2,!1]}})})},n.prototype.addUri=function(){this.cipher.type===o.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===o.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.trackByFunction=function(n,l){return n},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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,r,o,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]:(o=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:o=u.sent(),u.label=6;case 6:return r=o,[4,this.cryptoService.decryptFromBytes(t,r)];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,r=this;return u(this,function(o){switch(o.label){case 0:if(e=n,null!=n.key||e.downloading||null!=this.reuploadPromises[n.id])return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),this.reuploadPromises[n.id]=Promise.resolve().then(function(){return t(r,void 0,void 0,function(){var t,r,o,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 r=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 o=i,[4,this.cryptoService.decryptFromBytes(r,o)];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 o.sent(),[3,4];case 3:return o.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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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(r){switch(r.label){case 0:return[4,this.cipherService.get(this.cipherId)];case 1:return[4,r.sent().decrypt()];case 2:n=r.sent(),l=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),r.label=3;case 3:return r.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 r.sent(),[3,6];case 5:return r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"domainRules"));n(l,4,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"domainRulesDesc"));n(l,9,0,u),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);var r=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"customEqDomains"));n(l,19,0,r),n(l,28,0,t.ɵnov(l,12).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"loading")),"");n(l,30,0,o);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"save"));n(l,34,0,i);var a=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"globalEqDomains"));n(l,39,0,a),n(l,48,0,t.ɵnov(l,12).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"loading")),"");n(l,50,0,s);var d=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"save"));n(l,54,0,d)})}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(35),r=e(33),o=e(3),i=e(40),a=e(4),s=e(7),d=e(264),c=e(5),p=e(9),f=e(19),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"));n(l,4,0,e);var u=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode"));n(l,8,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,0,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium"));n(l,2,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage"));n(l,22,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[o.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId);var t=n(l,25,0,!e.organizationId);n(l,24,0,t),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers"));n(l,26,0,u)})}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 T=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,N,{},{},[]);l.TwoFactorSetupComponentNgFactory=T},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorAuthenticatorRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.TwoFactorProviderRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorDuoRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorEmailRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorU2fDeleteRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorU2fRequest=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l}(e(73).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(12),a=e(20),s=e(18),d=e(477),c=e(171),p=e(8),f=e(7),v=e(4),h=e(478),g=e(5),m=e(6),y=e(13),C=e(71),b=e(10),w=e(19),S=e(64),_=e(9),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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"youHavePremiumAccess")),"");n(l,1,0,"info","fa-star",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"alreadyPremiumFromOrg"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"purchasePremium"));n(l,1,0,e)})}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,r=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!==r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFilePremium"));n(l,3,0,e),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_premium_license.json"));n(l,21,0,r),n(l,25,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"");n(l,27,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit"));n(l,31,0,i)})}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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,[o.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);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"addons"));n(l,7,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"additionalStorageGb"));n(l,15,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,25,0,t.ɵnov(l.parent,0),"additionalStorageGbDesc")),"");n(l,18,0,o,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);var i=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,28,0,i);var a=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent,0),"summary"));n(l,36,0,a);var s=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent,0),"premiumMembership")),d=t.ɵunv(l,38,1,n(l,40,0,t.ɵnov(l.parent,1),e.premiumPrice,"$"));n(l,38,0,s,d);var c=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"additionalStorageGb")),p=e.additionalStorage||0,f=t.ɵunv(l,42,2,n(l,44,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),v=t.ɵunv(l,42,3,n(l,45,0,t.ɵnov(l.parent,1),e.additionalStorageTotal,"$"));n(l,42,0,c,p,f,v);var h=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"total"));n(l,51,0,h);var g=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l.parent,1),e.total,"USD $")),m=t.ɵunv(l,53,1,n(l,55,0,t.ɵnov(l.parent,0),"year"));n(l,53,0,g,m);var y=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"paymentChargedAnnually"));n(l,58,0,y);var C=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"paymentInformation"));n(l,62,0,C),n(l,68,0,t.ɵnov(l,0).loading);var b=t.ɵinlineInterpolate(1,"",t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l.parent,0),"loading")),"");n(l,70,0,b);var w=t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"submit"));n(l,74,0,w)})}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,v.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,55,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(14,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(16,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(20,0,null,0,37,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["\n ","\n "])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["\n ","\n "])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["\n ","\n "])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(59,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(60,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(61,{"mb-0":0}),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,2),t.ɵppd(64,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(67,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(71,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(74,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.canAccessPremium);n(l,14,0,"success");var t=n(l,61,0,!e.selfHosted);n(l,60,0,"text-lg",t),n(l,67,0,e.selfHosted),n(l,71,0,e.selfHosted),n(l,74,0,!e.selfHosted)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"goPremium"));n(l,6,0,u);var r=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"premiumUpgradeUnlockFeatures"));n(l,17,0,r);var o=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"premiumSignUpStorage"));n(l,25,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"premiumSignUpTwoStep"));n(l,31,0,i);var a=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"premiumSignUpReports"));n(l,37,0,a);var s=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpTotp"));n(l,43,0,s);var d=t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpSupport"));n(l,49,0,d);var c=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"premiumSignUpFuture"));n(l,55,0,c);var p=t.ɵunv(l,62,0,n(l,64,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,1),e.premiumPrice,"$"))));n(l,62,0,p)})}function T(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,o.I18nService,m.Angulartics2,y.ToasterService,p.PlatformUtilsService,C.TokenService,b.Router,w.MessagingService,S.SyncService,_.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PremiumComponent=R,l.View_PremiumComponent_0=N,l.View_PremiumComponent_Host_0=T;var E=t.ɵccf("app-premium",h.PremiumComponent,T,{},{},[]);l.PremiumComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(20),a=e(18),s=e(4),d=e(566),c=e(479),p=e(5),f=e(6),v=e(13),h=e(567),g=e(480),m=e(568),y=e(481),C=e(7),b=e(483),w=e(71),S=e(8),_=e(10),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),"");n(l,1,0,"warning",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled"));n(l,3,0,e)})}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,r.CalloutComponent,[o.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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"");n(l,1,0,"warning",u),n(l,9,0,e.reinstatePromise)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"));n(l,5,0,e),n(l,8,0,t.ɵnov(l,8).loading);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription"));n(l,15,0,r)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate"));n(l,1,0,u)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires"));n(l,1,0,e)})}function E(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,T)),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"expiration"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"pendingCancellation"));n(l,1,0,e)})}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){var e=l.context.$implicit.name,u=l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",r=t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,3,0,e,u,r);var o=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,"$")),i=t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval));n(l,7,0,o,i)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details"));n(l,3,0,e)})}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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"status"));n(l,7,0,u),n(l,13,0,e.subscription&&e.subscription.status||"-");var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"nextCharge"));n(l,20,0,r);var o=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,"$")):"-";n(l,24,0,o)})}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,o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense"));n(l,5,0,e)})}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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"));n(l,5,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription"));n(l,9,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense"));n(l,1,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription"));n(l,7,0,u)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage"));n(l,7,0,u)})}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,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod"));n(l,1,0,e)})}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,t=n(l,4,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal);n(l,3,0,"fa fa-fw",t)},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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod"));n(l,1,0,u)})}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,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noInvoices"));n(l,1,0,e)})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"paid"));n(l,3,0,e)})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-circle text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"unpaid"));n(l,3,0,e)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"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,11,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,3,"a",[["class","mr-2"],["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"a",[["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(15,null,["\n ",""])),t.ɵppd(16,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),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,Y)),t.ɵdid(29,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){n(l,26,0,l.context.$implicit.paid),n(l,29,0,!l.context.$implicit.paid)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.date,"mediumDate"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",l.context.$implicit.pdfUrl,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"downloadInvoice")),"");n(l,8,0,u,r);var o=t.ɵinlineInterpolate(1,"",l.context.$implicit.url,""),i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,1,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,0),"viewInvoice")),"");n(l,13,0,o,i);var a=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoiceNumber",l.context.$implicit.number));n(l,15,0,a);var s=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,20,0,s)})}function Z(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,J)),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.invoices)},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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noTransactions"));n(l,1,0,e)})}function Q(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeNoun"));n(l,1,0,e)})}function nn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeRefund"));n(l,1,0,e)})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(1,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2})],function(n,l){var e=l.component,t=n(l,2,0,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.Card,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.BankAccount,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.PayPal);n(l,1,0,"fa fa-fw",t)},null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,27,"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,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),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,nn)),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,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(19,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(23,{"text-strike":0}),t.ɵppd(24,1),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,l.context.$implicit.type===e.transactionType.Charge),n(l,12,0,l.context.$implicit.type===e.transactionType.Refund),n(l,18,0,l.context.$implicit.type===e.transactionType.Charge||l.context.$implicit.type===e.transactionType.Refund);var t=n(l,23,0,l.context.$implicit.refunded);n(l,22,0,t)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"));n(l,3,0,e),n(l,19,0,l.context.$implicit.details);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,24,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"");n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,25,0,r)})}function tn(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,en)),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.transactions)},null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,70,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,Z)),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,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["",""])),t.ɵppd(59,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(62,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,tn)),t.ɵdid(65,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(68,null,["* ",""])),t.ɵppd(69,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);var t=n(l,23,0,e.storageProgressWidth+"%");n(l,22,0,t),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.invoices||!e.invoices.length),n(l,55,0,e.invoices&&e.invoices.length),n(l,62,0,!e.transactions||!e.transactions.length),n(l,65,0,e.transactions&&e.transactions.length)},function(n,l){var e=l.component,u=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent,0),"storage"));n(l,12,0,u);var r=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,16,0,r),n(l,21,0,e.storagePercentage);var o=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100));n(l,24,0,o);var i=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"paymentMethod"));n(l,32,0,i);var a=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"invoices"));n(l,48,0,a);var s=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"transactions"));n(l,58,0,s);var d=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN"));n(l,68,0,d)})}function rn(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,E)),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,un)),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){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"subscription"));n(l,11,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"premiumMembership"));n(l,15,0,u)})}function on(n){return t.ɵvid(0,[t.ɵpid(0,C.I18nPipe,[o.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,rn)),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,7,0,e)})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-billing",[],null,null,null,on,R)),t.ɵdid(1,114688,null,0,b.UserBillingComponent,[w.TokenService,p.ApiService,S.PlatformUtilsService,o.I18nService,f.Angulartics2,v.ToasterService,_.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserBillingComponent=R,l.View_UserBillingComponent_0=on,l.View_UserBillingComponent_Host_0=an;var sn=t.ɵccf("app-user-billing",b.UserBillingComponent,an,{},{},[]);l.UserBillingComponentNgFactory=sn},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),r=e(20),o=e(18),i=e(4),a=e(477),s=e(171),d=e(3),c=e(8),p=e(7),f=e(484),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=e(64),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFileOrg"));n(l,3,0,e),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_organization_license.json"));n(l,21,0,r),n(l,25,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"");n(l,27,0,o);var i=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit"));n(l,31,0,i)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"businessName"));n(l,5,0,e),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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFree"));n(l,11,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFree","1"));n(l,14,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"limitedUsers","2"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"limitedCollections","2"));n(l,22,0,o);var i=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"freeForever"));n(l,26,0,i)})}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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFamilies"));n(l,11,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFamilies"));n(l,14,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"addShareLimitedUsers","5"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"createUnlimitedCollections"));n(l,22,0,o);var i=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,26,0,i);var a=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,0),"onPremHostingOptional"));n(l,30,0,a);var s=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l.parent.parent,0),"priorityCustomerSupport"));n(l,34,0,s);var d=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent.parent,0),"xDayFreeTrial","7"));n(l,38,0,d);var c=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,1),1,"$")),p=t.ɵunv(l,42,1,n(l,44,0,t.ɵnov(l.parent.parent,0),"month")),f=t.ɵunv(l,42,2,n(l,45,0,t.ɵnov(l.parent.parent,0),"includesXUsers",5));n(l,42,0,c,p,f)})}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,r=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!==(r.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_be,[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_be]),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"userSeats"));n(l,11,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,23,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),"");n(l,14,0,r,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);var o=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsHowManyDesc"));n(l,26,0,o)})}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,r=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!==(r.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_be,[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_be]),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,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"additionalUserSeats"));n(l,5,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),"");n(l,8,0,r,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);var o=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,"$"))));n(l,18,0,o)})}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,r=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!==(r.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);var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess"));n(l,12,0,e);var u=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"))));n(l,17,0,u)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"basePrice")),r=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].basePrice,"$")),o=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),i=t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),e.baseTotal(!0),"$")),a=t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,1,0,u,r,o,i,a)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"additionalUsers"));n(l,1,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"users"));n(l,1,0,e)})}function E(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,T)),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,u=e.additionalSeats||0,r=t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")),o=t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),i=t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent,1),e.seatTotal(!0),"$")),a=t.ɵunv(l,7,4,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,7,0,u,r,o,i,a)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess")),u=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),r=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),o=t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),40,"$")),i=t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year"));n(l,1,0,e,u,r,o,i)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"basePrice")),r=t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,1),e.baseTotal(!1),"$")),o=t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"month"));n(l,1,0,u,r,o)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"additionalUsers"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"users"));n(l,1,0,e)})}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,u=e.additionalSeats||0,r=t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,1),e.plans[e.plan].monthlySeatPrice,"$")),o=t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,1),e.seatTotal(!1),"$")),i=t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent.parent,0),"month"));n(l,7,0,u,r,o,i)})}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,r=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!==(r.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_j,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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"monthly"));n(l,11,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"additionalStorageGb")),o=e.additionalStorage||0,i=t.ɵunv(l,20,2,n(l,22,0,t.ɵnov(l.parent.parent.parent,1),e.storageGb.monthlyPrice,"$")),a=t.ɵunv(l,20,3,n(l,23,0,t.ɵnov(l.parent.parent.parent,1),e.additionalStorageTotal(!1),"$")),s=t.ɵunv(l,20,4,n(l,24,0,t.ɵnov(l.parent.parent.parent,0),"month"));n(l,20,0,r,o,i,a,s)})}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,r=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!==(r.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_be,[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_be]),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,r=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!==(r.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_j,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,E)),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],null,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)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addons"));n(l,6,0,u);var r=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb"));n(l,17,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"additionalStorageGbDesc")),"");n(l,20,0,o,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);var i=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,30,0,i);var a=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l.parent.parent,0),"summary"));n(l,44,0,a),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);var s=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"annually"));n(l,58,0,s);var d=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb")),c=e.additionalStorage||0,p=t.ɵunv(l,67,2,n(l,69,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),f=t.ɵunv(l,67,3,n(l,70,0,t.ɵnov(l.parent.parent,0),"monthAbbr")),v=t.ɵunv(l,67,4,n(l,71,0,t.ɵnov(l.parent.parent,1),e.additionalStorageTotal(!0),"$")),h=t.ɵunv(l,67,5,n(l,72,0,t.ɵnov(l.parent.parent,0),"year"));n(l,67,0,d,c,p,f,v,h);var g=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"total"));n(l,87,0,g);var m=t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l.parent.parent,1),e.total,"USD $")),y=t.ɵunv(l,89,1,n(l,91,0,t.ɵnov(l.parent.parent,0),e.interval));n(l,89,0,m,y);var C=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,94,0,C);var b=t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l.parent.parent,0),"paymentInformation"));n(l,99,0,b)})}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,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.ownedBusiness=e)&&u);"change"===l&&(u=!1!==r.changedOwnedBusiness()&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"label",[["class","form-check-label"],["for","ownedBusiness"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(60,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(67,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(70,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,46,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,6,"input",[["class","form-check-input"],["id","planTeams"],["name","PlanType"],["type","radio"],["value","teams"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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,r=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!==(r.plan=e)&&u);"change"===l&&(u=!1!==r.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_j,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);var t=n(l,190,0,e.plans[e.plan].noPayment);n(l,189,0,t)},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);var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"generalInformation"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"organizationName"));n(l,15,0,u),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);var r=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"billingEmail"));n(l,31,0,r),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);var o=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"accountOwnedBusiness"));n(l,55,0,o);var i=t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent,0),"chooseYourPlan"));n(l,63,0,i),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);var a=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent,0),"planNameTeams"));n(l,83,0,a);var s=t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l.parent,0),"planDescTeams"));n(l,86,0,s);var d=t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"));n(l,90,0,d);var c=t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"));n(l,94,0,c);var p=t.ɵunv(l,98,0,n(l,99,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,98,0,p);var f=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"));n(l,102,0,f);var v=t.ɵunv(l,106,0,n(l,107,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"));n(l,106,0,v);var h=t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,1),5,"$")),g=t.ɵunv(l,110,1,n(l,112,0,t.ɵnov(l.parent,0),"month")),m=t.ɵunv(l,110,2,n(l,113,0,t.ɵnov(l.parent,0),"includesXUsers",5)),y=t.ɵunv(l,110,3,n(l,114,0,t.ɵnov(l.parent,0),"additionalUsers")).toLowerCase(),C=t.ɵunv(l,110,4,n(l,115,0,t.ɵnov(l.parent,1),2,"$")),b=t.ɵunv(l,110,5,n(l,116,0,t.ɵnov(l.parent,0),"month"));n(l,110,0,h,g,m,y,C,b),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);var w=t.ɵunv(l,131,0,n(l,132,0,t.ɵnov(l.parent,0),"planNameEnterprise"));n(l,131,0,w);var S=t.ɵunv(l,134,0,n(l,135,0,t.ɵnov(l.parent,0),"planDescEnterprise"));n(l,134,0,S);var _=t.ɵunv(l,138,0,n(l,139,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"));n(l,138,0,_);var R=t.ɵunv(l,142,0,n(l,143,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"));n(l,142,0,R);var I=t.ɵunv(l,146,0,n(l,147,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"));n(l,146,0,I);var k=t.ɵunv(l,150,0,n(l,151,0,t.ɵnov(l.parent,0),"controlAccessWithGroups"));n(l,150,0,k);var A=t.ɵunv(l,154,0,n(l,155,0,t.ɵnov(l.parent,0),"trackAuditLogs"));n(l,154,0,A);var O=t.ɵunv(l,158,0,n(l,159,0,t.ɵnov(l.parent,0),"syncUsersFromDirectory"));n(l,158,0,O);var N=t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l.parent,0),"onPremHostingOptional"));n(l,162,0,N);var T=t.ɵunv(l,166,0,n(l,167,0,t.ɵnov(l.parent,0),"usersGetPremium"));n(l,166,0,T);var E=t.ɵunv(l,170,0,n(l,171,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"));n(l,170,0,E);var P=t.ɵunv(l,174,0,n(l,175,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"));n(l,174,0,P);var V=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,"$")))),x=t.ɵunv(l,178,1,n(l,181,0,t.ɵnov(l.parent,0),"month"));n(l,178,0,V,x),n(l,192,0,t.ɵnov(l,0).loading);var M=t.ɵinlineInterpolate(1,"",t.ɵunv(l,194,0,n(l,195,0,t.ɵnov(l.parent,0),"loading")),"");n(l,194,0,M);var D=t.ɵunv(l,198,0,n(l,199,0,t.ɵnov(l.parent,0),"submit"));n(l,198,0,D)})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[d.I18nService]),t.ɵpid(0,i.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(18,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"newOrganization"));n(l,6,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"newOrganizationDesc"));n(l,11,0,u)})}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(40),r=e(7),o=e(3),i=e(4),a=e(10),s=e(485),d=e(9),c=e(19),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"premium"));n(l,2,0,e)})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"span",[["class","badge badge-success"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,3,0,t.ɵnov(l.parent,1),t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"free"))));n(l,1,0,e)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[o.I18nService]),t.ɵpid(0,i.UpperCasePipe,[]),(n()(),t.ɵeld(2,0,null,null,117,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,114,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,105,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,32,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"a",[["class","list-group-item"],["routerLink","generator"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,17).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(17,671744,[[2,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(18,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(21,null,["\n ","\n "])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,25).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(25,671744,[[4,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(26,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,33).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(33,671744,[[6,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(34,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,68,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["\n ","\n "])),t.ɵppd(46,1),(n()(),t.ɵeld(47,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(50,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,55,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,57).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(57,671744,[[8,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(58,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(65,671744,[[10,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(66,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(69,null,["\n ","\n "])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(73,671744,[[12,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(74,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,81).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(81,671744,[[14,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(82,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(89,671744,[[16,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(90,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,15,{links:1}),t.ɵqud(603979776,16,{linksWithHrefs:1}),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,12,"a",[["class","list-group-item d-flex"],["routerLink","breach-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,97).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(97,671744,[[18,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(98,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,17,{links:1}),t.ɵqud(603979776,18,{linksWithHrefs:1}),(n()(),t.ɵted(101,null,["\n ","\n "])),t.ɵppd(102,1),(n()(),t.ɵeld(103,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(106,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(113,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(116,212992,null,0,a.RouterOutlet,[a.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"generator");n(l,18,0,"active");n(l,25,0,"import");n(l,26,0,"active");n(l,33,0,"export");n(l,34,0,"active"),n(l,50,0,!e.canAccessPremium);n(l,57,0,"exposed-passwords-report");n(l,58,0,"active");n(l,65,0,"reused-passwords-report");n(l,66,0,"active");n(l,73,0,"weak-passwords-report");n(l,74,0,"active");n(l,81,0,"unsecured-websites-report");n(l,82,0,"active");n(l,89,0,"inactive-two-factor-report");n(l,90,0,"active");n(l,97,0,"breach-report");n(l,98,0,"active"),n(l,106,0,!e.canAccessPremium),n(l,116,0)},function(n,l){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"tools"));n(l,11,0,e),n(l,16,0,t.ɵnov(l,17).target,t.ɵnov(l,17).href);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"passwordGenerator"));n(l,21,0,u),n(l,24,0,t.ɵnov(l,25).target,t.ɵnov(l,25).href);var r=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"importData"));n(l,29,0,r),n(l,32,0,t.ɵnov(l,33).target,t.ɵnov(l,33).href);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"exportVault"));n(l,37,0,o);var i=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"reports"));n(l,45,0,i),n(l,56,0,t.ɵnov(l,57).target,t.ɵnov(l,57).href);var a=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,61,0,a),n(l,64,0,t.ɵnov(l,65).target,t.ɵnov(l,65).href);var s=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,69,0,s),n(l,72,0,t.ɵnov(l,73).target,t.ɵnov(l,73).href);var d=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,77,0,d),n(l,80,0,t.ɵnov(l,81).target,t.ɵnov(l,81).href);var c=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,85,0,c),n(l,88,0,t.ɵnov(l,89).target,t.ɵnov(l,89).href);var p=t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"inactive2faReport"));n(l,93,0,p),n(l,96,0,t.ɵnov(l,97).target,t.ɵnov(l,97).href);var f=t.ɵunv(l,101,0,n(l,102,0,t.ɵnov(l,0),"dataBreachReport"));n(l,101,0,f)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,h,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=h,l.View_ToolsComponent_Host_0=g;var m=t.ɵccf("app-tools",s.ToolsComponent,g,{},{},[]);l.ToolsComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(4),o=e(35),i=e(33),a=e(3),s=e(7),d=e(20),c=e(18),p=e(265),f=e(6),v=e(13),h=e(236),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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_s,[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_s,[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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function 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 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 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 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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2GpOMTg"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the F-Secure KEY desktop application and navigate to "Settings" → "Export Passwords". Select the\n "Export" button, enter your master password, and save the FSK file.\n ']))],null,null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Kaspersky Password Manager desktop application and navigate to "Settings" → "Import/Export". Locate\n the "Export to text file" section and select the "Export" button to save the TXT file.\n ']))],null,null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the RememBear desktop application and navigate to "Settings" → "Account" → "Export".\n Enter your master password and select the "Export Anyway" button to save the CSV file.\n ']))],null,null)}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,119,"app-callout",[["type","info"]],null,null,null,o.View_CalloutComponent_0,o.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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(31,16384,null,0,r.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(34,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,un)),t.ɵdid(112,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,rn)),t.ɵdid(115,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,on)),t.ɵdid(118,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format),n(l,112,0,"fsecurefsk"===e.format),n(l,115,0,"kasperskytxt"===e.format),n(l,118,0,"remembearcsv"===e.format)},null)}function sn(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,r=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!==r.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,r=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!==(r.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,r.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,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.ɵand(16777216,null,null,1,null,an)),t.ɵdid(44,16384,null,0,r.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,r=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!==(r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"));n(l,4,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"));n(l,21,0,u),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);var r=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"));n(l,53,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"));n(l,64,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,i);var a=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData"));n(l,81,0,a)})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,sn,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=sn,l.View_ImportComponent_Host_0=dn;var cn=t.ɵccf("app-import",p.ImportComponent,dn,{},{},[]);l.ImportComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(266),f=e(23),v=e(8),h=e(237),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,r=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(r.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,o.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.SelectControlValueAccessor]),t.ɵdid(34,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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(66,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending);var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"));n(l,10,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"));n(l,15,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"));n(l,20,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"));n(l,28,0,o),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);var i=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"));n(l,56,0,i),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"");n(l,73,0,a);var s=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault"));n(l,77,0,s)})}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,r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-ciphers",[],null,null,null,U,w)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService,b.ApiService],null,null)],null,null)}l.RenderType_CiphersComponent=w,l.View_CiphersComponent_0=U,l.View_CiphersComponent_Host_0=F;var L=t.ɵccf("app-org-vault-ciphers",v.CiphersComponent,F,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked",onEventsClicked:"onEventsClicked"},[]);l.CiphersComponentNgFactory=L},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.User_LoggedIn=1e3]="User_LoggedIn",n[n.User_ChangedPassword=1001]="User_ChangedPassword",n[n.User_Updated2fa=1002]="User_Updated2fa",n[n.User_Disabled2fa=1003]="User_Disabled2fa",n[n.User_Recovered2fa=1004]="User_Recovered2fa",n[n.User_FailedLogIn=1005]="User_FailedLogIn",n[n.User_FailedLogIn2fa=1006]="User_FailedLogIn2fa",n[n.Cipher_Created=1100]="Cipher_Created",n[n.Cipher_Updated=1101]="Cipher_Updated",n[n.Cipher_Deleted=1102]="Cipher_Deleted",n[n.Cipher_AttachmentCreated=1103]="Cipher_AttachmentCreated",n[n.Cipher_AttachmentDeleted=1104]="Cipher_AttachmentDeleted",n[n.Cipher_Shared=1105]="Cipher_Shared",n[n.Cipher_UpdatedCollections=1106]="Cipher_UpdatedCollections",n[n.Collection_Created=1300]="Collection_Created",n[n.Collection_Updated=1301]="Collection_Updated",n[n.Collection_Deleted=1302]="Collection_Deleted",n[n.Group_Created=1400]="Group_Created",n[n.Group_Updated=1401]="Group_Updated",n[n.Group_Deleted=1402]="Group_Deleted",n[n.OrganizationUser_Invited=1500]="OrganizationUser_Invited",n[n.OrganizationUser_Confirmed=1501]="OrganizationUser_Confirmed",n[n.OrganizationUser_Updated=1502]="OrganizationUser_Updated",n[n.OrganizationUser_Removed=1503]="OrganizationUser_Removed",n[n.OrganizationUser_UpdatedGroups=1504]="OrganizationUser_UpdatedGroups",n[n.Organization_Updated=1600]="Organization_Updated",n[n.Organization_PurgedVault=1601]="Organization_PurgedVault"}(l.EventType||(l.EventType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(40),r=e(7),o=e(3),i=e(10),a=e(4),s=e(494),d=e(9),c=e(19),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"upgrade"));n(l,2,0,e)})}function v(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,95,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,92,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,83,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,24,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,17,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,54,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["\n ","\n "])),t.ɵppd(37,1),(n()(),t.ɵeld(38,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(41,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,41,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,48).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(48,671744,[[6,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(49,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,[[8,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(57,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(60,null,["\n ","\n "])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,64).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(64,671744,[[10,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(65,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(68,null,["\n ","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,72).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(72,671744,[[12,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(73,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(80,671744,[[14,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(81,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(84,null,["\n ","\n "])),t.ɵppd(85,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(93,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,41,0,!e.accessReports);n(l,48,0,"exposed-passwords-report");n(l,49,0,"active");n(l,56,0,"reused-passwords-report");n(l,57,0,"active");n(l,64,0,"weak-passwords-report");n(l,65,0,"active");n(l,72,0,"unsecured-websites-report");n(l,73,0,"active");n(l,80,0,"inactive-two-factor-report");n(l,81,0,"active"),n(l,93,0)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"tools"));n(l,10,0,e),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"importData"));n(l,20,0,u),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"exportVault"));n(l,28,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"reports"));n(l,36,0,o),n(l,47,0,t.ɵnov(l,48).target,t.ɵnov(l,48).href);var i=t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,52,0,i),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,60,0,a),n(l,63,0,t.ɵnov(l,64).target,t.ɵnov(l,64).href);var s=t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,68,0,s),n(l,71,0,t.ɵnov(l,72).target,t.ɵnov(l,72).href);var d=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,76,0,d),n(l,79,0,t.ɵnov(l,80).target,t.ɵnov(l,80).href);var c=t.ɵunv(l,84,0,n(l,85,0,t.ɵnov(l,0),"inactive2faReport"));n(l,84,0,c)})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[i.ActivatedRoute,d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=v,l.View_ToolsComponent_Host_0=h;var g=t.ɵccf("app-org-tools",s.ToolsComponent,h,{},{},[]);l.ToolsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(4),o=e(35),i=e(33),a=e(3),s=e(7),d=e(20),c=e(18),p=e(495),f=e(6),v=e(13),h=e(236),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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_s,[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_s,[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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function 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 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 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 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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2GpOMTg"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the F-Secure KEY desktop application and navigate to "Settings" → "Export Passwords". Select the\n "Export" button, enter your master password, and save the FSK file.\n ']))],null,null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Kaspersky Password Manager desktop application and navigate to "Settings" → "Import/Export". Locate\n the "Export to text file" section and select the "Export" button to save the TXT file.\n ']))],null,null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the RememBear desktop application and navigate to "Settings" → "Account" → "Export".\n Enter your master password and select the "Export Anyway" button to save the CSV file.\n ']))],null,null)}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,119,"app-callout",[["type","info"]],null,null,null,o.View_CalloutComponent_0,o.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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(31,16384,null,0,r.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(34,16384,null,0,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,r.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,r.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,r.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,r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,un)),t.ɵdid(112,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,rn)),t.ɵdid(115,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,on)),t.ɵdid(118,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format),n(l,112,0,"fsecurefsk"===e.format),n(l,115,0,"kasperskytxt"===e.format),n(l,118,0,"remembearcsv"===e.format)},null)}function sn(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,r=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!==r.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,r=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!==(r.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,r.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,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.ɵand(16777216,null,null,1,null,an)),t.ɵdid(44,16384,null,0,r.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,r=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!==(r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"));n(l,4,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"));n(l,21,0,u),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);var r=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"));n(l,53,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"));n(l,64,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,i);var a=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData"));n(l,81,0,a)})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,sn,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=sn,l.View_ImportComponent_Host_0=dn;var cn=t.ɵccf("app-org-import",p.ImportComponent,dn,{},{},[]);l.ImportComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(496),f=e(23),v=e(8),h=e(237),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(4,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,r=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(r.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,o.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.SelectControlValueAccessor]),t.ɵdid(34,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(36,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,o.NgSelectOption,[t.ElementRef,t.Renderer2,[2,o.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,o.ɵangular_packages_forms_forms_s,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(66,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending);var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"));n(l,10,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"));n(l,15,0,u);var r=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"));n(l,20,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"));n(l,28,0,o),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);var i=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"));n(l,56,0,i),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"");n(l,73,0,a);var s=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault"));n(l,77,0,s)})}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,r.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(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(497),h=e(22),g=e(107),m=e(19),y=e(9),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noExposedPasswords"));n(l,3,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,34,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,6,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,3,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),t.ɵppd(32,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle);var r=t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"exposedXTimes",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,1),e.exposedPasswordMap.get(l.context.$implicit.id)))));n(l,30,0,r)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(14,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.load()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,25,0,l.component.hasLoaded)},function(n,l){var e=l.component,u=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"exposedPasswordsReport"));n(l,6,0,u);var r=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"exposedPasswordsReportDesc"));n(l,11,0,r),n(l,14,0,e.loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"loading")),"");n(l,16,0,o);var i=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"checkExposedPasswords"));n(l,20,0,i)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-exposed-passwords-report",[],null,null,null,O,b)),t.ɵdid(1,114688,null,0,v.ExposedPasswordsReportComponent,[h.CipherService,g.AuditService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExposedPasswordsReportComponent=b,l.View_ExposedPasswordsReportComponent_0=O,l.View_ExposedPasswordsReportComponent_Host_0=N;var T=t.ɵccf("app-exposed-passwords-report",v.ExposedPasswordsReportComponent,N,{},{},[]);l.ExposedPasswordsReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(498),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noInactive2fa"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","badge badge-primary"],["rel","noopener"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",""])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",e.cipherDocs.get(l.parent.context.$implicit.id),""));var u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"instructions"));n(l,1,0,u)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(30,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments),n(l,30,0,e.cipherDocs.has(l.context.$implicit.id))},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,e),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"inactive2faFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"inactive2faFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function T(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"inactive2faReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"inactive2faReportDesc"));n(l,14,0,u)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-inactive-two-factor-report",[],null,null,null,T,C)),t.ɵdid(1,114688,null,0,v.InactiveTwoFactorReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_InactiveTwoFactorReportComponent=C,l.View_InactiveTwoFactorReportComponent_0=T,l.View_InactiveTwoFactorReportComponent_Host_0=E;var P=t.ɵccf("app-inactive-two-factor-report",v.InactiveTwoFactorReportComponent,E,{},{},[]);l.InactiveTwoFactorReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(499),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noReusedPasswords"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle);var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"reusedXTimes",e.passwordUseMap.get(l.context.$implicit.login.password)));n(l,30,0,r)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"reusedPasswordsReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"reusedPasswordsReportDesc"));n(l,14,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-reused-passwords-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.ReusedPasswordsReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ReusedPasswordsReportComponent=C,l.View_ReusedPasswordsReportComponent_0=N,l.View_ReusedPasswordsReportComponent_Host_0=T;var E=t.ɵccf("app-reused-passwords-report",v.ReusedPasswordsReportComponent,T,{},{},[]);l.ReusedPasswordsReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(500),h=e(22),g=e(19),m=e(9),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUnsecuredWebsites"));n(l,3,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,e),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"unsecuredWebsitesReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"unsecuredWebsitesReportDesc"));n(l,14,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-unsecured-websites-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.UnsecuredWebsitesReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UnsecuredWebsitesReportComponent=C,l.View_UnsecuredWebsitesReportComponent_0=N,l.View_UnsecuredWebsitesReportComponent_Host_0=T;var E=t.ɵccf("app-unsecured-websites-report",v.UnsecuredWebsitesReportComponent,T,{},{},[]);l.UnsecuredWebsitesReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(103),a=e(97),s=e(72),d=e(32),c=e(40),p=e(4),f=e(7),v=e(501),h=e(22),g=e(63),m=e(19),y=e(9),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),"");n(l,1,0,"success",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noWeakPasswords"));n(l,3,0,e)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),"");n(l,0,0,e)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),"");n(l,0,0,e)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"");n(l,10,0,u),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,29,0,t.ɵinlineInterpolate(1,"badge badge-",e.passwordStrengthMap.get(l.context.$implicit.id)[1],""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),e.passwordStrengthMap.get(l.context.$implicit.id)[0]));n(l,30,0,r)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFound")),"");n(l,3,0,"danger",u),n(l,14,0,e.ciphers)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length))));n(l,5,0,u)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function T(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[o.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"weakPasswordsReport"));n(l,6,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"weakPasswordsReportDesc"));n(l,14,0,u)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-weak-passwords-report",[],null,null,null,T,b)),t.ɵdid(1,114688,null,0,v.WeakPasswordsReportComponent,[h.CipherService,g.PasswordGenerationService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_WeakPasswordsReportComponent=b,l.View_WeakPasswordsReportComponent_0=T,l.View_WeakPasswordsReportComponent_Host_0=E;var P=t.ɵccf("app-weak-passwords-report",v.WeakPasswordsReportComponent,E,{},{},[]);l.WeakPasswordsReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(502),s=e(9),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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"people"));n(l,5,0,e)})}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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"groups"));n(l,5,0,e)})}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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"eventLogs"));n(l,5,0,e)})}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,r.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,r.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,r.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,r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"manage"));n(l,3,0,e),n(l,11,0,t.ɵnov(l,12).target,t.ɵnov(l,12).href);var u=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"collections"));n(l,16,0,u)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.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,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,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(40),r=e(4),o=e(7),i=e(3),a=e(272),s=e(12),d=e(503),c=e(5),p=e(10),f=e(44),v=e(6),h=e(13),g=e(8),m=e(9),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==r.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);var e=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,24,0,e);var u=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete"));n(l,31,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){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,o.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,r=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!==(r.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,r.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,r.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);var u=!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.collections,e.searchText,"name","id"));n(l,39,0,u)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"collections"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),"");n(l,18,0,r,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);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newCollection"));n(l,30,0,o)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage-collections",[],null,null,null,k,y)),t.ɵdid(1,114688,null,0,d.CollectionsComponent,[c.ApiService,p.ActivatedRoute,f.CollectionService,t.ComponentFactoryResolver,v.Angulartics2,h.ToasterService,i.I18nService,g.PlatformUtilsService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=y,l.View_CollectionsComponent_0=k,l.View_CollectionsComponent_Host_0=A;var O=t.ɵccf("app-org-manage-collections",d.CollectionsComponent,A,{},{},[]);l.CollectionsComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(20),o=e(18),i=e(7),a=e(3),s=e(12),d=e(505),c=e(5),p=e(10),f=e(240),v=e(13),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList"));n(l,1,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"));n(l,3,0,e),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"));n(l,7,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"));n(l,13,0,u);var r=t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"user"));n(l,18,0,r);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"event"));n(l,22,0,o)})}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,r.ApiActionDirective,[t.ElementRef,o.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore"));n(l,7,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.events||!e.events.length),n(l,6,0,e.events&&e.events.length),n(l,9,0,e.continuationToken)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,40,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,r=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!==(r.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,r=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!==(r.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,r.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(44,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(45,{"fa-spin":0}),(n()(),t.ɵted(46,null,["\n ","\n "])),t.ɵppd(47,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(52,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(55,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,19,0,e.start),n(l,34,0,e.end),n(l,41,0,e.refreshPromise);var u=n(l,45,0,e.loaded&&t.ɵnov(l,40).loading);n(l,44,0,"fa fa-refresh fa-fw",u),n(l,52,0,!e.loaded),n(l,55,0,e.loaded)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l,0),"eventLogs"));n(l,5,0,u);var r=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"startDate"));n(l,13,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,22,0,t.ɵnov(l,0),"startDate")),"");n(l,16,0,o,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);var i=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"endDate"));n(l,28,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,37,0,t.ɵnov(l,0),"endDate")),"");n(l,31,0,a,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);var s=t.ɵunv(l,46,0,n(l,47,0,t.ɵnov(l,0),"refresh"));n(l,46,0,s)})}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(40),r=e(4),o=e(7),i=e(3),a=e(272),s=e(12),d=e(506),c=e(5),p=e(10),f=e(6),v=e(13),h=e(8),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==r.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);var e=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"));n(l,24,0,e);var u=t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete"));n(l,31,0,u)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,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.parent.context.ngIf)},null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(3,16384,null,0,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){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,o.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,r=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!==(r.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,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,S)),t.ɵdid(39,16384,null,0,r.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);var u=!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.groups,e.searchText,"name","id"));n(l,39,0,u)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"groups"));n(l,7,0,e);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),"");n(l,18,0,r,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);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newGroup"));n(l,30,0,o)})}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(35),r=e(33),o=e(3),i=e(40),a=e(169),s=e(144),d=e(42),c=e(106),p=e(32),f=e(4),v=e(7),h=e(272),g=e(12),m=e(507),y=e(5),C=e(10),b=e(8),w=e(6),S=e(13),_=e(23),R=e(9),I=e(62),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noUsersInList"));n(l,1,0,e)})}function E(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,r.CalloutComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"confirmUsers")),"");n(l,1,0,"info","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"usersNeedConfirmed"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted"));n(l,1,0,e)})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-lock"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"userUsingTwoStep")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager"));n(l,1,0,e)})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user"));n(l,1,0,e)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"resendInvitation"));n(l,4,0,e)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-success"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"confirm"));n(l,4,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"groups"));n(l,4,0,e)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"eventLogs"));n(l,4,0,e)})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,77,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["width","30"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,a.View_AvatarComponent_0,a.RenderType_AvatarComponent)),t.ɵdid(5,638976,null,0,s.AvatarComponent,[d.DomSanitizer,c.CryptoFunctionService,p.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==r.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(12,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(15,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(18,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(21,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(27,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(33,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(36,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(39,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(42,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,20,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(57,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(63,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(66,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,69).onClick(e)&&u);"click"===l&&(u=!1!==r.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["\n ","\n "])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,15,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,18,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,21,0,l.context.$implicit.name),n(l,27,0,l.context.$implicit.twoFactorEnabled),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,36,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,39,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,42,0,l.context.$implicit.type===e.organizationUserType.User),n(l,57,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,60,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,63,0,e.accessGroups),n(l,66,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email);var e=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent.parent.parent,0),"remove"));n(l,72,0,e)})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,13,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,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.ɵeld(5,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(10,278528,null,0,f.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.showConfirmUsers),n(l,10,0,l.parent.context.ngIf)},null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,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.ɵand(16777216,null,null,1,null,K)),t.ɵdid(6,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Z(n){return t.ɵvid(0,[t.ɵpid(0,v.I18nPipe,[o.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,r=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!==(r.searchText=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,g.NgModel,[[8,null],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(52,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.invite()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["\n ","\n "])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(65,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,H)),t.ɵdid(68,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(69,5),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,J)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,u=n(l,18,0,null==e.status);n(l,17,0,"btn btn-outline-secondary",u);var r=n(l,24,0,e.status==e.organizationUserStatusType.Invited);n(l,23,0,"btn btn-outline-secondary",r),n(l,28,0,e.invitedCount);var o=n(l,33,0,e.status==e.organizationUserStatusType.Accepted);n(l,32,0,"btn btn-outline-secondary",o),n(l,37,0,e.acceptedCount),n(l,50,0,e.searchText),n(l,65,0,e.loading);var i=!e.loading&&t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id"));n(l,68,0,i)},function(n,l){var e=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"people"));n(l,9,0,e);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"all"));n(l,19,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"invited"));n(l,25,0,r);var o=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"accepted"));n(l,34,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"search"));n(l,44,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,53,0,t.ɵnov(l,0),"search")),"");n(l,47,0,a,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);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"inviteUser"));n(l,59,0,s)})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-people",[],null,null,null,Z,k)),t.ɵdid(1,114688,null,0,m.PeopleComponent,[y.ApiService,C.ActivatedRoute,o.I18nService,t.ComponentFactoryResolver,b.PlatformUtilsService,w.Angulartics2,S.ToasterService,_.CryptoService,R.UserService,C.Router,I.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PeopleComponent=k,l.View_PeopleComponent_0=Z,l.View_PeopleComponent_Host_0=X;var Q=t.ɵccf("app-org-people",m.PeopleComponent,X,{},{},[]);l.PeopleComponentNgFactory=Q},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.emails=[],this.collections=[]}}();l.OrganizationUserInviteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.OrganizationUserUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.groupIds=[]}}();l.OrganizationUserUpdateGroupsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),r=e(4),o=e(7),i=e(3),a=e(508),s=e(9),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,r.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);var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"twoStepLogin"));n(l,5,0,e)})}function p(n){return t.ɵvid(0,[t.ɵpid(0,o.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,r.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,r.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,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.ɵ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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"settings"));n(l,10,0,e),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"myOrganization"));n(l,20,0,u),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,28,0,r)})}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),r=e(20),o=e(18),i=e(169),a=e(144),s=e(42),d=e(106),c=e(32),p=e(7),f=e(3),v=e(4),h=e(509),g=e(5),m=e(6),y=e(13),C=e(10),b=e(64),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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,r=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!==r.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,r.ApiActionDirective,[t.ElementRef,o.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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);var e=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent,0),"organizationName"));n(l,13,0,e),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);var u=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"billingEmail"));n(l,27,0,u),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);var r=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l.parent,0),"businessName"));n(l,41,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"loading")),"");n(l,62,0,o);var i=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent,0),"save"));n(l,66,0,i)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵqud(402653184,1,{deleteModalRef:0}),t.ɵqud(402653184,2,{purgeModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(14,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(16,0,null,null,5,"div",[["class","secondary-header border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(27,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://bitwarden.com/contact/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["\n ","\n"])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","secondary-header text-danger border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(38,0,null,null,16,"div",[["class","card border-danger"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,13,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.deleteOrganization()&&t);return t},null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.purgeVault()&&t);return t},null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["deleteOrganizationTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["purgeOrganizationTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.loading),n(l,14,0,e.org&&!e.loading)},function(n,l){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"myOrganization"));n(l,6,0,e);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"taxInformation"));n(l,19,0,u);var r=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l,0),"taxInformationDesc"));n(l,24,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"contactSupport"));n(l,28,0,o);var i=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"dangerZone"));n(l,34,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"dangerZoneDesc"));n(l,43,0,a);var s=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"deleteOrganization"));n(l,47,0,s);var d=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"purgeVault"));n(l,51,0,d)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-account",[],null,null,null,k,w)),t.ɵdid(1,114688,null,0,h.AccountComponent,[t.ComponentFactoryResolver,g.ApiService,f.I18nService,m.Angulartics2,y.ToasterService,C.ActivatedRoute,b.SyncService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AccountComponent=w,l.View_AccountComponent_0=k,l.View_AccountComponent_Host_0=A;var O=t.ɵccf("app-org-account",h.AccountComponent,A,{},{},[]);l.AccountComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(40),a=e(4),s=e(7),d=e(510),c=e(5),p=e(9),f=e(19),v=e(10),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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){var e=t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"));n(l,4,0,e);var u=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode"));n(l,8,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,0,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium"));n(l,2,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage"));n(l,22,0,u)})}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,[o.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId);var t=n(l,25,0,!e.organizationId);n(l,24,0,t),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers"));n(l,26,0,u)})}function T(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=T;var E=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,T,{},{},[]);l.TwoFactorSetupComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(35),r=e(33),o=e(3),i=e(20),a=e(18),s=e(4),d=e(566),c=e(479),p=e(5),f=e(6),v=e(13),h=e(886),g=e(604),m=e(567),y=e(480),C=e(12),b=e(568),w=e(481),S=e(7),_=e(511),R=e(71),I=e(8),k=e(19),A=e(10),O=t.ɵcrt({encapsulation:2,styles:[],data:{}});function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function T(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),"");n(l,0,0,e)})}function E(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,r.CalloutComponent,[o.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),"");n(l,1,0,"warning",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled"));n(l,3,0,e)})}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,r.CalloutComponent,[o.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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"");n(l,1,0,"warning",u),n(l,9,0,e.reinstatePromise)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"));n(l,5,0,e),n(l,8,0,t.ɵnov(l,8).loading);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,11,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription"));n(l,15,0,r)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"licenseIsExpired"));n(l,3,0,e)})}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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate"));n(l,1,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires"));n(l,1,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"billingPlan"));n(l,3,0,u),n(l,7,0,e.billing.plan);var r=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent,0),"expiration"));n(l,10,0,r)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"pendingCancellation"));n(l,1,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"status"));n(l,3,0,u),n(l,9,0,e.subscription.status||"-");var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent,0),"nextCharge"));n(l,16,0,r);var o=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,"$")):"-";n(l,20,0,o)})}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){var e=l.context.$implicit.name,u=l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",r=t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,3,0,e,u,r);var o=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,"$")),i=t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval));n(l,7,0,o,i)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details"));n(l,3,0,e)})}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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"billingPlan"));n(l,7,0,u),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,o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense"));n(l,5,0,e)})}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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"));n(l,5,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription"));n(l,9,0,u)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense"));n(l,7,0,u)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription"));n(l,7,0,u)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addSeats"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeSeats"));n(l,7,0,u)})}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,o.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage"));n(l,7,0,u)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},m.View_AdjustStorageComponent_0,m.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,y.AdjustStorageComponent,[p.ApiService,o.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.storageGbPrice,e.adjustStorageAdd,e.organizationId,e.billingInterval)},null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod"));n(l,1,0,e)})}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,r.CalloutComponent,[o.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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,r=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!==(r.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_be,[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_be]),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,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")),"");n(l,1,0,"warning",u),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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountDesc")),u=t.ɵunv(l,5,1,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountFailureWarning"));n(l,5,0,e,u),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);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","1"));n(l,16,0,r),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);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","2"));n(l,39,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"");n(l,63,0,i);var a=t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount"));n(l,67,0,a)})}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);var t=n(l,9,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal);n(l,8,0,"fa fa-fw",t)},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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod"));n(l,1,0,u)})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},b.View_AdjustPaymentComponent_0,b.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,w.AdjustPaymentComponent,[p.ApiService,o.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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noInvoices"));n(l,1,0,e)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"paid"));n(l,3,0,e)})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-circle text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"unpaid"));n(l,3,0,e)})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"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,11,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,3,"a",[["class","mr-2"],["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"a",[["rel","noopener"],["target","_blank"]],[[8,"href",4],[8,"title",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(15,null,["\n ",""])),t.ɵppd(16,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),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,rn)),t.ɵdid(29,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){n(l,26,0,l.context.$implicit.paid),n(l,29,0,!l.context.$implicit.paid)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.date,"mediumDate"));n(l,3,0,e);var u=t.ɵinlineInterpolate(1,"",l.context.$implicit.pdfUrl,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),"downloadInvoice")),"");n(l,8,0,u,r);var o=t.ɵinlineInterpolate(1,"",l.context.$implicit.url,""),i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,1,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,0),"viewInvoice")),"");n(l,13,0,o,i);var a=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoiceNumber",l.context.$implicit.number));n(l,15,0,a);var s=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,20,0,s)})}function an(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,on)),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.invoices)},null)}function sn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noTransactions"));n(l,1,0,e)})}function dn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeNoun"));n(l,1,0,e)})}function cn(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"chargeRefund"));n(l,1,0,e)})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(1,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2})],function(n,l){var e=l.component,t=n(l,2,0,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.Card,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.BankAccount,l.parent.context.$implicit.paymentMethodType===e.paymentMethodType.PayPal);n(l,1,0,"fa fa-fw",t)},null)}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,27,"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,7,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),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,cn)),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,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,pn)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(19,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(23,{"text-strike":0}),t.ɵppd(24,1),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,l.context.$implicit.type===e.transactionType.Charge),n(l,12,0,l.context.$implicit.type===e.transactionType.Refund),n(l,18,0,l.context.$implicit.type===e.transactionType.Charge||l.context.$implicit.type===e.transactionType.Refund);var t=n(l,23,0,l.context.$implicit.refunded);n(l,22,0,t)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"));n(l,3,0,e),n(l,19,0,l.context.$implicit.details);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,24,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"");n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"));n(l,25,0,r)})}function vn(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,fn)),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.transactions)},null)}function hn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,85,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePlan()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(24,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(37,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(38,{width:0}),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(44,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(54,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(57,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),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,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(77,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,vn)),t.ɵdid(80,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["* ",""])),t.ɵppd(84,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&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel&&e.paymentSource);var t=n(l,38,0,e.storageProgressWidth+"%");n(l,37,0,t),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.invoices||!e.invoices.length),n(l,70,0,e.invoices&&e.invoices.length),n(l,77,0,!e.transactions||!e.transactions.length),n(l,80,0,e.transactions&&e.transactions.length)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"changeBillingPlan"));n(l,5,0,u);var r=t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"userSeats"));n(l,16,0,r);var o=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"subscriptionUserSeats",e.billing.seats));n(l,20,0,o);var i=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent.parent,0),"storage"));n(l,27,0,i);var a=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,31,0,a),n(l,36,0,e.storagePercentage);var s=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100));n(l,39,0,s);var d=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent,0),"paymentMethod"));n(l,47,0,d);var c=t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent,0),"invoices"));n(l,63,0,c);var p=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"transactions"));n(l,73,0,p);var f=t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN"));n(l,83,0,f)})}function gn(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,E)),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,hn)),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 mn(n){return t.ɵvid(0,[t.ɵpid(0,S.I18nPipe,[o.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,T)),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,gn)),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing"));n(l,7,0,e)})}function yn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-billing",[],null,null,null,mn,O)),t.ɵdid(1,114688,null,0,_.OrganizationBillingComponent,[R.TokenService,p.ApiService,I.PlatformUtilsService,o.I18nService,f.Angulartics2,v.ToasterService,k.MessagingService,A.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_OrganizationBillingComponent=O,l.View_OrganizationBillingComponent_0=mn,l.View_OrganizationBillingComponent_Host_0=yn;var Cn=t.ɵccf("app-org-billing",_.OrganizationBillingComponent,yn,{},{},[]);l.OrganizationBillingComponentNgFactory=Cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(4),i=e(12),a=e(20),s=e(18),d=e(604),c=e(5),p=e(6),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"div",[["class","mb-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,[" "," × "," = "," /","\n "])),t.ɵppd(6,2),t.ɵppd(7,2),t.ɵppd(8,1)],null,function(n,l){var e=l.component,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"total"));n(l,3,0,u);var r=e.seatAdjustment||0,o=t.ɵunv(l,5,1,n(l,6,0,t.ɵnov(l.parent,1),e.seatPrice,"$")),i=t.ɵunv(l,5,2,n(l,7,0,t.ɵnov(l.parent,1),e.adjustedSeatTotal,"$")),a=t.ɵunv(l,5,3,n(l,8,0,t.ɵnov(l.parent,0),e.interval));n(l,5,0,r,o,i,a)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.I18nService]),t.ɵpid(0,o.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,r=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!==r.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,r=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!==(r.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_be,[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_be]),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,o.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);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),e.add?"addSeats":"removeSeats"));n(l,11,0,u);var r=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),e.add?"seatsToAdd":"seatsToRemove"));n(l,19,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"submit"));n(l,43,0,i);var a=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,a);var s=t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),e.add?"seatsAddNote":"seatsRemoveNote"));n(l,52,0,s)})}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,r.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),r=e(4),o=e(40),i=e(605),a=e(51),s=e(20),d=e(18),c=e(606),p=e(7),f=e(3),v=e(261),h=e(22),g=e(57),m=e(8),y=e(107),C=e(32),b=e(9),w=e(44),S=e(233),_=e(63),R=e(19),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_s,[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,r=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!==(r.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,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 "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"));n(l,5,0,e),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_s,[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,r=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!==(r.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,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){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"));n(l,3,0,e),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium"));n(l,2,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade"));n(l,2,0,e)})}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,T)),t.ɵdid(6,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,E)),t.ɵdid(9,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.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,2,0,e)})}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,r.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){var e=n(l,13,0,l.component.totpDash);n(l,12,0,e)},function(n,l){var e=l.component;n(l,5,0,e.totpSec);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,20,0,u),n(l,22,0,e.totpCodeFormatted);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),"");n(l,24,0,r)})}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_s,[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,r=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!==r.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,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.ɵ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,""));var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1));n(l,6,0,e);var u=t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com");n(l,11,0,u,r,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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),"");n(l,22,0,o,!l.context.$implicit.canLaunch);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"");n(l,28,0,i),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""));var a=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"));n(l,42,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"");n(l,45,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),"");n(l,65,0,d)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.login.uris,e.trackByFunction)},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,r=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!==(r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==r.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==r.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,o.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,r=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!==(r.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,r.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,r=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!==(r.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,r.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,r.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,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.ɵand(16777216,null,null,1,null,D)),t.ɵdid(121,16384,null,0,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==r.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,o.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,"");var t=n(l,78,0,!e.showPassword,e.showPassword);n(l,77,0,"fa fa-lg",t);n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");var u=n(l,110,0,e.totpLow);n(l,109,0,"col-6 form-group totp d-flex align-items-end",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"));n(l,7,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"");n(l,22,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"));n(l,36,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"");n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"");n(l,48,0,a),n(l,53,0,t.ɵnov(l,48).loading);var s=!t.ɵnov(l,48).loading,d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,55,0,s,d),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);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,73,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,81,0,p);var f=t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"));n(l,96,0,f),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);var v=t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri"));n(l,127,0,v)})}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_s,[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_s,[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,r=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!==(r.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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,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(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,r=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!==(r.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,r=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!==(r.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,r.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,"");var t=n(l,125,0,!e.showCardCode,e.showCardCode);n(l,124,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"));n(l,7,0,u),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);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"));n(l,21,0,r),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);var o=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"));n(l,42,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"");n(l,57,0,i);var a=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"));n(l,69,0,a),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);var s=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"));n(l,87,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019");n(l,90,0,d,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);var c=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"));n(l,105,0,c),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);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,120,0,p);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),"");n(l,128,0,f)})}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_s,[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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"));n(l,7,0,e),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);var u=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"));n(l,28,0,u),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);var r=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"));n(l,42,0,r),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);var o=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"));n(l,56,0,o),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);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"));n(l,73,0,i),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);var a=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"));n(l,88,0,a),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);var s=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"));n(l,105,0,s),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);var d=t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"));n(l,120,0,d),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);var c=t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"));n(l,135,0,c),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);var p=t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"));n(l,153,0,p),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);var f=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"));n(l,168,0,f),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);var v=t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"));n(l,185,0,v),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);var h=t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"));n(l,199,0,h),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);var g=t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"));n(l,216,0,g),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);var m=t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"));n(l,230,0,m),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);var y=t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"));n(l,247,0,y),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);var C=t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"));n(l,261,0,C),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);var b=t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"));n(l,278,0,b),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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,12,0,e)})}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,r.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,"");var e=n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue);n(l,16,0,"fa fa-lg",e)},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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"");n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,20,0,u)})}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,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(39,16384,null,0,r.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,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(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,""));var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,8,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"");n(l,11,0,u),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,""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"));n(l,30,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,47,0,o)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.fields,e.trackByFunction)},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_s,[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_s,[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,r=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!==(r.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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.ɵ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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"));n(l,11,0,u),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(7,16384,null,0,r.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,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.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"));n(l,3,0,u);var r=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium"));n(l,5,0,r)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==r.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"));n(l,3,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"");n(l,6,0,r),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"));n(l,1,0,e),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,r.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,ln)),t.ɵdid(13,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,en)),t.ɵdid(16,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,un)),t.ɵdid(19,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 "]))],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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"));n(l,7,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium"));n(l,9,0,r)})}function on(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,r.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,r=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!==(r.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,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.ɵand(16777216,null,null,1,null,U)),t.ɵdid(29,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,z)),t.ɵdid(33,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,j)),t.ɵdid(37,16384,null,0,r.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,r=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!==(r.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,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==r.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,o.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,r=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!==(r.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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(89,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,nn)),t.ɵdid(92,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,rn)),t.ɵdid(95,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,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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"));n(l,10,0,e),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);var u=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"));n(l,42,0,u),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);var r=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"));n(l,54,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"));n(l,64,0,o);var i=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"));n(l,72,0,i),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,r.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,t=n(l,5,0,e.cipher.favorite,!e.cipher.favorite);n(l,4,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),"");n(l,0,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r.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,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.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,r.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,r=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!==r.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,on)),t.ɵdid(26,16384,null,0,r.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,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"]))],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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u),n(l,30,0,t.ɵnov(l,6).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"");n(l,32,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"));n(l,36,0,o);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel"));n(l,41,0,i)})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-add-edit",[],null,null,null,cn,I)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=I,l.View_AddEditComponent_0=cn,l.View_AddEditComponent_Host_0=pn;var fn=t.ɵccf("app-vault-add-edit",v.AddEditComponent,pn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=fn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(4),i=e(40),a=e(7),s=e(3),d=e(12),c=e(469),p=e(22),f=e(23),v=e(9),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"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,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"");n(l,4,0,e),n(l,7,0,t.ɵnov(l,7).loading);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix"));n(l,9,0,u)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(5,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(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,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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==r.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,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(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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,29,0,e,t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading);var u=!t.ɵnov(l,29).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,36,0,u,r)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.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,r=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!==r.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,r.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,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(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(31,16384,null,0,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"");n(l,20,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"));n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"));n(l,38,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"));n(l,44,0,i),n(l,50,0,t.ɵnov(l,5).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"");n(l,52,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"));n(l,56,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"");n(l,60,0,d);var c=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close"));n(l,62,0,c)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-attachments",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=g,l.View_AttachmentsComponent_0=_,l.View_AttachmentsComponent_Host_0=R;var I=t.ɵccf("app-vault-attachments",c.AttachmentsComponent,R,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(548),d=e(6),c=e(22),p=e(13),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,o.ɵangular_packages_forms_forms_bh,[],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,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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"deleteSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"deleteSelectedItemsDesc",e.cipherIds.length));n(l,27,0,o),n(l,32,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,i);var a=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"delete"));n(l,38,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"cancel")),"");n(l,42,0,s);var d=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"cancel"));n(l,44,0,d)})}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,r.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),r=e(7),o=e(3),i=e(20),a=e(18),s=e(4),d=e(549),c=e(6),p=e(22),f=e(13),v=e(57),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_s,[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,r.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 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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,r=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!==(r.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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"moveSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"moveSelectedItemsDesc",e.cipherIds.length));n(l,29,0,o);var i=t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"folder"));n(l,35,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"");n(l,55,0,a);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"save"));n(l,59,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l,0),"cancel")),"");n(l,63,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,c)})}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,o.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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(550),p=e(6),f=e(22),v=e(13),h=e(44),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_s,[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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,r=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!==(r.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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(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,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,b)),t.ɵdid(65,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(68,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(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,o.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);var u=n(l,75,0,t.ɵnov(l,5).loading);n(l,74,0,"btn btn-primary btn-submit manual",u)},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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"shareSelected"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"");n(l,18,0,r);var o=t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"shareManyDesc"));n(l,29,0,o);var i=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"shareSelectedItemsCountDesc",e.ciphers.length,e.shareableCiphers.length,e.nonShareableCount));n(l,33,0,i);var a=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"organization"));n(l,39,0,a),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);var s=t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"collections"));n(l,57,0,s),n(l,73,0,t.ɵnov(l,5).loading||!e.canSave);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"");n(l,77,0,d);var c=t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"save"));n(l,81,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"cancel")),"");n(l,85,0,p);var f=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l,0),"cancel"));n(l,87,0,f)})}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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(470),p=e(44),f=e(8),v=e(22),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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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,y)),t.ɵdid(46,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(49,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(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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"));n(l,32,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"));n(l,38,0,o),n(l,54,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,i);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"));n(l,60,0,a);var s=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,s)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,w,h)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=h,l.View_CollectionsComponent_0=w,l.View_CollectionsComponent_Host_0=S;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,S,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(51),p=e(559),f=e(5),v=e(6),h=e(13),g=e(23),m=e(19),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deauthorizeSessions"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deauthorizeSessionsDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deauthorizeSessionsWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"");n(l,55,0,a);var s=t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"deauthorizeSessions"));n(l,59,0,s);var d=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"close"));n(l,64,0,d)})}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,r.I18nService,v.Angulartics2,h.ToasterService,g.CryptoService,m.MessagingService],null,null)],null,null)}l.RenderType_DeauthorizeSessionsComponent=y,l.View_DeauthorizeSessionsComponent_0=C,l.View_DeauthorizeSessionsComponent_Host_0=b;var w=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(560),v=e(5),h=e(6),g=e(13),m=e(23),y=e(19),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteAccount"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteAccountDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteAccountWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,a);var s=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteAccount"));n(l,60,0,s);var d=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,d)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-account",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteAccountComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService],null,null)],null,null)}l.RenderType_DeleteAccountComponent=C,l.View_DeleteAccountComponent_0=b,l.View_DeleteAccountComponent_Host_0=w;var S=t.ɵccf("app-delete-account",f.DeleteAccountComponent,w,{},{},[]);l.DeleteAccountComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(603),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteOrganization"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteOrganizationDesc"));n(l,28,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteOrganizationWarning"));n(l,33,0,o);var i=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,i),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);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,a);var s=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteOrganization"));n(l,60,0,s);var d=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,d)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-organization",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteOrganizationComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_DeleteOrganizationComponent=C,l.View_DeleteOrganizationComponent_0=b,l.View_DeleteOrganizationComponent_Host_0=w;var S=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,w,{},{},[]);l.DeleteOrganizationComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(7),i=e(3),a=e(12),s=e(4),d=e(551),c=e(57),p=e(8),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,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.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,r=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!==r.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,r.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,r=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!==(r.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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u);var r=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"name"));n(l,27,0,r),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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"");n(l,44,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"save"));n(l,48,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"cancel")),"");n(l,52,0,a);var s=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"cancel"));n(l,54,0,s)})}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(100),r=t.ɵcrt({encapsulation:2,styles:[],data:{}});function o(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,o))],null,null)}function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-modal",[],null,null,null,i,r)),t.ɵdid(1,180224,null,0,u.ModalComponent,[t.ComponentFactoryResolver],null,null)],null,null)}l.RenderType_ModalComponent=r,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),r=e(4),o=e(40),i=e(605),a=e(51),s=e(20),d=e(18),c=e(606),p=e(7),f=e(3),v=e(488),h=e(22),g=e(57),m=e(8),y=e(107),C=e(32),b=e(9),w=e(44),S=e(233),_=e(63),R=e(5),I=e(19),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_s,[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,r=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!==(r.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,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 "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"));n(l,5,0,e),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_s,[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 T(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,r=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!==(r.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,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){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"));n(l,3,0,e),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium"));n(l,2,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,o.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade"));n(l,2,0,e)})}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,E)),t.ɵdid(6,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,P)),t.ɵdid(9,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.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,2,0,e)})}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,r.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){var e=n(l,13,0,l.component.totpDash);n(l,12,0,e)},function(n,l){var e=l.component;n(l,5,0,e.totpSec);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"");n(l,20,0,u),n(l,22,0,e.totpCodeFormatted);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),"");n(l,24,0,r)})}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_s,[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,r=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!==r.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,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.ɵ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,""));var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1));n(l,6,0,e);var u=t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com");n(l,11,0,u,r,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);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),"");n(l,22,0,o,!l.context.$implicit.canLaunch);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"");n(l,28,0,i),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""));var a=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"));n(l,42,0,a);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"");n(l,45,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),"");n(l,65,0,d)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.login.uris,e.trackByFunction)},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,r=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!==(r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==r.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==r.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,o.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,r=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!==(r.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,r.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,r=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!==(r.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,r.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,r.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,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.ɵand(16777216,null,null,1,null,U)),t.ɵdid(121,16384,null,0,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==r.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,o.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,"");var t=n(l,78,0,!e.showPassword,e.showPassword);n(l,77,0,"fa fa-lg",t);n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");var u=n(l,110,0,e.totpLow);n(l,109,0,"col-6 form-group totp d-flex align-items-end",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"));n(l,7,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"");n(l,22,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"));n(l,36,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"");n(l,41,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"");n(l,48,0,a),n(l,53,0,t.ɵnov(l,48).loading);var s=!t.ɵnov(l,48).loading,d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,55,0,s,d),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);var c=t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,73,0,c);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,81,0,p);var f=t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"));n(l,96,0,f),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);var v=t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri"));n(l,127,0,v)})}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_s,[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_s,[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,r=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!==(r.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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,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(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,r=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!==(r.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,r=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!==(r.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,r.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,"");var t=n(l,125,0,!e.showCardCode,e.showCardCode);n(l,124,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"));n(l,7,0,u),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);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"));n(l,21,0,r),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);var o=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"));n(l,42,0,o),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);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"");n(l,57,0,i);var a=t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"));n(l,69,0,a),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);var s=t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"));n(l,87,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019");n(l,90,0,d,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);var c=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"));n(l,105,0,c),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);var p=t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"");n(l,120,0,p);var f=t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),"");n(l,128,0,f)})}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_s,[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,r=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!==(r.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,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.ɵ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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"));n(l,7,0,e),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);var u=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"));n(l,28,0,u),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);var r=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"));n(l,42,0,r),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);var o=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"));n(l,56,0,o),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);var i=t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"));n(l,73,0,i),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);var a=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"));n(l,88,0,a),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);var s=t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"));n(l,105,0,s),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);var d=t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"));n(l,120,0,d),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);var c=t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"));n(l,135,0,c),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);var p=t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"));n(l,153,0,p),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);var f=t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"));n(l,168,0,f),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);var v=t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"));n(l,185,0,v),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);var h=t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"));n(l,199,0,h),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);var g=t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"));n(l,216,0,g),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);var m=t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"));n(l,230,0,m),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);var y=t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"));n(l,247,0,y),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);var C=t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"));n(l,261,0,C),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);var b=t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"));n(l,278,0,b),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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,12,0,e)})}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,r.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,"");var e=n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue);n(l,16,0,"fa fa-lg",e)},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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"");n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),"");n(l,20,0,u)})}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,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(39,16384,null,0,r.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,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(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,""));var e=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,8,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"");n(l,11,0,u),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,""));var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"));n(l,30,0,r);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,47,0,o)})}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,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.cipher.fields,e.trackByFunction)},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_s,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_s,[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,r=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!==(r.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==r.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(22,278528,null,0,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.ɵ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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"));n(l,3,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"));n(l,11,0,u),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,r.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,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.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections"));n(l,3,0,e)})}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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"));n(l,3,0,u);var r=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium"));n(l,5,0,r)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==r.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"));n(l,3,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"");n(l,6,0,r),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"));n(l,1,0,e),n(l,4,0,l.context.$implicit.password)})}function rn(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,r.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,en)),t.ɵdid(13,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,tn)),t.ɵdid(16,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,rn)),t.ɵdid(19,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 "]))],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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"));n(l,7,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium"));n(l,9,0,r)})}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,r.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,r=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!==(r.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,T)),t.ɵdid(24,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.ɵand(16777216,null,null,1,null,F)),t.ɵdid(29,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,G)),t.ɵdid(33,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,q)),t.ɵdid(37,16384,null,0,r.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,r=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!==(r.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,r.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==r.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,o.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,r=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!==(r.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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(89,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,ln)),t.ɵdid(92,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,on)),t.ɵdid(95,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,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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"));n(l,10,0,e),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);var u=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"));n(l,42,0,u),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);var r=t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"));n(l,54,0,r);var o=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"));n(l,64,0,o);var i=t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"));n(l,72,0,i),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,r.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,t=n(l,5,0,e.cipher.favorite,!e.cipher.favorite);n(l,4,0,"fa fa-lg",t)},function(n,l){var e=l.component,u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),"");n(l,0,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r.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,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.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,r.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,r=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!==r.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,r.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,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"]))],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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u),n(l,30,0,t.ɵnov(l,6).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"");n(l,32,0,r);var o=t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"));n(l,36,0,o);var i=t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel"));n(l,41,0,i)})}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-add-edit",[],null,null,null,pn,k)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.ApiService,I.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=k,l.View_AddEditComponent_0=pn,l.View_AddEditComponent_Host_0=fn;var vn=t.ɵccf("app-org-vault-add-edit",v.AddEditComponent,fn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=vn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(20),r=e(18),o=e(4),i=e(40),a=e(7),s=e(3),d=e(12),c=e(593),p=e(22),f=e(23),v=e(9),h=e(8),g=e(5),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"");n(l,4,0,e),n(l,7,0,t.ɵnov(l,7).loading);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix"));n(l,9,0,u)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,16384,null,0,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(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,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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==r.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(20,16384,null,0,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(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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==r.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),"");n(l,29,0,e,t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading);var u=!t.ɵnov(l,29).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,36,0,u,r)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.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,r.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,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(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,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"");n(l,20,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"));n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"));n(l,38,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"));n(l,44,0,i),n(l,50,0,t.ɵnov(l,5).loading);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"");n(l,52,0,a);var s=t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"));n(l,56,0,s);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"");n(l,60,0,d);var c=t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close"));n(l,62,0,c)})}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),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(596),p=e(5),f=e(6),v=e(13),h=e(8),g=e(23),m=e(9),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-th text-muted fa-fw"],["title","This group can access all items"]],null,null,null,null,null))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,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",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,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(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,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,22,0,l.component.groups)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}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,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,w)),t.ɵdid(10,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,R)),t.ɵdid(13,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.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"groupAccess"));n(l,3,0,e)})}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,r=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!==(r.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,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,10,0,"");n(l,13,0,"Name",e.name),n(l,19,0,e.accessGroups)},function(n,l){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"));n(l,5,0,e),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r=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!==r.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,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(28,16384,null,0,o.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,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.ɵ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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u),n(l,32,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"));n(l,38,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel"));n(l,43,0,i)})}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 T=t.ɵccf("app-collection-add-edit",c.CollectionAddEditComponent,N,{collectionId:"collectionId",organizationId:"organizationId"},{onSavedCollection:"onSavedCollection",onDeletedCollection:"onDeletedCollection"},[]);l.CollectionAddEditComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(594),p=e(44),f=e(8),v=e(22),h=e(5),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,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.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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,C)),t.ɵdid(46,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(49,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(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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"));n(l,32,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"));n(l,38,0,o),n(l,54,0,t.ɵnov(l,5).loading);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,i);var a=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"));n(l,60,0,a);var s=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel"));n(l,65,0,s)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-collections",[],null,null,null,S,g)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService,h.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=g,l.View_CollectionsComponent_0=S,l.View_CollectionsComponent_Host_0=_;var R=t.ɵccf("app-org-vault-collections",c.CollectionsComponent,_,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(20),o=e(18),i=e(12),a=e(7),s=e(3),d=e(493),c=e(5),p=e(240),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"user"));n(l,1,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"));n(l,3,0,e),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,14,0,l.context.$implicit.message)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"table",[["class","table table-hover mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,22,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,19,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(29,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,18,0,e.showUser),n(l,29,0,e.events)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"));n(l,7,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"));n(l,13,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"event"));n(l,21,0,r)})}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,r.ApiActionDirective,[t.ElementRef,o.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore"));n(l,7,0,u)})}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,r=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!==(r.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,r=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!==(r.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,r.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(38,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(39,{"fa-spin":0}),(n()(),t.ɵted(40,null,["\n ","\n "])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(47,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(53,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.start),n(l,28,0,e.end),n(l,35,0,e.refreshPromise);var u=n(l,39,0,e.loaded&&t.ɵnov(l,34).loading);n(l,38,0,"fa fa-refresh fa-fw",u),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,u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"startDate"));n(l,7,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"startDate")),"");n(l,10,0,r,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);var o=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"endDate"));n(l,22,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,25,0,n(l,31,0,t.ɵnov(l.parent,0),"endDate")),"");n(l,25,0,i,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);var a=t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l.parent,0),"refresh"));n(l,40,0,a)})}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){var e=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"eventLogs"));n(l,11,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"close"));n(l,34,0,r)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-events",[],null,null,null,R,v)),t.ɵdid(1,114688,null,0,d.EntityEventsComponent,[c.ApiService,s.I18nService,p.EventService,f.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityEventsComponent=v,l.View_EntityEventsComponent_0=R,l.View_EntityEventsComponent_Host_0=I;var k=t.ɵccf("app-entity-events",d.EntityEventsComponent,I,{name:"name",entity:"entity",entityId:"entityId",organizationId:"organizationId",showUser:"showUser"},{},[]);l.EntityEventsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),r=e(12),o=e(102),i=e(169),a=e(144),s=e(42),d=e(106),c=e(32),p=e(7),f=e(3),v=e(272),h=e(20),g=e(18),m=e(504),y=e(5),C=e(6),b=e(13),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUsersInList"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted"));n(l,1,0,e)})}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 T(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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"userAccessAllItems")),"");n(l,0,0,e)})}function E(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,T)),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user"));n(l,1,0,e)})}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,r.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(7,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.id.substr(0,8),"_ReadOnly");n(l,5,0,e,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,r=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!==r.selectedChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,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(7,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(9,16384,null,0,r.NgControlStatus,[[4,r.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",[["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,E)),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,u=t.ɵinlineInterpolate(1,"",l.context.$implicit.id.substr(0,8),"_Checked");n(l,7,0,u,"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){var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"name"));n(l,15,0,e);var u=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"userType"));n(l,22,0,u)})}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,r=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!==(r.searchText=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(13,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(15,16384,null,0,r.NgControlStatus,[[4,r.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);var t=n(l,23,0,!e.showSelected);n(l,22,0,"btn btn-outline-secondary",t);var u=n(l,29,0,e.showSelected);n(l,28,0,"btn btn-outline-secondary",u),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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"search"));n(l,7,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"search")),"");n(l,10,0,u,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);var r=t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent,0),"all"));n(l,24,0,r);var o=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"selected"));n(l,30,0,o)})}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,r=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!==r.submit()&&u);return u},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,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵeld(17,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(30,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,L)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(34,5),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["",""])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,30,0,e.loading||!e.users);var u=!e.loading&&e.users&&t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id"));n(l,33,0,u)},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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"userAccess"));n(l,15,0,u),n(l,18,0,e.entityName);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,r),n(l,38,0,t.ɵnov(l,6).loading);var o=t.ɵinlineInterpolate(1,"",t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"loading")),"");n(l,40,0,o);var i=t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"save"));n(l,44,0,i);var a=t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"close"));n(l,49,0,a)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-users",[],null,null,null,z,w)),t.ɵdid(1,114688,null,0,m.EntityUsersComponent,[y.ApiService,f.I18nService,C.Angulartics2,b.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityUsersComponent=w,l.View_EntityUsersComponent_0=z,l.View_EntityUsersComponent_Host_0=G;var j=t.ɵccf("app-entity-users",m.EntityUsersComponent,G,{entity:"entity",entityId:"entityId",entityName:"entityName",organizationId:"organizationId"},{onEditedUsers:"onEditedUsers"},[]);l.EntityUsersComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(598),p=e(5),f=e(6),v=e(13),h=e(44),g=e(8),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(22,278528,null,0,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,22,0,l.component.collections)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){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,r=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!==(r.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,r=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!==(r.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,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(46,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(47,278528,null,0,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,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,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);var t=n(l,48,0,"selected"!==e.access);n(l,47,0,"form-group",t);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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"));n(l,5,0,e),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);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"externalId"));n(l,21,0,u),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);var r=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent,0),"externalIdGroupDesc"));n(l,32,0,r);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"accessControl"));n(l,39,0,o),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);var i=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"groupAccessAllItems"));n(l,61,0,i),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);var a=t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l.parent,0),"groupAccessSelectedCollections"));n(l,76,0,a)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,r=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!==r.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,o.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,o.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,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.ɵ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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u),n(l,32,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"");n(l,34,0,r);var o=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"));n(l,38,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel"));n(l,43,0,i)})}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),r=e(102),o=e(4),i=e(20),a=e(18),s=e(7),d=e(3),c=e(600),p=e(5),f=e(6),v=e(13),h=e(44),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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,r=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!==(r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"inviteUserDesc"));n(l,3,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"));n(l,9,0,u),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);var r=t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"inviteMultipleEmailDesc","20"));n(l,22,0,r)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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,22,0,l.component.collections)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"));n(l,10,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly"));n(l,14,0,u)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,o.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,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.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,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,r=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!==(r.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_j,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(72,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(74,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeOwner"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵeld(79,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(80,null,["",""])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["\n ","\n "])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(92,16384,null,0,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(95,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(96,278528,null,0,o.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,r=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!==(r.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_j,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,r=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!==(r.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_j,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,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,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);var t=n(l,97,0,"selected"!==e.access);n(l,96,0,"form-group",t);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){var e=t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent,0),"userType"));n(l,6,0,e),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);var u=t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent,0),"user"));n(l,20,0,u);var r=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent,0),"userDesc"));n(l,23,0,r),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);var o=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"manager"));n(l,39,0,o);var i=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"managerDesc"));n(l,42,0,i),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);var a=t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"admin"));n(l,58,0,a);var s=t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"adminDesc"));n(l,61,0,s),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);var d=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"owner"));n(l,77,0,d);var c=t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l.parent,0),"ownerDesc"));n(l,80,0,c);var p=t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent,0),"accessControl"));n(l,88,0,p),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);var f=t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,0),"userAccessAllItems"));n(l,110,0,f),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);var v=t.ɵunv(l,125,0,n(l,126,0,t.ɵnov(l.parent,0),"userAccessSelectedCollections"));n(l,125,0,v)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),"");n(l,0,0,e,t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading);var u=!t.ɵnov(l,0).loading,r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),"");n(l,6,0,u,r)})}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,o.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,r=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!==r.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,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(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,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(33,16384,null,0,o.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,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.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component,t=n(l,5,0,!e.editMode);n(l,4,0,"modal-dialog",t),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);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u),n(l,37,0,t.ɵnov(l,7).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,r);var o=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"));n(l,43,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,i)})}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 T=t.ɵccf("app-user-add-edit",c.UserAddEditComponent,N,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser",onDeletedUser:"onDeletedUser"},[]);l.UserAddEditComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(4),d=e(601),c=e(5),p=e(6),f=e(13),v=e(23),h=e(62),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,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,o.ɵangular_packages_forms_forms_bh,[],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,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,r=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!==(r.dontAskAgain=e)&&u);return u},null,null)),t.ɵdid(46,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(48,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(50,16384,null,0,o.NgControlStatus,[[4,o.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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"confirmUser"));n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,r);var o=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"fingerprintEnsureIntegrityVerify"));n(l,32,0,o);var i=t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"learnMore"));n(l,35,0,i),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);var a=t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"dontAskFingerprintAgain"));n(l,53,0,a),n(l,60,0,t.ɵnov(l,5).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"loading")),"");n(l,62,0,s);var d=t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"confirm"));n(l,66,0,d);var c=t.ɵunv(l,71,0,n(l,72,0,t.ɵnov(l,0),"cancel"));n(l,71,0,c)})}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,r.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),r=e(102),o=e(4),i=e(7),a=e(3),s=e(20),d=e(18),c=e(602),p=e(5),f=e(6),v=e(13),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),"");n(l,2,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList"));n(l,1,0,e)})}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,r.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,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.component.groups)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(7,16384,null,0,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(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.groups||!e.groups.length),n(l,10,0,e.groups&&e.groups.length)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"groupAccessUserDesc"));n(l,3,0,e)})}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,49,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,46,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,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(33,16384,null,0,o.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"groupAccess"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u),n(l,37,0,t.ɵnov(l,5).loading);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"");n(l,39,0,r);var o=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"));n(l,43,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"));n(l,48,0,i)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-groups",[],null,null,null,S,h)),t.ɵdid(1,114688,null,0,c.UserGroupsComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserGroupsComponent=h,l.View_UserGroupsComponent_0=S,l.View_UserGroupsComponent_Host_0=_;var R=t.ɵccf("app-user-groups",c.UserGroupsComponent,_,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser"},[]);l.UserGroupsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(572),r=e(8),o=e(4),i=e(7),a=e(3),s=e(571),d=e(573),c=e(63),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"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,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"div",[["appFlexCopy",""],["class","text-monospace password-wrapper"]],[[8,"innerHTML",1]],[[null,"copy"]],function(n,l,e){var u=!0;"copy"===l&&(u=!1!==t.ɵnov(n,5).onCopy()&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.FlexCopyDirective,[t.ElementRef,r.PlatformUtilsService],null,null),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,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(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,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){var e=t.ɵunv(l,4,0,n(l,6,0,t.ɵnov(l.parent.parent,1),l.context.$implicit.password));n(l,4,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,2),l.context.$implicit.date,"medium"));n(l,9,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"");n(l,15,0,r)})}function v(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,f)),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.history)},null)}function h(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noPasswordsInList"));n(l,1,0,e)})}function g(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,s.ColorPasswordPipe,[]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(3,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(24,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,h)),t.ɵdid(27,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(32,1),(n()(),t.ɵted(33,null,["\n ","\n "])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,4,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.clear()&&t);return t},null,null)),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,24,0,e.history.length),n(l,27,0,!e.history.length)},function(n,l){var e=t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHistory"));n(l,12,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"close")),"");n(l,15,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"close")),"");n(l,31,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"close"));n(l,33,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"clear")),"");n(l,38,0,i)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,g,p)),t.ɵdid(1,114688,null,0,d.PasswordGeneratorHistoryComponent,[c.PasswordGenerationService,r.PlatformUtilsService,a.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=p,l.View_PasswordGeneratorHistoryComponent_0=g,l.View_PasswordGeneratorHistoryComponent_Host_0=m;var y=t.ɵccf("app-password-generator-history",d.PasswordGeneratorHistoryComponent,m,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(473),v=e(5),h=e(6),g=e(13),m=e(23),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.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"]],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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(47,16384,null,0,o.NgControlStatus,[[4,o.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);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"purgeVault"));n(l,14,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r);var o=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),e.organizationId?"purgeOrgVaultDesc":"purgeVaultDesc"));n(l,28,0,o);var i=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"purgeVaultWarning"));n(l,33,0,i);var a=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"));n(l,37,0,a),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);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"");n(l,56,0,s);var d=t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"purgeVault"));n(l,60,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close"));n(l,65,0,c)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-purge-vault",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.PurgeVaultComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_PurgeVaultComponent=C,l.View_PurgeVaultComponent_0=b,l.View_PurgeVaultComponent_Host_0=w;var S=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,w,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),r=e(102),o=e(4),i=e(10),a=e(7),s=e(3),d=e(20),c=e(18),p=e(552),f=e(44),v=e(8),h=e(9),g=e(22),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noOrganizationsList"));n(l,1,0,e)})}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_s,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"));n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll"));n(l,7,0,u)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList"));n(l,1,0,e)})}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,r.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,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.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,r=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!==(r.organizationId=e)&&u);"change"===l&&(u=!1!==r.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,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(24,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(31,16384,null,0,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,S)),t.ɵdid(35,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,R)),t.ɵdid(38,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,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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"shareDesc"));n(l,3,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"organization"));n(l,9,0,u),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);var r=t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"collections"));n(l,27,0,r)})}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,o.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){var e=n(l,2,0,t.ɵnov(l.parent,5).loading);n(l,1,0,"btn btn-primary btn-submit manual",e)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l.parent,5).loading||!e.canSave);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"loading")),"");n(l,4,0,u);var r=t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"save"));n(l,8,0,r)})}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,o.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);var e=t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"newOrganization"));n(l,2,0,e)})}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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bh,[],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,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(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,o.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,o.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,o.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,o.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"share"));n(l,15,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"");n(l,21,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")),"");n(l,43,0,r);var o=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"cancel"));n(l,45,0,o)})}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 T=t.ɵccf("app-vault-share",p.ShareComponent,N,{cipherId:"cipherId",organizationId:"organizationId"},{onSharedCipher:"onSharedCipher"},[]);l.ShareComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(561),C=e(6),b=e(9),w=e(8),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDesc"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDownloadApp"));n(l,11,0,u)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,7,0,e);var u=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorReaddDesc"));n(l,9,0,u);var r=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorNeedApp"));n(l,15,0,r)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorScanCode"));n(l,3,0,e)})}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,r=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!==(r.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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorEnterCode"));n(l,3,0,e),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}function T(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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}function E(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,r=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!==r.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,T)),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);var t=n(l,56,0,e.enabled);n(l,55,0,"text-center",t),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);var u=t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"iosDevices"));n(l,19,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,0),"androidDevices"));n(l,28,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"windowsDevices"));n(l,37,0,o);var i=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent,0),"twoStepAuthenticatorAppsRecommended"));n(l,45,0,i);var a=t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"key")),"");n(l,61,0,a),n(l,63,0,e.key),n(l,72,0,t.ɵnov(l,0).loading);var s=t.ɵinlineInterpolate(1,"",t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"loading")),"");n(l,74,0,s);var d=t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l.parent,0),"close"));n(l,85,0,d)})}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,E)),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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"authenticatorAppTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-authenticator",[],null,null,null,P,S)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,w.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=S,l.View_TwoFactorAuthenticatorComponent_0=P,l.View_TwoFactorAuthenticatorComponent_Host_0=V;var x=t.ɵccf("app-two-factor-authenticator",y.TwoFactorAuthenticatorComponent,V,{},{onUpdated:"onUpdated"},[]);l.TwoFactorAuthenticatorComponentNgFactory=x},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(476),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,5,0,u);var r=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"));n(l,11,0,r),n(l,13,0,e.ikey);var o=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"));n(l,17,0,o),n(l,19,0,e.skey);var i=t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"));n(l,23,0,i),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,r=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!==(r.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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoDesc"));n(l,5,0,e);var u=t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"));n(l,11,0,u),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);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"));n(l,28,0,r),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);var o=t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"));n(l,45,0,o);var i=t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"ex"))," api-xxxxxxxx.duosecurity.com");n(l,48,0,i,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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}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,r=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!==r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"");n(l,19,0,e);var u=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close"));n(l,30,0,u)})}function O(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Duo"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-duo",[],null,null,null,O,w)),t.ɵdid(1,49152,null,0,y.TwoFactorDuoComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorDuoComponent=w,l.View_TwoFactorDuoComponent_0=O,l.View_TwoFactorDuoComponent_Host_0=N;var T=t.ɵccf("app-two-factor-duo",y.TwoFactorDuoComponent,N,{},{onUpdated:"onUpdated"},[]);l.TwoFactorDuoComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(20),h=e(18),g=e(4),m=e(7),y=e(562),C=e(6),b=e(8),w=e(9),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,3,0,"success","fa-check-circle",e)},function(n,l){var e=l.component,u=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,5,0,u);var r=t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"));n(l,9,0,r),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,u=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeEmailSent",e.sentEmail));n(l,1,0,u)})}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,r=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!==(r.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,r=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!==(r.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){var e=t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailDesc"));n(l,5,0,e);var u=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterEmail"));n(l,14,0,u),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);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,33,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent.parent,0),"sendEmail"));n(l,37,0,o);var i=t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterCode"));n(l,48,0,i),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable"));n(l,1,0,e)})}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,r=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!==r.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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"");n(l,19,0,e);var u=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close"));n(l,30,0,u)})}function T(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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"emailTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-email",[],null,null,null,T,S)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,w.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=S,l.View_TwoFactorEmailComponent_0=T,l.View_TwoFactorEmailComponent_Host_0=E;var P=t.ɵccf("app-two-factor-email",y.TwoFactorEmailComponent,E,{},{onUpdated:"onUpdated"},[]);l.TwoFactorEmailComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(40),r=e(7),o=e(3),i=e(4),a=e(537),s=e(96),d=e(10),c=e(8),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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==r.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,r.I18nPipe,[o.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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,27).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepOptions"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"close")),"");n(l,13,0,u);var r=t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,30,0,r);var o=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"recoveryCodeDesc"));n(l,32,0,o);var i=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"close"));n(l,39,0,i)})}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,o.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(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(4),c=e(7),p=e(563),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,r.TwoFactorVerifyComponent,[o.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,u=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryYourCode"));n(l,3,0,u),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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryNoCode"));n(l,1,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"printCode"));n(l,1,0,e)})}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){var e=t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent,0),"close"));n(l,17,0,e)})}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){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"recoveryCodeTitle"));n(l,13,0,u);var r=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,r)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-recovery",[],null,null,null,C,f)),t.ɵdid(1,49152,null,0,p.TwoFactorRecoveryComponent,[i.I18nService],null,null)],null,null)}l.RenderType_TwoFactorRecoveryComponent=f,l.View_TwoFactorRecoveryComponent_0=C,l.View_TwoFactorRecoveryComponent_Host_0=b;var w=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(4),f=e(40),v=e(20),h=e(18),g=e(12),m=e(7),y=e(564),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,1,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,3,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"u2fkeyX",l.parent.context.index+1));n(l,1,0,e)})}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){var e=n(l,2,0,!l.parent.context.$implicit.compromised,l.parent.context.$implicit.compromised);n(l,1,0,"fa fa-fw",e)},function(n,l){var e=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")),"");n(l,0,0,e)})}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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"");n(l,0,0,e)})}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,r=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==r.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){var e=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"remove"));n(l,7,0,e)})}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 T(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 E(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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fWaiting"));n(l,3,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fClickSave"));n(l,3,0,e)})}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){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fProblemReadingTryAgain"));n(l,3,0,e)})}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,E)),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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,0,0,e)})}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){var e=t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"save"));n(l,1,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys"));n(l,7,0,u)})}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,r=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!==r.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,r=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!==(r.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,T)),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);var u=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorU2fWarning"));n(l,15,0,u);var r=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorU2fSupportWeb"));n(l,21,0,r);var o=t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"twoFactorU2fAdd"));n(l,37,0,o);var i=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorU2fGiveName"));n(l,43,0,i);var a=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorU2fPlugInReadKey"));n(l,47,0,a);var s=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorU2fTouchButton"));n(l,51,0,s);var d=t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"twoFactorU2fSaveForm"));n(l,55,0,d);var c=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"name"));n(l,64,0,c),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);var p=t.ɵunv(l,78,0,n(l,79,0,t.ɵnov(l.parent,0),"readKey"));n(l,78,0,p),n(l,90,0,t.ɵnov(l,0).loading||!e.u2fResponse);var f=t.ɵunv(l,103,0,n(l,104,0,t.ɵnov(l.parent,0),"close"));n(l,103,0,f)})}function L(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FIDO U2F"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(28,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-u2f",[],null,null,null,L,w)),t.ɵdid(1,245760,null,0,y.TwoFactorU2fComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorU2fComponent=w,l.View_TwoFactorU2fComponent_0=L,l.View_TwoFactorU2fComponent_Host_0=z;var G=t.ɵccf("app-two-factor-u2f",y.TwoFactorU2fComponent,z,{},{onUpdated:"onUpdated"},[]);l.TwoFactorU2fComponentNgFactory=G},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(197),r=e(174),o=e(5),i=e(3),a=e(13),s=e(23),d=e(35),c=e(33),p=e(12),f=e(51),v=e(4),h=e(20),g=e(18),m=e(7),y=e(565),C=e(6),b=e(8),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,r.TwoFactorVerifyComponent,[o.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){var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),"");n(l,1,0,"success","fa-check-circle",e)},function(n,l){var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"));n(l,3,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"remove")),"");n(l,5,0,e)})}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,""));var e=t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"yubikeyX",l.context.index+1));n(l,3,0,e)})}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);var e=t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"");n(l,3,0,e);var u=t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys"));n(l,7,0,u)})}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,r=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!==r.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,r=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!==(r.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);var e=t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorYubikeyWarning"));n(l,15,0,e);var u=t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportUsb"));n(l,21,0,u);var r=t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportMobile"));n(l,25,0,r);var o=t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent,0),"twoFactorYubikeyAdd"));n(l,33,0,o);var i=t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"twoFactorYubikeyPlugIn"));n(l,39,0,i);var a=t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorYubikeySelectKey"));n(l,43,0,a);var s=t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorYubikeyTouchButton"));n(l,47,0,s);var d=t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorYubikeySaveForm"));n(l,51,0,d);var c=t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"nfcSupport"));n(l,64,0,c),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);var p=t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfc"));n(l,77,0,p);var f=t.ɵunv(l,82,0,n(l,83,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfcDesc"));n(l,82,0,f),n(l,88,0,t.ɵnov(l,0).loading);var v=t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"loading")),"");n(l,90,0,v);var h=t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"save"));n(l,94,0,h);var g=t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"close"));n(l,102,0,g)})}function N(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["YubiKey"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(28,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){var e=t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"));n(l,10,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"");n(l,16,0,u)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-yubikey",[],null,null,null,N,w)),t.ɵdid(1,49152,null,0,y.TwoFactorYubiKeyComponent,[o.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorYubiKeyComponent=w,l.View_TwoFactorYubiKeyComponent_0=N,l.View_TwoFactorYubiKeyComponent_Host_0=T;var E=t.ɵccf("app-two-factor-yubikey",y.TwoFactorYubiKeyComponent,T,{},{onUpdated:"onUpdated"},[]);l.TwoFactorYubiKeyComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),r=e(3),o=e(12),i=e(20),a=e(18),s=e(35),d=e(33),c=e(99),p=e(51),f=e(545),v=e(5),h=e(6),g=e(13),m=e(23),y=e(19),C=e(64),b=e(57),w=e(22),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[r.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,r=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!==r.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(8,16384,null,0,o.NgControlStatusGroup,[[4,o.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,[r.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,r=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!==(r.masterPassword=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(47,16384,null,0,o.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,o.NG_VALIDATORS,function(n){return[n]},[o.RequiredValidator]),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,o.NgModel,[[2,o.ControlContainer],[6,o.NG_VALIDATORS],[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(52,16384,null,0,o.NgControlStatus,[[4,o.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);var e=t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"updateEncryptionKey"));n(l,14,0,e);var u=t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"");n(l,17,0,u);var r=t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"updateEncryptionKeyShortDesc")),o=t.ɵunv(l,28,1,n(l,30,0,t.ɵnov(l,0),"updateEncryptionKeyDesc"));n(l,28,0,r,o);var i=t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"learnMore"));n(l,32,0,i);var a=t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"updateEncryptionKeyWarning"));n(l,38,0,a);var s=t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"masterPass"));n(l,42,0,s),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);var d=t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"loading")),"");n(l,61,0,d);var c=t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"updateEncryptionKey"));n(l,65,0,c);var p=t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l,0),"close"));n(l,70,0,p)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-update-key",[],null,null,null,_,S)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,r.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,w.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=S,l.View_UpdateKeyComponent_0=_,l.View_UpdateKeyComponent_Host_0=R;var I=t.ɵccf("app-update-key",f.UpdateKeyComponent,R,{},{},[]);l.UpdateKeyComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(922),r=e(117),o=e(13),i=e(10),a=e(533),s=e(444),d=e(98),c=e(9),p=e(71),f=e(57),v=e(446),h=e(64),g=e(63),m=e(22),y=e(96),C=e(6),b=e(3),w=e(8),S=e(133),_=e(62),R=e(23),I=e(44),k=e(42),A=e(134),O=e(445),N=e(230),T=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,r.ToasterContainerComponent,[o.ToasterService,t.ChangeDetectorRef,t.NgZone],{toasterconfig:[0,"toasterconfig"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(3,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(4,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0,l.component.toasterConfig),n(l,4,0)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,E,T)),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,o.ToasterService,b.I18nService,w.PlatformUtilsService,t.NgZone,S.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService,N.RouterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=T,l.View_AppComponent_0=E,l.View_AppComponent_Host_0=P;var V=t.ɵccf("app-root",a.AppComponent,P,{},{},[]);l.AppComponentNgFactory=V},,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&l.indexOf("]")>-1){var u=l.lastIndexOf(".");t=l.substr(0,u>-1?u:l.length)+": "}n.push(t+e)})},e=this;for(var t in this.validationErrors)l(t);return n},n}();l.ErrorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.type=n.Type,this.userId=n.UserId,this.organizationId=n.OrganizationId,this.cipherId=n.CipherId,this.collectionId=n.CollectionId,this.groupId=n.GroupId,this.organizationUserId=n.OrganizationUserId,this.actingUserId=n.ActingUserId,this.date=n.Date,this.deviceType=n.DeviceType,this.ipAddress=n.IpAddress}}();l.EventResponse=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name,this.accessAll=n.AccessAll,this.externalId=n.ExternalId}}();l.GroupResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.collections=[],null!=l.Collections&&(e.collections=l.Collections.map(function(n){return new r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.GroupDetailsResponse=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.accessToken=n.access_token,this.expiresIn=n.expires_in,this.refreshToken=n.refresh_token,this.tokenType=n.token_type,this.privateKey=n.PrivateKey,this.key=n.Key,this.twoFactorToken=n.TwoFactorToken}}();l.IdentityTokenResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){if(this.twoFactorProviders2=new Map,this.twoFactorProviders=n.TwoFactorProviders,null!=n.TwoFactorProviders2)for(var l in n.TwoFactorProviders2)n.TwoFactorProviders2.hasOwnProperty(l)&&this.twoFactorProviders2.set(parseInt(l,null),n.TwoFactorProviders2[l])}}();l.IdentityTwoFactorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.data=null==n.Data?[]:n.Data.map(function(n){return new l(n)}),this.continuationToken=n.ContinuationToken}}();l.ListResponse=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(608),o=function(n){function l(l){var e=n.call(this,l)||this;return e.charges=[],e.invoices=[],e.transactions=[],e.storageName=l.StorageName,e.storageGb=l.StorageGb,e.paymentSource=null==l.PaymentSource?null:new r.BillingSourceResponse(l.PaymentSource),e.subscription=null==l.Subscription?null:new r.BillingSubscriptionResponse(l.Subscription),e.upcomingInvoice=null==l.UpcomingInvoice?null:new r.BillingInvoiceInfoResponse(l.UpcomingInvoice),null!=l.Charges&&(e.charges=l.Charges.map(function(n){return new r.BillingChargeResponse(n)})),null!=l.Transactions&&(e.transactions=l.Transactions.map(function(n){return new r.BillingTransactionResponse(n)})),null!=l.Invoices&&(e.invoices=l.Invoices.map(function(n){return new r.BillingInvoiceResponse(n)})),e.expiration=l.Expiration,e}return u(l,n),l}(e(613).OrganizationResponse);l.OrganizationBillingResponse=o},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(274),o=function(){return function(n){this.id=n.Id,this.userId=n.UserId,this.type=n.Type,this.status=n.Status,this.accessAll=n.AccessAll}}();l.OrganizationUserResponse=o;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.name=l.Name,e.email=l.Email,e.twoFactorEnabled=l.TwoFactorEnabled,e}return u(l,n),l}(o);l.OrganizationUserUserDetailsResponse=i;var a=function(n){function l(l){var e=n.call(this,l)||this;return e.collections=[],null!=l.Collections&&(e.collections=l.Collections.map(function(n){return new r.SelectionReadOnlyResponse(n)})),e}return u(l,n),l}(o);l.OrganizationUserDetailsResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.kdf=n.Kdf,this.kdfIterations=n.KdfIterations}}();l.PreloginResponse=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.useGroups=n.UseGroups,this.useDirectory=n.UseDirectory,this.useEvents=n.UseEvents,this.useTotp=n.UseTotp,this.use2fa=n.Use2fa,this.selfHost=n.SelfHost,this.usersGetPremium=n.UsersGetPremium,this.seats=n.Seats,this.maxCollections=n.MaxCollections,this.maxStorageGb=n.MaxStorageGb,this.key=n.Key,this.status=n.Status,this.type=n.Type,this.enabled=n.Enabled}}();l.ProfileOrganizationResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(609),u=e(610),r=e(611),o=e(612),i=e(614),a=function(){return function(n){var l=this;this.folders=[],this.collections=[],this.ciphers=[],n.Profile&&(this.profile=new i.ProfileResponse(n.Profile)),n.Folders&&n.Folders.forEach(function(n){l.folders.push(new o.FolderResponse(n))}),n.Collections&&n.Collections.forEach(function(n){l.collections.push(new u.CollectionDetailsResponse(n))}),n.Ciphers&&n.Ciphers.forEach(function(n){l.ciphers.push(new t.CipherResponse(n))}),n.Domains&&(this.domains=new r.DomainsResponse(n.Domains))}}();l.SyncResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.key=n.Key}}();l.TwoFactorAuthenticatorResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.host=n.Host,this.secretKey=n.SecretKey,this.integrationKey=n.IntegrationKey}}();l.TwoFactorDuoResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.email=n.Email}}();l.TwoFactorEmailResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.type=n.Type}}();l.TwoFactorProviderResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.code=n.Code}}();l.TwoFactorRecoverResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.keys=null==n.Keys?null:n.Keys.map(function(n){return new u(n)})}}();l.TwoFactorU2fResponse=t;var u=function(){return function(n){this.name=n.Name,this.id=n.Id,this.compromised=n.Compromised}}();l.KeyResponse=u;var r=function(){return function(n){this.userId=n.UserId,this.appId=n.AppId,this.challenge=n.Challenge,this.version=n.Version}}();l.ChallengeResponse=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.enabled=n.Enabled,this.key1=n.Key1,this.key2=n.Key2,this.key3=n.Key3,this.key4=n.Key4,this.key5=n.Key5,this.nfc=n.Nfc}}();l.TwoFactorYubiKeyResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.userId=n.UserId,this.publicKey=n.PublicKey}}();l.UserKeyResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.throttle=function(n,l){return function(e,t,u){var r=u.value,o=new Map;return{value:function(){for(var e=this,t=[],u=0;u=n?s[n-1]():0===s.length&&(i.delete(a),0===i.size&&o.delete(e))}).then(l,u)};s.push(d),s.length<=n&&d()})}}}}},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.ids=null==n?[]:n}}();l.CipherBulkDeleteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.ids=null==n?[]:n,this.folderId=l}}();l.CipherBulkMoveRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(467),u=function(){return function(n,l){var e=this;null!=n&&(this.ciphers=[],n.forEach(function(n){e.ciphers.push(new t.CipherWithIdRequest(n))})),this.collectionIds=l}}();l.CipherBulkShareRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(193),u=function(){return function(n){this.cipher=new t.CipherRequest(n),this.collectionIds=n.collectionIds}}();l.CipherShareRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l,e){this.children=[],this.parent=e,this.node=n,this.node.name=l}}();l.TreeNode=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EncryptedObject=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentUrls=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(146),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,name:null},e,["id"]),t.revisionDate=null!=l.revisionDate?new Date(l.revisionDate):null,t)}return u(l,n),l.prototype.decrypt=function(){return this.decryptObj(new r.FolderView(this),{name:null},null)},l}(e(109).default);l.Folder=o},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.password=n,this.date=l}}();l.GeneratedPasswordHistory=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.status=n.status,this.type=n.type,this.enabled=n.enabled,this.useGroups=n.useGroups,this.useDirectory=n.useDirectory,this.useEvents=n.useEvents,this.useTotp=n.useTotp,this.use2fa=n.use2fa,this.selfHost=n.selfHost,this.usersGetPremium=n.usersGetPremium,this.seats=n.seats,this.maxCollections=n.maxCollections,this.maxStorageGb=n.maxStorageGb}}();l.OrganizationData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(262),u=e(241),r=function(){function n(n){null!=n&&(this.id=n.id,this.name=n.name,this.status=n.status,this.type=n.type,this.enabled=n.enabled,this.useGroups=n.useGroups,this.useDirectory=n.useDirectory,this.useEvents=n.useEvents,this.useTotp=n.useTotp,this.use2fa=n.use2fa,this.selfHost=n.selfHost,this.usersGetPremium=n.usersGetPremium,this.seats=n.seats,this.maxCollections=n.maxCollections,this.maxStorageGb=n.maxStorageGb)}return Object.defineProperty(n.prototype,"canAccess",{get:function(){return this.type===u.OrganizationUserType.Owner||this.enabled&&this.status===t.OrganizationUserStatusType.Confirmed},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isManager",{get:function(){return this.type===u.OrganizationUserType.Manager||this.type===u.OrganizationUserType.Owner||this.type===u.OrganizationUserType.Admin},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isAdmin",{get:function(){return this.type===u.OrganizationUserType.Owner||this.type===u.OrganizationUserType.Admin},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isOwner",{get:function(){return this.type===u.OrganizationUserType.Owner},enumerable:!0,configurable:!0}),n}();l.Organization=r},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)}),r=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]=0?this.browserCache=o.DeviceType.OperaBrowser:-1!==navigator.userAgent.indexOf(" Edge/")?this.browserCache=o.DeviceType.EdgeBrowser:-1!==navigator.userAgent.indexOf(" Vivaldi/")?this.browserCache=o.DeviceType.VivaldiBrowser:-1!==navigator.userAgent.indexOf(" Safari/")&&-1===navigator.userAgent.indexOf("Chrome")?this.browserCache=o.DeviceType.SafariBrowser:window.chrome&&-1!==navigator.userAgent.indexOf(" Chrome/")?this.browserCache=o.DeviceType.ChromeBrowser:-1!==navigator.userAgent.indexOf(" Trident/")?this.browserCache=o.DeviceType.IEBrowser:this.browserCache=o.DeviceType.UnknownBrowser,this.browserCache)},n.prototype.getDeviceString=function(){return o.DeviceType[this.getDevice()].toLowerCase().replace("browser","")},n.prototype.isFirefox=function(){return this.getDevice()===o.DeviceType.FirefoxBrowser},n.prototype.isChrome=function(){return this.getDevice()===o.DeviceType.ChromeBrowser},n.prototype.isEdge=function(){return this.getDevice()===o.DeviceType.EdgeBrowser},n.prototype.isOpera=function(){return this.getDevice()===o.DeviceType.OperaBrowser},n.prototype.isVivaldi=function(){return this.getDevice()===o.DeviceType.VivaldiBrowser},n.prototype.isSafari=function(){return this.getDevice()===o.DeviceType.SafariBrowser},n.prototype.isIE=function(){return this.getDevice()===o.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,r=null,o=t.toLowerCase(),i=!0;if(o.endsWith(".pdf")?(r="application/pdf",i=!1):o.endsWith(".xlsx")?r="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":o.endsWith(".docx")?r="application/vnd.openxmlformats-officedocument.wordprocessingml.document":o.endsWith(".pptx")?r="application/vnd.openxmlformats-officedocument.presentationml.presentation":o.endsWith(".csv")?r="text/csv":o.endsWith(".png")?r="image/png":o.endsWith(".jpg")||o.endsWith(".jpeg")?r="image/jpeg":o.endsWith(".gif")&&(r="image/gif"),null!=r&&null==(e=e||{}).type&&(e.type=r),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.9.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,r,o){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!=r&&t.unshift(r),i=document.createElement("div"),null!=o){switch((s=document.createElement("i")).classList.add("swal-custom-icon"),o){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 r=t.body;this.isFirefox()&&t.body.classList.contains("modal-open")&&(r=t.body.querySelector(".modal")),r.appendChild(u),u.select();try{t.execCommand("copy")}catch(n){console.warn("Copy to clipboard failed.",n)}finally{r.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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]-1&&(n=n.substring(0,l)),0!==n.indexOf("!/")&&0!==n.indexOf("#/")||(n=n.substring(1));var e=n.split("/"),t=[];return e.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)?t.push("__guid__"):t.push(n)}),encodeURIComponent(t.join("/"))},n}();l.Analytics=a},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&n.data.forEach(function(n){var t=new a.Collection(new d.CollectionData(n));l.push(t.decrypt().then(function(n){e.push(n)}))}),Promise.all(l)})),f.push(this.apiService.getCiphersOrganization(n).then(function(n){var l=[];return null!=n&&null!=n.data&&n.data.length>0&&n.data.forEach(function(n){var e=new i.Cipher(new s.CipherData(n));l.push(e.decrypt().then(function(n){t.push(n)}))}),Promise.all(l)})),[4,Promise.all(f)];case 1:return u.sent(),"csv"===l?(v=new Map,e.forEach(function(n){v.set(n.id,n)}),h=[],t.forEach(function(n){if(n.type===o.CipherType.Login||n.type===o.CipherType.SecureNote){var l={collections:[]};null!=n.collectionIds&&(l.collections=n.collectionIds.filter(function(n){return v.has(n)}).map(function(n){return v.get(n).name})),m.buildCommonCipher(l,n),h.push(l)}}),[2,r.unparse(h)]):(g={collections:[],items:[]},e.forEach(function(n){var l=new p.CollectionWithId;l.build(n),g.collections.push(l)}),t.forEach(function(n){var l=new c.CipherWithIds;l.build(n),g.items.push(l)}),[2,JSON.stringify(g,null," ")])}})})},n.prototype.getFileName=function(n,l){void 0===n&&(n=null),void 0===l&&(l="csv");var e=new Date;return"bitwarden"+(n?"_"+n:"")+"_export_"+(e.getFullYear()+""+this.padNumber(e.getMonth()+1,2)+this.padNumber(e.getDate(),2)+this.padNumber(e.getHours(),2)+this.padNumber(e.getMinutes(),2)+this.padNumber(e.getSeconds(),2))+"."+l},n.prototype.padNumber=function(n,l,e){void 0===e&&(e="0");var t=n.toString();return t.length>=l?t:new Array(l-t.length+1).join(e)+t},n.prototype.buildCommonCipher=function(n,l){switch(n.type=null,n.name=l.name,n.notes=l.notes,n.fields=null,n.login_uri=null,n.login_username=null,n.login_password=null,n.login_totp=null,l.fields&&l.fields.forEach(function(l){n.fields?n.fields+="\n":n.fields="",n.fields+=(l.name||"")+": "+l.value}),l.type){case o.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 o.CipherType.SecureNote:n.type="note";break;default:return}return n},n}();l.ExportService=v},,function(n,l){},,function(n,l){},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(38),u=e(135),r=e(991),o=e(992),i=e(993),a=e(994),s=e(996),d=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId=null,l.folderId=null,l.type=t.CipherType.Login,l.name="Item name",l.notes="Some notes about this item.",l.favorite=!1,l.fields=[],l.login=null,l.secureNote=null,l.card=null,l.identity=null,l},n.toView=function(n,l){switch(void 0===l&&(l=new u.CipherView),l.type=n.type,l.folderId=n.folderId,null==l.organizationId&&(l.organizationId=n.organizationId),l.name=n.name,l.notes=n.notes,l.favorite=n.favorite,null!=n.fields&&(l.fields=n.fields.map(function(n){return o.Field.toView(n)})),n.type){case t.CipherType.Login:l.login=a.Login.toView(n.login);break;case t.CipherType.SecureNote:l.secureNote=s.SecureNote.toView(n.secureNote);break;case t.CipherType.Card:l.card=r.Card.toView(n.card);break;case t.CipherType.Identity:l.identity=i.Identity.toView(n.identity)}return l},n.prototype.build=function(n){switch(this.organizationId=n.organizationId,this.folderId=n.folderId,this.type=n.type,this.name=n.name,this.notes=n.notes,this.favorite=n.favorite,null!=n.fields&&(this.fields=n.fields.map(function(n){return new o.Field(n)})),n.type){case t.CipherType.Login:this.login=new a.Login(n.login);break;case t.CipherType.SecureNote:this.secureNote=new s.SecureNote(n.secureNote);break;case t.CipherType.Card:this.card=new r.Card(n.card);break;case t.CipherType.Identity:this.identity=new i.Identity(n.identity)}},n}();l.Cipher=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(88),u=function(){function n(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}return n.template=function(){var l=new n;return l.cardholderName="John Doe",l.brand="visa",l.number="4242424242424242",l.expMonth="04",l.expYear="2023",l.code="123",l},n.toView=function(n,l){return void 0===l&&(l=new t.CardView),l.cardholderName=n.cardholderName,l.brand=n.brand,l.number=n.number,l.expMonth=n.expMonth,l.expYear=n.expYear,l.code=n.code,l},n}();l.Card=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(194),u=e(195),r=function(){function n(n){null!=n&&(this.name=n.name,this.value=n.value,this.type=n.type)}return n.template=function(){var l=new n;return l.name="Field name",l.value="Some value",l.type=t.FieldType.Text,l},n.toView=function(n,l){return void 0===l&&(l=new u.FieldView),l.type=n.type,l.value=n.value,l.name=n.name,l},n}();l.Field=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(170),u=function(){function n(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}return n.template=function(){var l=new n;return l.title="Mr",l.firstName="John",l.middleName="William",l.lastName="Doe",l.address1="123 Any St",l.address2="Apt #123",l.address3=null,l.city="New York",l.state="NY",l.postalCode="10001",l.country="US",l.company="Acme Inc.",l.email="john@company.com",l.phone="5555551234",l.ssn="000-123-4567",l.username="jdoe",l.passportNumber="US-123456789",l.licenseNumber="D123-12-123-12333",l},n.toView=function(n,l){return void 0===l&&(l=new t.IdentityView),l.title=n.title,l.firstName=n.firstName,l.middleName=n.middleName,l.lastName=n.lastName,l.address1=n.address1,l.address2=n.address2,l.address3=n.address3,l.city=n.city,l.state=n.state,l.postalCode=n.postalCode,l.country=n.country,l.company=n.company,l.email=n.email,l.phone=n.phone,l.ssn=n.ssn,l.username=n.username,l.passportNumber=n.passportNumber,l.licenseNumber=n.licenseNumber,l},n}();l.Identity=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(995),u=e(145),r=function(){function n(n){null!=n&&(null!=n.uris&&(this.uris=n.uris.map(function(n){return new t.LoginUri(n)})),this.username=n.username,this.password=n.password,this.totp=n.totp)}return n.template=function(){var l=new n;return l.uris=[],l.username="jdoe",l.password="myp@ssword123",l.totp="JBSWY3DPEHPK3PXP",l},n.toView=function(n,l){return void 0===l&&(l=new u.LoginView),null!=n.uris&&(l.uris=n.uris.map(function(n){return t.LoginUri.toView(n)})),l.username=n.username,l.password=n.password,l.totp=n.totp,l},n}();l.Login=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(234),u=function(){function n(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}return n.template=function(){var l=new n;return l.uri="https://google.com",l.match=null,l},n.toView=function(n,l){return void 0===l&&(l=new t.LoginUriView),l.uri=n.uri,l.match=n.match,l},n}();l.LoginUri=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(108),u=e(89),r=function(){function n(n){null!=n&&(this.type=n.type)}return n.template=function(){var l=new n;return l.type=t.SecureNoteType.Generic,l},n.toView=function(n,l){return void 0===l&&(l=new u.SecureNoteView),l.type=n.type,l},n}();l.SecureNote=r},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(147),u=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId="00000000-0000-0000-0000-000000000000",l.name="Collection name",l},n.toView=function(n,l){return void 0===l&&(l=new t.CollectionView),l.name=n.name,null==l.organizationId&&(l.organizationId=n.organizationId),l},n.prototype.build=function(n){this.organizationId=n.organizationId,this.name=n.name},n}();l.Collection=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(146),u=function(){function n(){}return n.template=function(){var l=new n;return l.name="Folder name",l},n.toView=function(n,l){return void 0===l&&(l=new t.FolderView),l.name=n.name,l},n.prototype.build=function(n){this.name=n.name},n}();l.Folder=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&(r=Math.floor(t.ciphers.length/2),o=t.ciphers.length-1,this.badData(t.ciphers[0])&&this.badData(t.ciphers[r])&&this.badData(t.ciphers[o]))?[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 g.BitwardenCsvImporter;case"bitwardenjson":return new m.BitwardenJsonImporter;case"lastpasscsv":case"passboltcsv":return new E.LastPassCsvImporter;case"keepassxcsv":return new N.KeePassXCsvImporter;case"aviracsv":return new h.AviraCsvImporter;case"blurcsv":return new y.BlurCsvImporter;case"safeincloudxml":return new H.SafeInCloudXmlImporter;case"padlockcsv":return new D.PadlockCsvImporter;case"keepass2xml":return new O.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new C.ChromeCsvImporter;case"firefoxcsv":return new R.FirefoxCsvImporter;case"upmcsv":return new Z.UpmCsvImporter;case"saferpasscsv":return new $.SaferPassCsvImporter;case"meldiumcsv":return new P.MeldiumCsvImporter;case"1password1pif":return new x.OnePassword1PifImporter;case"1passwordwincsv":return new M.OnePasswordWinCsvImporter;case"keepercsv":return new T.KeeperCsvImporter;case"passworddragonxml":return new j.PasswordDragonXmlImporter;case"enpasscsv":return new S.EnpassCsvImporter;case"enpassjson":return new _.EnpassJsonImporter;case"pwsafexml":return new q.PasswordSafeXmlImporter;case"dashlanejson":return new w.DashlaneJsonImporter;case"msecurecsv":return new V.MSecureCsvImporter;case"stickypasswordxml":return new Y.StickyPasswordXmlImporter;case"truekeycsv":return new J.TrueKeyCsvImporter;case"clipperzhtml":return new b.ClipperzHtmlImporter;case"roboformcsv":return new K.RoboFormCsvImporter;case"ascendocsv":return new f.AscendoCsvImporter;case"passwordbossjson":return new G.PasswordBossJsonImporter;case"zohovaultcsv":return new X.ZohoVaultCsvImporter;case"splashidcsv":return new W.SplashIdCsvImporter;case"passkeepcsv":return new U.PassKeepCsvImporter;case"gnomejson":return new k.GnomeJsonImporter;case"passwordagentcsv":return new z.PasswordAgentCsvImporter;case"passpackcsv":return new L.PasspackCsvImporter;case"passmanjson":return new F.PassmanJsonImporter;case"avastcsv":return new v.AvastCsvImporter;case"fsecurefsk":return new I.FSecureFskImporter;case"kasperskytxt":return new A.KasperskyTxtImporter;case"remembearcsv":return new B.RememBearCsvImporter;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,r,o,f;return u(this,function(u){switch(u.label){case 0:if(null!=l)return[3,10];e=new d.ImportCiphersRequest,o=0,u.label=1;case 1:return o2&&n.length%2==0)for(var u=0;u-1?t.login.password=l.getValueOrDefault(r):null==t.login.username&&l.usernameFieldNames.indexOf(i)>-1?t.login.username=l.getValueOrDefault(r):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(i)>-1?t.login.uris=l.makeUriArray(r):l.processKvp(t,o,r)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.AscendoCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name),t.login.uris=l.makeUriArray(n.web),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.login),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.AvastCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.AviraCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(135),a=e(147),s=e(195),d=e(145),c=e(89),p=e(38),f=e(194),v=e(108),h=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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;uo+2&&(h.value=u[r].substr(o+2)),t.fields.push(h)}}switch(null!=n.type?n.type.toLowerCase():null){case"note":t.type=p.CipherType.SecureNote,t.secureNote=new c.SecureNoteView,t.secureNote.type=v.SecureNoteType.Generic;break;default:t.type=p.CipherType.Login,t.login=new d.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}(r.BaseImporter);l.BitwardenCsvImporter=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(643),a=e(644),s=e(645),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||null==t.items||0===t.items.length)return e.success=!1,e;var u=new Map;return this.organization&&null!=t.collections?t.collections.forEach(function(n){var l=a.CollectionWithId.toView(n);null!=l&&(l.id=null,l.organizationId=null,u.set(n.id,e.collections.length),e.collections.push(l))}):this.organization||null==t.folders||t.folders.forEach(function(n){var l=s.FolderWithId.toView(n);null!=l&&(l.id=null,u.set(n.id,e.folders.length),e.folders.push(l))}),t.items.forEach(function(n){var t=i.CipherWithIds.toView(n);t.id=null,t.folderId=null,t.organizationId=null,t.collectionIds=null,!l.organization&&null!=n.folderId&&u.has(n.folderId)?e.folderRelationships.push([e.ciphers.length,u.get(n.folderId)]):l.organization&&null!=n.collectionIds&&n.collectionIds.forEach(function(n){u.has(n)&&e.collectionRelationships.push([e.ciphers.length,u.get(n)])}),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e},l}(r.BaseImporter);l.BitwardenJsonImporter=d},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.BlurCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.ChromeCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=n.currentVersion.fields[u];switch(null!=r.actionType?r.actionType.toLowerCase():null){case"password":t.login.password=l.getValueOrDefault(r.value);break;case"email":case"username":case"user":case"name":t.login.username=l.getValueOrDefault(r.value);break;case"url":t.login.uris=l.makeUriArray(r.value);break;default:var o=null!=r.label?r.label.toLowerCase():null;null==t.login.password&&l.passwordFieldNames.indexOf(o)>-1?t.login.password=l.getValueOrDefault(r.value):null==t.login.username&&l.usernameFieldNames.indexOf(o)>-1?t.login.username=l.getValueOrDefault(r.value):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(o)>-1?t.login.uris=l.makeUriArray(r.value):l.processKvp(t,r.label,r.value)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.ClipperzHtmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(135),s=e(170),d=e(89),c=e(38),p=e(108),f=new Set(["ADDRESS","AUTHENTIFIANT","BANKSTATEMENT","IDCARD","IDENTITY","PAYMENTMEANS_CREDITCARD","PAYMENTMEAN_PAYPAL","EMAIL"]),v=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){this.result=new o.ImportResult;var l=JSON.parse(n);if(null==l||0===l.length)return this.result.success=!1,this.result;for(var e in null!=l.ADDRESS&&this.processAddress(l.ADDRESS),null!=l.AUTHENTIFIANT&&this.processAuth(l.AUTHENTIFIANT),null!=l.BANKSTATEMENT&&this.processNote(l.BANKSTATEMENT,"BankAccountName"),null!=l.IDCARD&&this.processNote(l.IDCARD,"Fullname"),null!=l.PAYMENTMEANS_CREDITCARD&&this.processCard(l.PAYMENTMEANS_CREDITCARD),null!=l.IDENTITY&&this.processIdentity(l.IDENTITY),l)l.hasOwnProperty(e)&&!f.has(e)&&this.processNote(l[e],null,"Generic Note");return this.result.success=!0,this.result},l.prototype.processAuth=function(n){var l=this;n.forEach(function(n){var e=l.initLoginCipher();e.name=l.getValueOrDefault(n.title),e.login.username=l.getValueOrDefault(n.login,l.getValueOrDefault(n.secondaryLogin)),l.isNullOrWhitespace(e.login.username)?e.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(e.notes="Email: "+n.email+"\n"),e.login.password=l.getValueOrDefault(n.password),e.login.uris=l.makeUriArray(n.domain),e.notes+=l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(e),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processIdentity=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.identity=new s.IdentityView,e.type=c.CipherType.Identity,e.name=l.getValueOrDefault(n.fullName,"");var t=e.name.split(" ");t.length>0&&(e.identity.firstName=l.getValueOrDefault(t[0])),2===t.length?e.identity.lastName=l.getValueOrDefault(t[1]):3===t.length&&(e.identity.middleName=l.getValueOrDefault(t[1]),e.identity.lastName=l.getValueOrDefault(t[2])),e.identity.username=l.getValueOrDefault(n.pseudo),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processAddress=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.identity=new s.IdentityView,e.type=c.CipherType.Identity,e.name=l.getValueOrDefault(n.addressName),e.identity.address1=l.getValueOrDefault(n.addressFull),e.identity.city=l.getValueOrDefault(n.city),e.identity.state=l.getValueOrDefault(n.state),e.identity.postalCode=l.getValueOrDefault(n.zipcode),e.identity.country=l.getValueOrDefault(n.country),null!=e.identity.country&&(e.identity.country=e.identity.country.toUpperCase()),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processCard=function(n){var l=this;n.forEach(function(n){var e=new a.CipherView;e.card=new i.CardView,e.type=c.CipherType.Card,e.name=l.getValueOrDefault(n.bank),e.card.number=l.getValueOrDefault(n.cardNumber),e.card.brand=l.getCardBrand(e.card.number),e.card.cardholderName=l.getValueOrDefault(n.owner),l.isNullOrWhitespace(e.card.brand)||(l.isNullOrWhitespace(e.name)?e.name=e.card.brand:e.name+=" - "+e.card.brand),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processNote=function(n,l,e){var t=this;void 0===e&&(e=null),n.forEach(function(n){var u=new a.CipherView;for(var r in u.secureNote=new d.SecureNoteView,u.type=c.CipherType.SecureNote,u.secureNote.type=p.SecureNoteType.Generic,u.name=null!=e?e:t.getValueOrDefault(n[l]),n)n.hasOwnProperty(r)&&r!==l&&t.processKvp(u,r,n[r].toString());t.cleanupCipher(u),t.result.ciphers.push(u)})},l}(r.BaseImporter);l.DashlaneJsonImporter=v},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(108),s=e(88),d=e(89),c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=!0;return t.forEach(function(n){if(n.length<2||u&&("Title"===n[0]||"title"===n[0]))u=!1;else{var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[n.length-1]),t.name=l.getValueOrDefault(n[0],"--"),2!==n.length&&(l.containsField(n,"username")||l.containsField(n,"password")||l.containsField(n,"email")||l.containsField(n,"url"))||(t.type=i.CipherType.SecureNote,t.secureNote=new d.SecureNoteView,t.secureNote.type=a.SecureNoteType.Generic),l.containsField(n,"cardholder")&&l.containsField(n,"number")&&l.containsField(n,"expiry date")&&(t.type=i.CipherType.Card,t.card=new s.CardView),n.length>2&&n.length%2==0)for(var r=0;r0},l}(r.BaseImporter);l.EnpassCsvImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||null==t.items||0===t.items.length?(e.success=!1,e):(t.items.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title),t.favorite=n.favorite>0,null!=n.template_type&&null!=n.fields&&n.fields.length>0&&(0===n.template_type.indexOf("login.")||0===n.template_type.indexOf("password.")?l.processLogin(t,n.fields):0===n.template_type.indexOf("creditcard.")?l.processCard(t,n.fields):n.template_type.indexOf("identity.")<0&&n.fields.some(function(n){return"password"===n.type&&!l.isNullOrWhitespace(n.value)})?l.processLogin(t,n.fields):l.processNote(t,n.fields)),t.notes+="\n"+l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l.prototype.processLogin=function(n,l){var e=this,t=[];l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||("username"!==l.type&&"email"!==l.type||!e.isNullOrWhitespace(n.login.username)?"password"===l.type&&e.isNullOrWhitespace(n.login.password)?n.login.password=l.value:"totp"===l.type&&e.isNullOrWhitespace(n.login.totp)?n.login.totp=l.value:"url"===l.type?t.push(l.value):e.processKvp(n,l.label,l.value):n.login.username=l.value)}),n.login.uris=this.makeUriArray(t)},l.prototype.processCard=function(n,l){var e=this;n.card=new i.CardView,n.type=a.CipherType.Card,l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||"ccType"===l.type||("ccName"===l.type&&e.isNullOrWhitespace(n.card.cardholderName)?n.card.cardholderName=l.value:"ccNumber"===l.type&&e.isNullOrWhitespace(n.card.number)?(n.card.number=l.value,n.card.brand=e.getCardBrand(n.card.number)):"ccCvc"===l.type&&e.isNullOrWhitespace(n.card.code)?n.card.code=l.value:"ccExpiry"===l.type&&e.isNullOrWhitespace(n.card.expYear)&&e.setCardExpiration(n,l.value)||e.processKvp(n,l.label,l.value))})},l.prototype.processNote=function(n,l){var e=this;l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||e.processKvp(n,l.label,l.value)})},l}(r.BaseImporter);l.EnpassJsonImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.FirefoxCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=new o.ImportResult,e=JSON.parse(n);if(null==e||null==e.data)return l.success=!1,l;for(var t in e.data)if(e.data.hasOwnProperty(t)){var u=e.data[t],r=this.initLoginCipher();if(r.name=this.getValueOrDefault(u.service),r.notes=this.getValueOrDefault(u.notes),"website"===u.style)r.login.username=this.getValueOrDefault(u.username),r.login.password=this.getValueOrDefault(u.password),r.login.uris=this.makeUriArray(u.url);else{if("creditcard"!==u.style)continue;r.type=a.CipherType.Card,r.card=new i.CardView,r.card.cardholderName=this.getValueOrDefault(u.username),r.card.number=this.getValueOrDefault(u.creditNumber),r.card.brand=this.getCardBrand(r.card.number),r.card.code=this.getValueOrDefault(u.creditCvv),this.isNullOrWhitespace(u.creditExpiry)||this.setCardExpiration(r,u.creditExpiry)||this.processKvp(r,"Expiration",u.creditExpiry),this.isNullOrWhitespace(u.password)||this.processKvp(r,"PIN",u.password)}this.convertToNoteIfNeeded(r),this.cleanupCipher(r),l.ciphers.push(r)}return l.success=!0,l},l}(r.BaseImporter);l.FSecureFskImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r in u.login.username=null!=t.attributes?l.getValueOrDefault(t.attributes.username_value):null,t.attributes)t.attributes.hasOwnProperty(r)&&"username_value"!==r&&"xdg:schema"!==r&&l.processKvp(u,r,t.attributes[r]);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}(r.BaseImporter);l.GnomeJsonImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l,e,t,u,r=this,i=new o.ImportResult,a=this.splitNewLine(n).join("\n");-1!==a.indexOf("Notes\n\n")&&((u=a.split("Notes\n\n")).length>1&&(a=u[0],l=u[1]));-1!==a.indexOf("Applications\n\n")&&((u=a.split("Applications\n\n")).length>1&&(a=u[0],e=u[1]));0===a.indexOf("Websites\n\n")&&((u=a.split("Websites\n\n")).length>1&&(a=u[0],t=u[1]));var s=this.parseDataCategory(l),d=this.parseDataCategory(e),c=this.parseDataCategory(t);return s.forEach(function(n){var l=r.initLoginCipher();l.name=r.getValueOrDefault(n.get("Name")),l.notes=r.getValueOrDefault(n.get("Text")),r.cleanupCipher(l),i.ciphers.push(l)}),c.concat(d).forEach(function(n){var l=r.initLoginCipher(),e=n.has("Website name")?"Website name":"Application";l.name=r.getValueOrDefault(n.get(e),""),r.isNullOrWhitespace(n.get("Login name"))||(r.isNullOrWhitespace(l.name)||(l.name+=": "),l.name+=n.get("Login name")),l.notes=r.getValueOrDefault(n.get("Comment")),n.has("Website URL")&&(l.login.uris=r.makeUriArray(n.get("Website URL"))),l.login.username=r.getValueOrDefault(n.get("Login")),l.login.password=r.getValueOrDefault(n.get("Password")),r.cleanupCipher(l),i.ciphers.push(l)}),i.success=!0,i},l.prototype.parseDataCategory=function(n){if(this.isNullOrWhitespace(n)||-1===n.indexOf("\n---\n"))return[];var l=[];return n.split("\n---\n").forEach(function(n){if(-1!==n.indexOf("\n")){var e,t,u=new Map;n.split("\n").forEach(function(n){if(null==e){var l,r,o=n.indexOf(":");-1!==o&&(l=n.substring(0,o),n.length>o+1&&(r=n.substring(o+2)),null!=l&&u.set(l,r),"Comment"!==l&&"Text"!==l||(e=r,t=l))}else e+="\n"+n}),null!=e&&null!=t&&u.set(t,e),0!==u.size&&l.push(u)}}),l},l}(r.BaseImporter);l.KasperskyTxtImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(146),a=function(n){function l(){var l=null!==n&&n.apply(this,arguments)||this;return l.result=new o.ImportResult,l}return u(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,r=e;if(!l){""!==r&&(r+="/");var o=this.querySelectorDirectChild(n,"Name");r+=null==o?"-":o.textContent;var a=new i.FolderView;a.name=r,this.result.folders.push(a)}this.querySelectorAllDirectChild(n,"Entry").forEach(function(n){var e=t.result.ciphers.length,r=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"),o=null!=u?u.textContent:null;"URL"===o?r.login.uris=t.makeUriArray(e):"UserName"===o?r.login.username=e:"Password"===o?r.login.password=e:"Title"===o?r.name=e:"Notes"===o?r.notes+=e+"\n":t.processKvp(r,o,e)}}),t.cleanupCipher(r),t.result.ciphers.push(r),l||t.result.folderRelationships.push([e,u])}),this.querySelectorAllDirectChild(n,"Group").forEach(function(n){t.traverse(n,!1,r)})},l}(r.BaseImporter);l.KeePass2XmlImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.KeePassXCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 d.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 r=this.parseSecureNoteMapping(e,{Number:"number","Name on Card":"cardholderName","Security Code":"code"});l.type=f.CipherType.Card,l.card=r[0],l.notes=r[1]}else if("Address"===u[1]){r=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=f.CipherType.Identity,l.identity=r[0],l.notes=r[1]}t=!0}}t||(l.secureNote=new p.SecureNoteView,l.secureNote.type=v.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){if(!e.isNullOrWhitespace(n)){var r=null,o=null,i=n.indexOf(":");-1===i?r=n:(r=n.substring(0,i),n.length>i&&(o=n.substring(i+1))),e.isNullOrWhitespace(r)||e.isNullOrWhitespace(o)||"NoteType"===r||("Notes"===r?e.isNullOrWhitespace(t)?t=o:t+="\n"+o:l.hasOwnProperty(r)?u[l[r]]=o:(e.isNullOrWhitespace(t)?t="":t+="\n",t+=r+": "+o))}}),[u,t]},l}(r.BaseImporter);l.LastPassCsvImporter=h},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.MeldiumCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(108),s=e(89),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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=i.CipherType.SecureNote,u.secureNote=new s.SecureNoteView,u.secureNote.type=a.SecureNoteType.Generic;for(var r=3;r0&&(l.login.uris=this.makeUriArray(t))}null!=n.secureContents.fields&&this.parseFields(n.secureContents.fields,l,"designation","value","name"),null!=n.secureContents.sections&&n.secureContents.sections.forEach(function(n){null!=n.fields&&e.parseFields(n.fields,l,"n","v","t")})}},l.prototype.parseFields=function(n,l,e,t,u){var r=this;n.forEach(function(n){if(null!=n[t]&&""!==n[t].toString().trim()){var o=n[t].toString(),i=null!=n[e]?n[e].toString():null;if(l.type===s.CipherType.Login){if(r.isNullOrWhitespace(l.login.username)&&"username"===i)return void(l.login.username=o);if(r.isNullOrWhitespace(l.login.password)&&"password"===i)return void(l.login.password=o);if(r.isNullOrWhitespace(l.login.totp)&&null!=i&&i.startsWith("TOTP_"))return void(l.login.totp=o)}else if(l.type===s.CipherType.Card){if(r.isNullOrWhitespace(l.card.number)&&"ccnum"===i)return l.card.number=o,void(l.card.brand=r.getCardBrand(o));if(r.isNullOrWhitespace(l.card.code)&&"cvv"===i)return void(l.card.code=o);if(r.isNullOrWhitespace(l.card.cardholderName)&&"cardholder"===i)return void(l.card.cardholderName=o);if(r.isNullOrWhitespace(l.card.expiration)&&"expiry"===i&&6===o.length)return l.card.expMonth=o.substr(4,2),"0"===l.card.expMonth[0]&&(l.card.expMonth=l.card.expMonth.substr(1,1)),void(l.card.expYear=o.substr(0,4));if("type"===i)return}var a=r.isNullOrWhitespace(n[u])?"no_name":n[u];r.processKvp(l,a,o)}})},l}(r.BaseImporter);l.OnePassword1PifImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(38),a=e(1026),s=["ainfo","autosubmit","notesPlain","ps","scope","tags","title","uuid"],d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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)){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title,"--"),t.notes=l.getValueOrDefault(n.notesPlain,"")+"\n",l.isNullOrWhitespace(n.number)||l.isNullOrWhitespace(n["expiry date"])||(t.type=i.CipherType.Card,t.card=new a.CardView);var u=null;for(var r in n)if(n.hasOwnProperty(r)&&!l.isNullOrWhitespace(n[r])){if(t.type===i.CipherType.Login){if(l.isNullOrWhitespace(t.login.password)&&"password"===r){t.login.password=n[r];continue}if(l.isNullOrWhitespace(t.login.username)&&"username"===r){t.login.username=n[r];continue}if((null==t.login.uris||0===t.login.uri.length)&&"urls"===r){var o=n[r].split(l.newLineRegex);t.login.uris=l.makeUriArray(o);continue}}else if(t.type===i.CipherType.Card){if(l.isNullOrWhitespace(t.card.number)&&"number"===r){t.card.number=n[r],t.card.brand=l.getCardBrand(n.number);continue}if(l.isNullOrWhitespace(t.card.code)&&"verification number"===r){t.card.code=n[r];continue}if(l.isNullOrWhitespace(t.card.cardholderName)&&"cardholder name"===r){t.card.cardholderName=n[r];continue}if(l.isNullOrWhitespace(t.card.expiration)&&"expiry date"===r&&6===n[r].length){t.card.expMonth=n[r].substr(4,2),"0"===t.card.expMonth[0]&&(t.card.expMonth=t.card.expMonth.substr(1,1)),t.card.expYear=n[r].substr(0,4);continue}if("type"===r)continue}-1!==s.indexOf(r)||r.startsWith("section:")||(null==u&&"email"===r&&(u=n[r]),l.processKvp(t,r,n[r]))}t.type===i.CipherType.Login&&!l.isNullOrWhitespace(u)&&l.isNullOrWhitespace(t.login.username)&&-1===u.indexOf("://")&&(t.login.username=u),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.OnePasswordWinCsvImporter=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(583);l.AttachmentView=t.AttachmentView;var u=e(88);l.CardView=u.CardView;var r=e(135);l.CipherView=r.CipherView;var o=e(195);l.FieldView=o.FieldView;var i=e(170);l.IdentityView=i.IdentityView;var a=e(234);l.LoginUriView=a.LoginUriView;var s=e(145);l.LoginView=s.LoginView;var d=e(89);l.SecureNoteView=d.SecureNoteView;var c=e(1027);l.View=c.View},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.View=t},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(147),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=null;return t.forEach(function(n){if(null!=u){if(!(n.length<2||n.length!==u.length)){if(!l.isNullOrWhitespace(n[1]))if(l.organization){(t=n[1].split(",")).forEach(function(n){n=n.trim();for(var l=!0,t=e.collections.length,u=0;u0?t[0].trim():null;l.processFolder(e,r)}var o=l.initLoginCipher();o.name=l.getValueOrDefault(n[0],"--");for(var a=2;a-1?o.login.username=n[a]:l.passwordFieldNames.indexOf(s)>-1?o.login.password=n[a]:l.uriFieldNames.indexOf(s)>-1?o.login.uris=l.makeUriArray(n[a]):l.processKvp(o,u[a],n[a]))}l.cleanupCipher(o),e.ciphers.push(o)}}else u=n.map(function(n){return n})}),e.success=!0,e},l}(r.BaseImporter);l.PadlockCsvImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PassKeepCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PassmanJsonImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(147),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.initLoginCipher();r.notes=l.getValueOrDefault(n.Notes,""),r.notes+="\n\n"+l.getValueOrDefault(n["Shared Notes"],"")+"\n",r.name=l.getValueOrDefault(n["Entry Name"],"--"),r.login.username=l.getValueOrDefault(n["User ID"]),r.login.password=l.getValueOrDefault(n.Password),r.login.uris=l.makeUriArray(n.URL),null!=n.__parsed_extra&&n.__parsed_extra.length>0&&n.__parsed_extra.forEach(function(n){l.isNullOrWhitespace(n)||(r.notes+="\n"+n)});var o=l.isNullOrWhitespace(n["Extra Fields"])?null:JSON.parse(n["Extra Fields"]),a=null!=o&&null!=o.extraFields&&o.extraFields.length>0?o.extraFields.map(function(n){try{return JSON.parse(n)}catch(n){}return null}):null;null!=a&&a.forEach(function(n){null!=n&&l.processKvp(r,n.name,n.data)}),l.cleanupCipher(r),e.ciphers.push(r)}),e.success=!0,e)},l}(r.BaseImporter);l.PasspackCsvImporter=a},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.initLoginCipher();r.notes=l.getValueOrDefault(n[3]),r.name=l.getValueOrDefault(n[0],"--"),r.login.username=l.getValueOrDefault(n[1]),r.login.password=l.getValueOrDefault(n[2]),r.login.uris=l.makeUriArray(n[4]),l.convertToNoteIfNeeded(r),l.cleanupCipher(r),e.ciphers.push(r)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(r.BaseImporter);l.PasswordAgentCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(38),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 i.CardView,t.type=a.CipherType.Card),n.identifiers)if(n.identifiers.hasOwnProperty(u)){var r=n.identifiers[u],o=null!=r?r.toString():null;if(!l.isNullOrWhitespace(o)&&"notes"!==u&&"ignoreItemInSecurityScore"!==u){if(t.type===a.CipherType.Card){if("cardNumber"===u){t.card.number=o,t.card.brand=l.getCardBrand(o);continue}if("nameOnCard"===u){t.card.cardholderName=o;continue}if("security_code"===u){t.card.code=o;continue}if("expires"===u){try{var s=new Date(o);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=o;continue}if("password"===u){t.login.password=o;continue}if((null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(u)>-1){t.login.uris=l.makeUriArray(o);continue}}l.processKvp(t,u,o)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.PasswordBossJsonImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=l.querySelectorDirectChild(n,"Account-Name"),o=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!=r?l.getValueOrDefault(r.textContent,"--"):"--",d.notes=null!=s?l.getValueOrDefault(s.textContent):"",d.login.username=null!=o?l.getValueOrDefault(o.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}(r.BaseImporter);l.PasswordDragonXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.PasswordSafeXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(38),i=e(29),a=e(88),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(l,n),l.prototype.parse=function(n){var l=this,e=new i.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if("true"!==n.trash){var t=l.initLoginCipher();if(t.name=l.getValueOrDefault(n.name),t.notes=l.getValueOrDefault(n.notes),"LoginItem"===n.type)t.login.uris=l.makeUriArray(n.website),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.username);else if("CreditCardItem"===n.type){t.type=o.CipherType.Card,t.card=new a.CardView,t.card.cardholderName=l.getValueOrDefault(n.cardholder),t.card.number=l.getValueOrDefault(n.number),t.card.brand=l.getCardBrand(t.card.number),t.card.code=l.getValueOrDefault(n.verification);try{var u=l.getValueOrDefault(n.expiryMonth);if(null!=u){var r=parseInt(u,null);null!=r&&r>=1&&r<=12&&(t.card.expMonth=r.toString())}}catch(n){}try{var i=l.getValueOrDefault(n.expiryYear);if(null!=i){var s=parseInt(i,null);null!=s&&(t.card.expYear=s.toString())}}catch(n){}var d=l.getValueOrDefault(n.pin);null!=d&&l.processKvp(t,"PIN",d);var c=l.getValueOrDefault(n.zipCode);null!=c&&l.processKvp(t,"Zip Code",c)}l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(r.BaseImporter);l.RememBearCsvImporter=s},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=!l.isNullOrWhitespace(n.Folder)&&n.Folder.startsWith("/")?n.Folder.replace("/",""):n.Folder,o=l.isNullOrWhitespace(r)?null:r;l.processFolder(e,o);var i=l.initLoginCipher();if(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.isNullOrWhitespace(n.Rf_fields)){var a=[n.Rf_fields];null!=n.__parsed_extra&&n.__parsed_extra.length>0&&(a=a.concat(n.__parsed_extra)),a.forEach(function(n){var e=n.split(":");if(!(e.length<3)){var t="-no-name-"===e[0]?null:e[0],u=4===e.length&&"rck"===e[2]?e[1]:e[2];l.processKvp(i,t,u)}})}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}(r.BaseImporter);l.RoboFormCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(146),a=e(89),s=e(38),d=e(108),c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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"),r=n.getAttribute("id");if(!l.isNullOrWhitespace(t)&&!l.isNullOrWhitespace(r)){u.set(r,e.folders.length);var o=new i.FolderView;o.name=t,e.folders.push(o)}}),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 r=t.textContent;!l.isNullOrWhitespace(r)&&u.has(r)&&e.folderRelationships.push([e.ciphers.length,u.get(r)])}var o=l.initLoginCipher();o.name=l.getValueOrDefault(n.getAttribute("title"),"--"),"note"===n.getAttribute("type")?(o.type=s.CipherType.SecureNote,o.secureNote=new a.SecureNoteView,o.secureNote.type=d.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?o.login.username=e:"password"===u?o.login.password=e:"notes"===u?o.notes+=e+"\n":"weblogin"===u||"website"===u?o.login.uris=l.makeUriArray(e):l.processKvp(o,t,e)}}),Array.from(l.querySelectorAllDirectChild(n,"notes")).forEach(function(n){o.notes+=n.textContent+"\n"}),l.cleanupCipher(o),e.ciphers.push(o)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(r.BaseImporter);l.SafeInCloudXmlImporter=c},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.SaferPassCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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 r=n.getAttribute("Name"),o=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(r),v.login.password=l.getValueOrDefault(o),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}(r.BaseImporter);l.StickyPasswordXmlImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=e(88),a=e(89),s=e(38),d=e(108),c=["kind","autologin","favorite","hexcolor","protectedwithpassword","subdomainonly","type","tk_export_version","note","title","document_content"],p=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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=s.CipherType.Card,t.card=new i.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 r in t.type=s.CipherType.SecureNote,t.secureNote=new a.SecureNoteView,t.secureNote.type=d.SecureNoteType.Generic,l.isNullOrWhitespace(t.notes)||(t.notes=l.getValueOrDefault(n.document_content,"")),n)n.hasOwnProperty(r)&&c.indexOf(r.toLowerCase())<0&&!l.isNullOrWhitespace(n[r])&&l.processKvp(t,r,n[r]);l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(r.BaseImporter);l.TrueKeyCsvImporter=p},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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}(r.BaseImporter);l.UpmCsvImporter=i},function(n,l,e){"use strict";var t,u=this&&this.__extends||(t=function(n,l){return(t=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])})(n,l)},function(n,l){function e(){this.constructor=n}t(n,l),n.prototype=null===l?Object.create(l):(e.prototype=l.prototype,new e)});Object.defineProperty(l,"__esModule",{value:!0});var r=e(28),o=e(29),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return u(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),r=l.length>t?l.substring(t+1):null;if(!e.isNullOrWhitespace(u)&&!e.isNullOrWhitespace(r)&&"SecretType"!==u){var o=u.toLowerCase();null==n.login.username&&e.usernameFieldNames.indexOf(o)>-1?n.login.username=r:null==n.login.password&&e.passwordFieldNames.indexOf(o)>-1?n.login.password=r:e.processKvp(n,u,r)}}})},l}(r.BaseImporter);l.ZohoVaultCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[1]0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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 r.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===o.CipherType.Card?n.subTitle.replace(/\*/g,""):n.subTitle}}),n.field("notes"),n.field("login.username",{extractor:function(n){return n.type===o.CipherType.Login&&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,o,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==(o=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=o.search(n.substr(1).trim())}catch(n){}else s=r.Query.wildcard.LEADING|r.Query.wildcard.TRAILING,a=o.query(function(l){r.tokenizer(n).forEach(function(n){var e=n.toString();l.term(e,{fields:["name"],wildcard:s}),l.term(e,{fields:["subtitle"],wildcard:s}),l.term(e,{fields:["login.uris"],wildcard:s}),l.term(e,{})})});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(n.type!==o.CipherType.Login||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,r){function o(n){try{a(t.next(n))}catch(n){r(n)}}function i(n){try{a(t.throw(n))}catch(n){r(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(o,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,r,o={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return r={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function i(r){return function(i){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;o;)try{if(e=1,t&&(u=2&r[0]?t.return:r[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,r[1])).done)return u;switch(t=0,u&&(r=[2&r[0],u.value]),r[0]){case 0:case 1:u=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,t=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(u=(u=o.trys).length>0&&u[u.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!u||r[1]>u[0]&&r[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=r.pbkdf2(a,s,i,t,e),[2,o.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?r.md.md5.create():r.md.sha1.create(),t=this.toByteString(n),e.update(t,"raw"),[2,o.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=r.hmac.create(),i=this.toByteString(l),a=this.toByteString(n),t.start(e,i),t.update(a,"raw"),[2,o.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,r,o,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 r=u.sent(),[4,this.subtle.sign(t,r,n)];case 3:return o=u.sent(),[4,this.subtle.sign(t,r,l)];case 4:if(i=u.sent(),o.byteLength!==i.byteLength)return[2,!1];for(a=new Uint8Array(o),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';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\nimport { EmailRequest } from '../models/request/emailRequest';\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { GroupRequest } from '../models/request/groupRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KdfRequest } from '../models/request/kdfRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\nimport { PasswordRequest } from '../models/request/passwordRequest';\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\nimport { PaymentRequest } from '../models/request/paymentRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { RegisterRequest } from '../models/request/registerRequest';\nimport { SeatRequest } from '../models/request/seatRequest';\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\nimport { StorageRequest } from '../models/request/storageRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\n\nimport { BillingResponse } from '../models/response/billingResponse';\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport {\n CollectionGroupDetailsResponse,\n CollectionResponse,\n} from '../models/response/collectionResponse';\nimport { DomainsResponse } from '../models/response/domainsResponse';\nimport { EventResponse } from '../models/response/eventResponse';\nimport { FolderResponse } from '../models/response/folderResponse';\nimport {\n GroupDetailsResponse,\n GroupResponse,\n} from '../models/response/groupResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\nimport { ListResponse } from '../models/response/listResponse';\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\nimport { OrganizationResponse } from '../models/response/organizationResponse';\nimport {\n OrganizationUserDetailsResponse,\n OrganizationUserUserDetailsResponse,\n} from '../models/response/organizationUserResponse';\nimport { PreloginResponse } from '../models/response/preloginResponse';\nimport { ProfileResponse } from '../models/response/profileResponse';\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\nimport { SyncResponse } from '../models/response/syncResponse';\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from '../models/response/twoFactorU2fResponse';\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\n\nexport abstract class ApiService {\n urlsSet: boolean;\n apiBaseUrl: string;\n identityBaseUrl: string;\n\n setUrls: (urls: EnvironmentUrls) => void;\n postIdentityToken: (request: TokenRequest) => Promise;\n refreshIdentityToken: () => Promise;\n\n getProfile: () => Promise;\n getUserBilling: () => Promise;\n putProfile: (request: UpdateProfileRequest) => Promise;\n postPrelogin: (request: PreloginRequest) => Promise;\n postEmailToken: (request: EmailTokenRequest) => Promise;\n postEmail: (request: EmailRequest) => Promise;\n postPassword: (request: PasswordRequest) => Promise;\n postSecurityStamp: (request: PasswordVerificationRequest) => Promise;\n deleteAccount: (request: PasswordVerificationRequest) => Promise;\n getAccountRevisionDate: () => Promise;\n postPasswordHint: (request: PasswordHintRequest) => Promise;\n postRegister: (request: RegisterRequest) => Promise;\n postPremium: (data: FormData) => Promise;\n postReinstatePremium: () => Promise;\n postCancelPremium: () => Promise;\n postAccountStorage: (request: StorageRequest) => Promise;\n postAccountPayment: (request: PaymentRequest) => Promise;\n postAccountLicense: (data: FormData) => Promise;\n postAccountKey: (request: UpdateKeyRequest) => Promise;\n postAccountKeys: (request: KeysRequest) => Promise;\n postAccountVerifyEmail: () => Promise;\n postAccountVerifyEmailToken: (request: VerifyEmailRequest) => Promise;\n postAccountRecoverDelete: (request: DeleteRecoverRequest) => Promise;\n postAccountRecoverDeleteToken: (request: VerifyDeleteRecoverRequest) => Promise;\n postAccountKdf: (request: KdfRequest) => Promise;\n\n getFolder: (id: string) => Promise;\n postFolder: (request: FolderRequest) => Promise;\n putFolder: (id: string, request: FolderRequest) => Promise;\n deleteFolder: (id: string) => Promise;\n\n getCipher: (id: string) => Promise;\n getCipherAdmin: (id: string) => Promise;\n getCiphersOrganization: (organizationId: string) => Promise>;\n postCipher: (request: CipherRequest) => Promise;\n postCipherCreate: (request: CipherCreateRequest) => Promise;\n postCipherAdmin: (request: CipherCreateRequest) => Promise;\n putCipher: (id: string, request: CipherRequest) => Promise;\n putCipherAdmin: (id: string, request: CipherRequest) => Promise;\n deleteCipher: (id: string) => Promise;\n deleteCipherAdmin: (id: string) => Promise;\n deleteManyCiphers: (request: CipherBulkDeleteRequest) => Promise;\n putMoveCiphers: (request: CipherBulkMoveRequest) => Promise;\n putShareCipher: (id: string, request: CipherShareRequest) => Promise;\n putShareCiphers: (request: CipherBulkShareRequest) => Promise;\n putCipherCollections: (id: string, request: CipherCollectionsRequest) => Promise;\n putCipherCollectionsAdmin: (id: string, request: CipherCollectionsRequest) => Promise;\n postPurgeCiphers: (request: PasswordVerificationRequest, organizationId?: string) => Promise;\n postImportCiphers: (request: ImportCiphersRequest) => Promise;\n postImportOrganizationCiphers: (organizationId: string, request: ImportOrganizationCiphersRequest) => Promise;\n\n postCipherAttachment: (id: string, data: FormData) => Promise;\n postCipherAttachmentAdmin: (id: string, data: FormData) => Promise;\n deleteCipherAttachment: (id: string, attachmentId: string) => Promise;\n deleteCipherAttachmentAdmin: (id: string, attachmentId: string) => Promise;\n postShareCipherAttachment: (id: string, attachmentId: string, data: FormData,\n organizationId: string) => Promise;\n\n getCollectionDetails: (organizationId: string, id: string) => Promise;\n getUserCollections: () => Promise>;\n getCollections: (organizationId: string) => Promise>;\n getCollectionUsers: (organizationId: string, id: string) => Promise;\n postCollection: (organizationId: string, request: CollectionRequest) => Promise;\n putCollectionUsers: (organizationId: string, id: string, request: SelectionReadOnlyRequest[]) => Promise;\n putCollection: (organizationId: string, id: string, request: CollectionRequest) => Promise;\n deleteCollection: (organizationId: string, id: string) => Promise;\n deleteCollectionUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\n\n getGroupDetails: (organizationId: string, id: string) => Promise;\n getGroups: (organizationId: string) => Promise>;\n getGroupUsers: (organizationId: string, id: string) => Promise;\n postGroup: (organizationId: string, request: GroupRequest) => Promise;\n putGroup: (organizationId: string, id: string, request: GroupRequest) => Promise;\n putGroupUsers: (organizationId: string, id: string, request: string[]) => Promise;\n deleteGroup: (organizationId: string, id: string) => Promise;\n deleteGroupUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\n\n getOrganizationUser: (organizationId: string, id: string) => Promise;\n getOrganizationUserGroups: (organizationId: string, id: string) => Promise;\n getOrganizationUsers: (organizationId: string) => Promise>;\n postOrganizationUserInvite: (organizationId: string, request: OrganizationUserInviteRequest) => Promise;\n postOrganizationUserReinvite: (organizationId: string, id: string) => Promise;\n postOrganizationUserAccept: (organizationId: string, id: string,\n request: OrganizationUserAcceptRequest) => Promise;\n postOrganizationUserConfirm: (organizationId: string, id: string,\n request: OrganizationUserConfirmRequest) => Promise;\n putOrganizationUser: (organizationId: string, id: string, request: OrganizationUserUpdateRequest) => Promise;\n putOrganizationUserGroups: (organizationId: string, id: string,\n request: OrganizationUserUpdateGroupsRequest) => Promise;\n deleteOrganizationUser: (organizationId: string, id: string) => Promise;\n\n getSync: () => Promise;\n postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise;\n\n getSettingsDomains: () => Promise;\n putSettingsDomains: (request: UpdateDomainsRequest) => Promise;\n\n getTwoFactorProviders: () => Promise>;\n getTwoFactorOrganizationProviders: (organizationId: string) => Promise>;\n getTwoFactorAuthenticator: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorEmail: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorDuo: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorOrganizationDuo: (organizationId: string,\n request: PasswordVerificationRequest) => Promise;\n getTwoFactorYubiKey: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorU2f: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorU2fChallenge: (request: PasswordVerificationRequest) => Promise;\n getTwoFactorRecover: (request: PasswordVerificationRequest) => Promise;\n putTwoFactorAuthenticator: (\n request: UpdateTwoFactorAuthenticatorRequest) => Promise;\n putTwoFactorEmail: (request: UpdateTwoFactorEmailRequest) => Promise;\n putTwoFactorDuo: (request: UpdateTwoFactorDuoRequest) => Promise;\n putTwoFactorOrganizationDuo: (organizationId: string,\n request: UpdateTwoFactorDuoRequest) => Promise;\n putTwoFactorYubiKey: (request: UpdateTwoFactorYubioOtpRequest) => Promise;\n putTwoFactorU2f: (request: UpdateTwoFactorU2fRequest) => Promise;\n deleteTwoFactorU2f: (request: UpdateTwoFactorU2fDeleteRequest) => Promise;\n putTwoFactorDisable: (request: TwoFactorProviderRequest) => Promise;\n putTwoFactorOrganizationDisable: (organizationId: string,\n request: TwoFactorProviderRequest) => Promise;\n postTwoFactorRecover: (request: TwoFactorRecoveryRequest) => Promise;\n postTwoFactorEmailSetup: (request: TwoFactorEmailRequest) => Promise;\n postTwoFactorEmail: (request: TwoFactorEmailRequest) => Promise;\n\n getOrganization: (id: string) => Promise;\n getOrganizationBilling: (id: string) => Promise;\n getOrganizationLicense: (id: string, installationId: string) => Promise;\n postOrganization: (request: OrganizationCreateRequest) => Promise;\n putOrganization: (id: string, request: OrganizationUpdateRequest) => Promise;\n postLeaveOrganization: (id: string) => Promise;\n postOrganizationLicense: (data: FormData) => Promise;\n postOrganizationLicenseUpdate: (id: string, data: FormData) => Promise;\n postOrganizationSeat: (id: string, request: SeatRequest) => Promise;\n postOrganizationStorage: (id: string, request: StorageRequest) => Promise;\n postOrganizationPayment: (id: string, request: PaymentRequest) => Promise;\n postOrganizationVerifyBank: (id: string, request: VerifyBankRequest) => Promise;\n postOrganizationCancel: (id: string) => Promise;\n postOrganizationReinstate: (id: string) => Promise;\n deleteOrganization: (id: string, request: PasswordVerificationRequest) => Promise;\n\n getEvents: (start: string, end: string, token: string) => Promise>;\n getEventsCipher: (id: string, start: string, end: string, token: string) => Promise>;\n getEventsOrganization: (id: string, start: string, end: string,\n token: string) => Promise>;\n getEventsOrganizationUser: (organizationId: string, id: string,\n start: string, end: string, token: string) => Promise>;\n\n getUserPublicKey: (id: string) => Promise;\n\n getHibpBreach: (username: string) => Promise;\n\n getActiveBearerToken: () => Promise;\n fetch: (request: Request) => Promise;\n}\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 { 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 { 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';\n\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { ErrorResponse } from '../../models/response/errorResponse';\n\n@Injectable()\nexport class ValidationService {\n constructor(private i18nService: I18nService, private platformUtilsService: PlatformUtilsService) { }\n\n showError(data: any): string[] {\n const defaultErrorMessage = this.i18nService.t('unexpectedError');\n let errors: string[] = [];\n\n if (data != null && typeof data === 'string') {\n errors.push(data);\n } else if (data == null || typeof data !== 'object') {\n errors.push(defaultErrorMessage);\n } else if (data.validationErrors != null) {\n errors = errors.concat((data as ErrorResponse).getAllMessages());\n } else {\n errors.push(data.message ? data.message : defaultErrorMessage);\n }\n\n if (errors.length === 1) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors[0]);\n } else if (errors.length > 1) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors, {\n timeout: 5000 * errors.length,\n });\n }\n\n return errors;\n }\n}\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\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 { CipherType } from '../enums/cipherType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Field } from '../models/domain/field';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\n\r\nexport abstract class CipherService {\r\n decryptedCipherCache: CipherView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CipherView, key?: SymmetricCryptoKey, originalCipher?: Cipher) => Promise;\r\n encryptFields: (fieldsModel: FieldView[], key: SymmetricCryptoKey) => Promise;\r\n encryptField: (fieldModel: FieldView, key: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllDecryptedForGrouping: (groupingId: string, folder?: boolean) => Promise;\r\n getAllDecryptedForUrl: (url: string, includeOtherTypes?: CipherType[]) => Promise;\r\n getAllFromApiForOrganization: (organizationId: string) => Promise;\r\n getLastUsedForUrl: (url: string) => Promise;\r\n updateLastUsedDate: (id: string) => Promise;\r\n saveNeverDomain: (domain: string) => Promise;\r\n saveWithServer: (cipher: Cipher) => Promise;\r\n shareWithServer: (cipher: CipherView, organizationId: string, collectionIds: string[]) => Promise;\r\n shareManyWithServer: (ciphers: CipherView[], organizationId: string, collectionIds: string[]) => Promise;\r\n saveAttachmentWithServer: (cipher: Cipher, unencryptedFile: any, admin?: boolean) => Promise;\r\n saveAttachmentRawWithServer: (cipher: Cipher, filename: string, data: ArrayBuffer,\r\n admin?: boolean) => Promise;\r\n saveCollectionsWithServer: (cipher: Cipher) => Promise;\r\n upsert: (cipher: CipherData | CipherData[]) => Promise;\r\n replace: (ciphers: { [id: string]: CipherData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n moveManyWithServer: (ids: string[], folderId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n deleteManyWithServer: (ids: string[]) => Promise;\r\n deleteAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteAttachmentWithServer: (id: string, attachmentId: string) => Promise;\r\n sortCiphersByLastUsed: (a: any, b: any) => number;\r\n sortCiphersByLastUsedThenName: (a: any, b: any) => number;\r\n getLocaleSortingFunction: () => (a: CipherView, b: CipherView) => number;\r\n}\r\n","import { 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 clearPinProtectedKey: () => 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 makePinKey: (pin: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\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) => 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","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 Utils.isNullOrWhitespace(str);\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 setCardExpiration(cipher: CipherView, expiration: string): boolean {\r\n if (!this.isNullOrWhitespace(expiration)) {\r\n const parts = expiration.split('/');\r\n if (parts.length === 2) {\r\n let month: string = null;\r\n let year: string = null;\r\n if (parts[0].length === 1 || parts[0].length === 2) {\r\n month = parts[0];\r\n if (month.length === 2 && month[0] === '0') {\r\n month = month.substr(1, 1);\r\n }\r\n }\r\n if (parts[1].length === 2 || parts[1].length === 4) {\r\n year = month.length === 2 ? '20' + parts[1] : parts[1];\r\n }\r\n if (month != null && year != null) {\r\n cipher.card.expMonth = month;\r\n cipher.card.expYear = year;\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\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","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","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","
\r\n

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

\r\n \r\n
\r\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 static tldEndingRegex = /.*\\.(com|net|org|edu|uk|gov|ca|de|jp|fr|au|ru|ch|io|es|us|co|xyz|info|ly|mil)$/;\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 let httpUrl = uriString.startsWith('http://') || uriString.startsWith('https://');\r\n if (!httpUrl && uriString.indexOf('://') < 0 && Utils.tldEndingRegex.test(uriString)) {\r\n uriString = 'http://' + uriString;\r\n httpUrl = true;\r\n }\r\n\r\n if (httpUrl) {\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 static isNullOrWhitespace(str: string): boolean {\r\n return str == null || typeof str !== 'string' || str.trim() === '';\r\n }\r\n\r\n private static validIpAddress(ipString: string): boolean {\r\n // tslint:disable-next-line\r\n const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;\r\n return ipRegex.test(ipString);\r\n }\r\n\r\n private static isMobile(win: Window) {\r\n let mobile = false;\r\n ((a) => {\r\n // tslint:disable-next-line\r\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) {\r\n mobile = true;\r\n }\r\n })(win.navigator.userAgent || win.navigator.vendor || (win as any).opera);\r\n return mobile || win.navigator.userAgent.match(/iPad/i) != null;\r\n }\r\n\r\n private static getUrl(uriString: string): URL {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n const hasProtocol = uriString.indexOf('://') > -1;\r\n if (!hasProtocol && uriString.indexOf('.') > -1) {\r\n uriString = 'http://' + uriString;\r\n } else if (!hasProtocol) {\r\n return null;\r\n }\r\n\r\n return Utils.getUrlObject(uriString);\r\n }\r\n\r\n private static getUrlObject(uriString: string): URL {\r\n try {\r\n if (nodeURL != null) {\r\n return nodeURL.URL ? new nodeURL.URL(uriString) : nodeURL.parse(uriString);\r\n } else if (typeof URL === 'function') {\r\n return new URL(uriString);\r\n } else if (window != null) {\r\n const anchor = window.document.createElement('a');\r\n anchor.href = uriString;\r\n return anchor as any;\r\n }\r\n } catch (e) { }\r\n\r\n return null;\r\n }\r\n}\r\n\r\nUtils.init();\r\n","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopClick]',\r\n})\r\nexport class StopClickDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.preventDefault();\r\n }\r\n}\n","import { CollectionData } from '../models/data/collectionData';\r\n\r\nimport { Collection } from '../models/domain/collection';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport abstract class CollectionService {\r\n decryptedCollectionCache: CollectionView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CollectionView) => Promise;\r\n decryptMany: (collections: Collection[]) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: (collections?: CollectionView[]) => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n upsert: (collection: CollectionData | CollectionData[]) => Promise;\r\n replace: (collections: { [id: string]: CollectionData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[appInputVerbatim]',\n})\nexport class InputVerbatimDirective {\n @Input() set appInputVerbatim(condition: boolean | string) {\n this.disableComplete = condition === '' || condition === true;\n }\n\n private disableComplete: boolean;\n\n constructor(private el: ElementRef, private renderer: Renderer2) { }\n\n ngOnInit() {\n if (this.disableComplete && !this.el.nativeElement.hasAttribute('autocomplete')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocomplete', 'off');\n }\n if (!this.el.nativeElement.hasAttribute('autocapitalize')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocapitalize', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('autocorrect')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocorrect', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('spellcheck')) {\n this.renderer.setAttribute(this.el.nativeElement, 'spellcheck', 'false');\n }\n if (!this.el.nativeElement.hasAttribute('inputmode')) {\n this.renderer.setAttribute(this.el.nativeElement, 'inputmode', 'verbatim');\n }\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport abstract class FolderService {\r\n decryptedFolderCache: FolderView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: FolderView, key?: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: () => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n saveWithServer: (folder: Folder) => Promise;\r\n upsert: (folder: FolderData | FolderData[]) => Promise;\r\n replace: (folders: { [id: string]: FolderData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n}\r\n","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","import { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nexport abstract class PasswordGenerationService {\r\n generatePassword: (options: any) => Promise;\r\n generatePassphrase: (options: any) => Promise;\r\n getOptions: () => any;\r\n saveOptions: (options: any) => Promise;\r\n getHistory: () => Promise;\r\n addHistory: (password: string) => Promise;\r\n clear: () => Promise;\r\n passwordStrength: (password: string, userInputs?: string[]) => zxcvbn.ZXCVBNResult;\r\n}\r\n","import {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport abstract class SyncService {\r\n syncInProgress: boolean;\r\n\r\n getLastSync: () => Promise;\r\n setLastSync: (date: Date) => Promise;\r\n fullSync: (forceSync: boolean) => Promise;\r\n syncUpsertFolder: (notification: SyncFolderNotification, isEdit: boolean) => Promise;\r\n syncDeleteFolder: (notification: SyncFolderNotification) => Promise;\r\n syncUpsertCipher: (notification: SyncCipherNotification, isEdit: boolean) => Promise;\r\n syncDeleteCipher: (notification: SyncFolderNotification) => Promise;\r\n}\r\n","export abstract class TokenService {\n token: string;\n decodedToken: any;\n refreshToken: string;\n setTokens: (accessToken: string, refreshToken: string) => Promise;\n setToken: (token: string) => Promise;\n getToken: () => Promise;\n setRefreshToken: (refreshToken: string) => Promise;\n getRefreshToken: () => Promise;\n setTwoFactorToken: (token: string, email: string) => Promise;\n getTwoFactorToken: (email: string) => Promise;\n clearTwoFactorToken: (email: string) => Promise;\n clearToken: () => Promise;\n decodeToken: () => any;\n getTokenExpirationDate: () => Date;\n tokenSecondsRemaining: (offsetSeconds?: number) => number;\n tokenNeedsRefresh: (minutes?: number) => boolean;\n getUserId: () => string;\n getEmail: () => string;\n getEmailVerified: () => boolean;\n getName: () => string;\n getPremium: () => boolean;\n getIssuer: () => string;\n}\n","export abstract class EnvironmentService {\r\n baseUrl: string;\r\n webVaultUrl: string;\r\n apiUrl: string;\r\n identityUrl: string;\r\n iconsUrl: string;\r\n notificationsUrl: string;\r\n\r\n getWebVaultUrl: () => string;\r\n setUrlsFromStorage: () => Promise;\r\n setUrls: (urls: any) => Promise;\r\n}\r\n","export class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\n","export class ConstantsService {\n static readonly environmentUrlsKey: string = 'environmentUrls';\n static readonly disableGaKey: string = 'disableGa';\n static readonly disableAddLoginNotificationKey: string = 'disableAddLoginNotification';\n static readonly disableChangedPasswordNotificationKey: string = 'disableChangedPasswordNotification';\n static readonly disableContextMenuItemKey: string = 'disableContextMenuItem';\n static readonly disableFaviconKey: string = 'disableFavicon';\n static readonly disableAutoTotpCopyKey: string = 'disableAutoTotpCopy';\n static readonly enableAutoFillOnPageLoadKey: string = 'enableAutoFillOnPageLoad';\n static readonly lockOptionKey: string = 'lockOption';\n static readonly lastActiveKey: string = 'lastActive';\n static readonly neverDomainsKey: string = 'neverDomains';\n static readonly installedVersionKey: string = 'installedVersion';\n static readonly localeKey: string = 'locale';\n static readonly themeKey: string = 'theme';\n static readonly collapsedGroupingsKey: string = 'collapsedGroupings';\n static readonly autoConfirmFingerprints: string = 'autoConfirmFingerprints';\n static readonly dontShowCardsCurrentTab: string = 'dontShowCardsCurrentTab';\n static readonly dontShowIdentitiesCurrentTab: string = 'dontShowIdentitiesCurrentTab';\n static readonly defaultUriMatch: string = 'defaultUriMatch';\n static readonly pinProtectedKey: string = 'pinProtectedKey';\n static readonly protectedPin: string = 'protectedPin';\n\n readonly environmentUrlsKey: string = ConstantsService.environmentUrlsKey;\n readonly disableGaKey: string = ConstantsService.disableGaKey;\n readonly disableAddLoginNotificationKey: string = ConstantsService.disableAddLoginNotificationKey;\n readonly disableContextMenuItemKey: string = ConstantsService.disableContextMenuItemKey;\n readonly disableFaviconKey: string = ConstantsService.disableFaviconKey;\n readonly disableAutoTotpCopyKey: string = ConstantsService.disableAutoTotpCopyKey;\n readonly enableAutoFillOnPageLoadKey: string = ConstantsService.enableAutoFillOnPageLoadKey;\n readonly lockOptionKey: string = ConstantsService.lockOptionKey;\n readonly lastActiveKey: string = ConstantsService.lastActiveKey;\n readonly neverDomainsKey: string = ConstantsService.neverDomainsKey;\n readonly installedVersionKey: string = ConstantsService.installedVersionKey;\n readonly localeKey: string = ConstantsService.localeKey;\n readonly themeKey: string = ConstantsService.themeKey;\n readonly collapsedGroupingsKey: string = ConstantsService.collapsedGroupingsKey;\n readonly autoConfirmFingerprints: string = ConstantsService.autoConfirmFingerprints;\n readonly dontShowCardsCurrentTab: string = ConstantsService.dontShowCardsCurrentTab;\n readonly dontShowIdentitiesCurrentTab: string = ConstantsService.dontShowIdentitiesCurrentTab;\n readonly defaultUriMatch: string = ConstantsService.defaultUriMatch;\n readonly pinProtectedKey: string = ConstantsService.pinProtectedKey;\n readonly protectedPin: string = ConstantsService.protectedPin;\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 = null;\r\n expMonth: string = null;\r\n expYear: string = null;\r\n code: string = null;\r\n\r\n // tslint:disable\r\n private _brand: string = null;\r\n private _number: string = null;\r\n private _subTitle: string = null;\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\r\n // Show last 5 on amex, last 4 for all others\r\n const count = this.number.length >= 5 && this.number.match(new RegExp('^3[47]')) != null ? 5 : 4;\r\n this._subTitle += ('*' + this.number.substr(this.number.length - count));\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 { 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 = null;\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 { 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","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 { Injectable } from '@angular/core';\r\n\r\nimport { BroadcasterService as BaseBroadcasterService } from '../../services/broadcaster.service';\r\n\r\n@Injectable()\r\nexport class BroadcasterService extends BaseBroadcasterService {\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n} from '@angular/core';\n\nimport { Utils } from '../../misc/utils';\n\n@Directive({\n selector: '[appAutofocus]',\n})\nexport class AutofocusDirective {\n @Input() set appAutofocus(condition: boolean | string) {\n this.autofocus = condition === '' || condition === true;\n }\n\n private autofocus: boolean;\n\n constructor(private el: ElementRef) { }\n\n ngOnInit() {\n if (!Utils.isMobileBrowser && this.autofocus) {\n this.el.nativeElement.focus();\n }\n }\n}\n","import * as jq from 'jquery';\n\nimport {\n Component,\n ComponentFactoryResolver,\n Type,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ModalComponent as BaseModalComponent } from 'jslib/angular/components/modal.component';\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-modal',\n template: ``,\n})\nexport class ModalComponent extends BaseModalComponent {\n el: any = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n super(componentFactoryResolver);\n }\n\n ngOnDestroy() { /* Nothing */ }\n\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\n this.parentContainer = parentContainer;\n this.fade = fade;\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\n const componentRef = this.container.createComponent(factory);\n\n const modals = Array.from(document.querySelectorAll('.modal'));\n if (modals.length > 0) {\n this.el = jq(modals[0]);\n this.el.modal('show');\n\n this.el.on('show.bs.modal', () => {\n this.onShow.emit();\n });\n this.el.on('shown.bs.modal', () => {\n this.onShown.emit();\n if (!Utils.isMobileBrowser) {\n this.el.find('*[appAutoFocus]').focus();\n }\n });\n this.el.on('hide.bs.modal', () => {\n this.onClose.emit();\n });\n this.el.on('hidden.bs.modal', () => {\n this.onClosed.emit();\n if (this.parentContainer != null) {\n this.parentContainer.clear();\n }\n });\n }\n\n return componentRef.instance;\n }\n\n close() {\n if (this.el != null) {\n this.el.modal('hide');\n }\n }\n}\n","export enum TwoFactorProviderType {\r\n Authenticator = 0,\r\n Email = 1,\r\n Duo = 2,\r\n Yubikey = 3,\n U2f = 4,\r\n Remember = 5,\r\n OrganizationDuo = 6,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopProp]',\r\n})\r\nexport class StopPropDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.stopPropagation();\r\n }\r\n}\n","
\r\n \"\"\r\n \r\n
\r\n","import { DecryptParameters } from '../models/domain/decryptParameters';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class CryptoFunctionService {\n pbkdf2: (password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\n iterations: number) => Promise;\n hash: (value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5') => Promise;\n hmac: (value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512') => Promise;\n compare: (a: ArrayBuffer, b: ArrayBuffer) => Promise;\n hmacFast: (value: ArrayBuffer | string, key: ArrayBuffer | string, algorithm: 'sha1' | 'sha256' | 'sha512') =>\n Promise;\n compareFast: (a: ArrayBuffer | string, b: ArrayBuffer | string) => Promise;\n aesEncrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n aesDecryptFastParameters: (data: string, iv: string, mac: string, key: SymmetricCryptoKey) =>\n DecryptParameters;\n aesDecryptFast: (parameters: DecryptParameters) => Promise;\n aesDecrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaDecrypt: (data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaExtractPublicKey: (privateKey: ArrayBuffer) => Promise;\n rsaGenerateKeyPair: (length: 1024 | 2048 | 4096) => Promise<[ArrayBuffer, ArrayBuffer]>;\n randomBytes: (length: number) => Promise;\n}\n","import { BreachAccountResponse } from '../models/response/breachAccountResponse';\n\nexport abstract class AuditService {\n passwordLeaked: (password: string) => Promise;\n breachedAccounts: (username: string) => Promise;\n}\n","export enum SecureNoteType {\r\n Generic = 0,\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","export abstract class LockService {\n pinLocked: boolean;\n isLocked: () => Promise;\n checkLock: () => Promise;\n lock: (allowSoftLock?: boolean) => Promise;\n setLockOption: (lockOption: number) => Promise;\n isPinLockSet: () => Promise<[boolean, boolean]>;\n clear: () => Promise;\n}\n","import { CipherView } from '../models/view/cipherView';\n\nexport abstract class SearchService {\n clearIndex: () => void;\n isSearchable: (query: string) => boolean;\n indexCiphers: () => Promise;\n searchCiphers: (query: string, filter?: (cipher: CipherView) => boolean,\n ciphers?: CipherView[]) => Promise;\n searchCiphersBasic: (ciphers: CipherView[], query: string) => CipherView[];\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { AttachmentView } from './attachmentView';\r\nimport { CardView } from './cardView';\r\nimport { FieldView } from './fieldView';\r\nimport { IdentityView } from './identityView';\r\nimport { LoginView } from './loginView';\r\nimport { PasswordHistoryView } from './passwordHistoryView';\r\nimport { SecureNoteView } from './secureNoteView';\r\nimport { View } from './view';\r\n\r\nexport class CipherView implements View {\r\n id: string = null;\r\n organizationId: string = null;\r\n folderId: string = null;\r\n name: string = null;\r\n notes: string = null;\r\n type: CipherType = null;\r\n favorite = false;\r\n organizationUseTotp = false;\r\n edit = false;\r\n localData: any;\r\n login = new LoginView();\r\n identity = new IdentityView();\r\n card = new CardView();\r\n secureNote = new SecureNoteView();\r\n attachments: AttachmentView[] = null;\r\n fields: FieldView[] = null;\r\n passwordHistory: PasswordHistoryView[] = null;\r\n collectionIds: string[] = null;\r\n revisionDate: Date = null;\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.type !== CipherType.Login || this.login == null) {\r\n return null;\r\n } else if (this.login.password == null || this.login.password === '') {\r\n return null;\r\n }\r\n return this.login.passwordRevisionDate;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { CryptoFunctionService } from 'jslib/abstractions/cryptoFunction.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-avatar',\n template: '',\n})\nexport class AvatarComponent implements OnChanges, OnInit {\n @Input() data: string;\n @Input() email: string;\n @Input() size = 45;\n @Input() charCount = 2;\n @Input() textColor = '#ffffff';\n @Input() fontSize = 20;\n @Input() fontWeight = 300;\n @Input() dynamic = false;\n @Input() circle = false;\n\n src: string;\n\n constructor(public sanitizer: DomSanitizer, private cryptoFunctionService: CryptoFunctionService,\n private stateService: StateService) { }\n\n ngOnInit() {\n if (!this.dynamic) {\n this.generate();\n }\n }\n\n ngOnChanges() {\n if (this.dynamic) {\n this.generate();\n }\n }\n\n private async generate() {\n const enableGravatars = await this.stateService.get('enableGravatars');\n if (enableGravatars && this.email != null) {\n const hashBytes = await this.cryptoFunctionService.hash(this.email.toLowerCase().trim(), 'md5');\n const hash = Utils.fromBufferToHex(hashBytes).toLowerCase();\n this.src = 'https://www.gravatar.com/avatar/' + hash + '?s=' + this.size + '&r=pg&d=retro';\n } else {\n let chars: string = null;\n const upperData = this.data.toUpperCase();\n\n if (this.charCount > 1) {\n chars = this.getFirstLetters(upperData, this.charCount);\n }\n if (chars == null) {\n chars = upperData.substr(0, this.charCount);\n }\n\n const charObj = this.getCharText(chars);\n const color = this.stringToColor(upperData);\n const svg = this.getSvg(this.size, color);\n svg.appendChild(charObj);\n const html = window.document.createElement('div').appendChild(svg).outerHTML;\n const svgHtml = window.btoa(unescape(encodeURIComponent(html)));\n this.src = 'data:image/svg+xml;base64,' + svgHtml;\n }\n }\n\n private stringToColor(str: string): string {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n // tslint:disable-next-line\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n let color = '#';\n for (let i = 0; i < 3; i++) {\n // tslint:disable-next-line\n const value = (hash >> (i * 8)) & 0xFF;\n color += ('00' + value.toString(16)).substr(-2);\n }\n return color;\n }\n\n private getFirstLetters(data: string, count: number): string {\n const parts = data.split(' ');\n if (parts.length > 1) {\n let text = '';\n for (let i = 0; i < count; i++) {\n text += parts[i].substr(0, 1);\n }\n return text;\n }\n return null;\n }\n\n private getSvg(size: number, color: string): HTMLElement {\n const svgTag = window.document.createElement('svg');\n svgTag.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgTag.setAttribute('pointer-events', 'none');\n svgTag.setAttribute('width', size.toString());\n svgTag.setAttribute('height', size.toString());\n svgTag.style.backgroundColor = color;\n svgTag.style.width = size + 'px';\n svgTag.style.height = size + 'px';\n return svgTag;\n }\n\n private getCharText(character: string): HTMLElement {\n const textTag = window.document.createElement('text');\n textTag.setAttribute('text-anchor', 'middle');\n textTag.setAttribute('y', '50%');\n textTag.setAttribute('x', '50%');\n textTag.setAttribute('dy', '0.35em');\n textTag.setAttribute('pointer-events', 'auto');\n textTag.setAttribute('fill', this.textColor);\n textTag.setAttribute('font-family', '\"Open Sans\",\"Helvetica Neue\",Helvetica,Arial,' +\n 'sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\"');\n textTag.textContent = character;\n textTag.style.fontWeight = this.fontWeight.toString();\n textTag.style.fontSize = this.fontSize + 'px';\n return textTag;\n }\n}\n","import { LoginUriView } from './loginUriView';\nimport { View } from './view';\n\nimport { Login } from '../domain/login';\n\nexport class LoginView implements View {\n username: string = null;\n password: string = null;\n passwordRevisionDate?: Date = null;\n totp: string = null;\n uris: LoginUriView[] = null;\n\n constructor(l?: Login) {\n if (!l) {\n return;\n }\n\n this.passwordRevisionDate = l.passwordRevisionDate;\n }\n\n get uri(): string {\n return this.hasUris ? this.uris[0].uri : null;\n }\n\n get maskedPassword(): string {\n return this.password != null ? '••••••••' : null;\n }\n\n get subTitle(): string {\n return this.username;\n }\n\n get canLaunch(): boolean {\n return this.hasUris && this.uris.some((u) => u.canLaunch);\n }\n\n get launchUri(): string {\n if (this.hasUris) {\n const uri = this.uris.find((u) => u.canLaunch);\n if (uri != null) {\n return uri.launchUri;\n }\n }\n return null;\n }\n\n get hasUris(): boolean {\n return this.uris != null && this.uris.length > 0;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Folder } from '../domain/folder';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class FolderView implements View, ITreeNodeObject {\r\n id: string = null;\r\n name: string = null;\r\n revisionDate: Date = null;\r\n\r\n constructor(f?: Folder) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.id = f.id;\r\n this.revisionDate = f.revisionDate;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Collection } from '../domain/collection';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class CollectionView implements View, ITreeNodeObject {\r\n id: string = null;\r\n organizationId: string = null;\r\n name: string = null;\r\n readOnly: boolean = null;\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 { View } from './view';\r\n\r\nimport { Identity } from '../domain/identity';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class IdentityView implements View {\r\n title: string = null;\r\n middleName: string = null;\r\n address1: string = null;\r\n address2: string = null;\r\n address3: string = null;\r\n city: string = null;\r\n state: string = null;\r\n postalCode: string = null;\r\n country: string = null;\r\n company: string = null;\r\n email: string = null;\r\n phone: string = null;\r\n ssn: string = null;\r\n username: string = null;\r\n passportNumber: string = null;\r\n licenseNumber: string = null;\r\n\r\n // tslint:disable\r\n private _firstName: string = null;\r\n private _lastName: string = null;\r\n private _subTitle: string = null;\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 get fullAddress(): string {\r\n let address = this.address1;\r\n if (Utils.isNullOrWhitespace(this.address2)) {\r\n if (Utils.isNullOrWhitespace(address)) {\r\n address += ', ';\r\n }\r\n address += this.address2;\r\n }\r\n if (Utils.isNullOrWhitespace(this.address3)) {\r\n if (Utils.isNullOrWhitespace(address)) {\r\n address += ', ';\r\n }\r\n address += this.address3;\r\n }\r\n return address;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nconst Keys = {\n stripeTest: 'pk_test_KPoCfZXu7mznb9uSCPZ2JpTD',\n stripeLive: 'pk_live_bpN0P37nMxrMQkcaHXtAybJk',\n btSandbox: 'sandbox_r72q8jq6_9pnxkwm75f87sdc2',\n btProduction: 'production_qfbsv8kc_njj2zjtyngtjmbjd',\n};\n\n@Component({\n selector: 'app-payment',\n templateUrl: 'payment.component.html',\n})\nexport class PaymentComponent implements OnInit {\n @Input() showOptions = true;\n @Input() method: 'card' | 'paypal' | 'bank' = 'card';\n @Input() hideBank = false;\n @Input() hidePaypal = false;\n\n card: any = {\n number: null,\n exp_month: '',\n exp_year: '',\n address_country: '',\n address_zip: null,\n };\n bank: any = {\n routing_number: null,\n account_number: null,\n account_holder_name: null,\n account_holder_type: '',\n currency: 'USD',\n country: 'US',\n };\n cardExpMonthOptions: any[];\n cardExpYearOptions: any[];\n\n private stripeScript: HTMLScriptElement;\n private btScript: HTMLScriptElement;\n private btInstance: any = null;\n\n constructor(i18nService: I18nService, private platformUtilsService: PlatformUtilsService) {\n this.stripeScript = window.document.createElement('script');\n this.stripeScript.src = 'https://js.stripe.com/v2/';\n this.stripeScript.async = true;\n this.stripeScript.onload = () => {\n (window as any).Stripe.setPublishableKey(\n this.platformUtilsService.isDev() ? Keys.stripeTest : Keys.stripeLive);\n };\n this.btScript = window.document.createElement('script');\n this.btScript.src = 'scripts/dropin.js';\n this.btScript.async = true;\n\n this.cardExpMonthOptions = [\n { name: '-- ' + i18nService.t('select') + ' --', value: '' },\n { name: '01 - ' + i18nService.t('january'), value: '01' },\n { name: '02 - ' + i18nService.t('february'), value: '02' },\n { name: '03 - ' + i18nService.t('march'), value: '03' },\n { name: '04 - ' + i18nService.t('april'), value: '04' },\n { name: '05 - ' + i18nService.t('may'), value: '05' },\n { name: '06 - ' + i18nService.t('june'), value: '06' },\n { name: '07 - ' + i18nService.t('july'), value: '07' },\n { name: '08 - ' + i18nService.t('august'), value: '08' },\n { name: '09 - ' + i18nService.t('september'), value: '09' },\n { name: '10 - ' + i18nService.t('october'), value: '10' },\n { name: '11 - ' + i18nService.t('november'), value: '11' },\n { name: '12 - ' + i18nService.t('december'), value: '12' },\n ];\n\n this.cardExpYearOptions = [\n { name: '-- ' + i18nService.t('select') + ' --', value: '' },\n ];\n const year = (new Date()).getFullYear();\n for (let i = year; i < (year + 15); i++) {\n this.cardExpYearOptions.push({ name: i.toString(), value: i.toString().slice(-2) });\n }\n }\n\n ngOnInit() {\n if (!this.showOptions) {\n this.hidePaypal = this.method !== 'paypal';\n this.hideBank = this.method !== 'bank';\n }\n window.document.head.appendChild(this.stripeScript);\n if (!this.hidePaypal) {\n window.document.head.appendChild(this.btScript);\n }\n }\n\n ngOnDestroy() {\n window.document.head.removeChild(this.stripeScript);\n Array.from(window.document.querySelectorAll('iframe')).forEach((el) => {\n if (el.src != null && el.src.indexOf('stripe') > -1) {\n window.document.body.removeChild(el);\n }\n });\n if (!this.hidePaypal) {\n window.document.head.removeChild(this.btScript);\n const btStylesheet = window.document.head.querySelector('#braintree-dropin-stylesheet');\n if (btStylesheet != null) {\n window.document.head.removeChild(btStylesheet);\n }\n }\n }\n\n changeMethod() {\n if (this.method !== 'paypal') {\n this.btInstance = null;\n return;\n }\n\n window.setTimeout(() => {\n (window as any).braintree.dropin.create({\n authorization: this.platformUtilsService.isDev() ? Keys.btSandbox : Keys.btProduction,\n container: '#bt-dropin-container',\n paymentOptionPriority: ['paypal'],\n paypal: {\n flow: 'vault',\n buttonStyle: {\n label: 'pay',\n size: 'medium',\n shape: 'pill',\n color: 'blue',\n },\n },\n }, (createErr: any, instance: any) => {\n if (createErr != null) {\n // tslint:disable-next-line\n console.error(createErr);\n return;\n }\n this.btInstance = instance;\n });\n }, 250);\n }\n\n createPaymentToken(): Promise {\n return new Promise((resolve, reject) => {\n if (this.method === 'paypal') {\n this.btInstance.requestPaymentMethod().then((payload: any) => {\n resolve(payload.nonce);\n }).catch((err: any) => {\n reject(err.message);\n });\n } else if (this.method === 'card' || this.method === 'bank') {\n const isCard = this.method === 'card';\n const createObj: any = isCard ? (window as any).Stripe.card :\n (window as any).Stripe.bankAccount;\n const sourceObj = isCard ? this.card : this.bank;\n createObj.createToken(sourceObj, (status: number, response: any) => {\n if (status === 200 && response.id != null) {\n resolve(response.id);\n } else if (response.error != null) {\n reject(response.error.message);\n } else {\n reject();\n }\n });\n }\n });\n }\n\n getCountry(): string {\n return this.card.address_country;\n }\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { AttachmentData } from './attachmentData';\r\nimport { CardData } from './cardData';\r\nimport { FieldData } from './fieldData';\r\nimport { IdentityData } from './identityData';\r\nimport { LoginData } from './loginData';\r\nimport { PasswordHistoryData } from './passwordHistoryData';\r\nimport { SecureNoteData } from './secureNoteData';\r\n\r\nimport { CipherResponse } from '../response/cipherResponse';\r\n\r\nexport class CipherData {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n userId: string;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n favorite: boolean;\r\n revisionDate: string;\r\n type: CipherType;\r\n sizeName: string;\r\n name: string;\r\n notes: string;\r\n login?: LoginData;\r\n secureNote?: SecureNoteData;\r\n card?: CardData;\r\n identity?: IdentityData;\r\n fields?: FieldData[];\r\n attachments?: AttachmentData[];\r\n passwordHistory?: PasswordHistoryData[];\r\n collectionIds?: string[];\r\n\r\n constructor(response?: CipherResponse, userId?: string, collectionIds?: string[]) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.id = response.id;\r\n this.organizationId = response.organizationId;\r\n this.folderId = response.folderId;\r\n this.userId = userId;\r\n this.edit = response.edit;\r\n this.organizationUseTotp = response.organizationUseTotp;\r\n this.favorite = response.favorite;\r\n this.revisionDate = response.revisionDate;\r\n this.type = response.type;\r\n this.name = response.name;\r\n this.notes = response.notes;\r\n\r\n if (collectionIds != null) {\r\n this.collectionIds = collectionIds;\r\n } else {\r\n this.collectionIds = response.collectionIds;\r\n }\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = new LoginData(response.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNoteData(response.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new CardData(response.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new IdentityData(response.identity);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (response.fields != null) {\r\n this.fields = [];\r\n response.fields.forEach((field) => {\r\n this.fields.push(new FieldData(field));\r\n });\r\n }\r\n\r\n if (response.attachments != null) {\r\n this.attachments = [];\r\n response.attachments.forEach((attachment) => {\r\n this.attachments.push(new AttachmentData(attachment));\r\n });\r\n }\r\n\r\n if (response.passwordHistory != null) {\r\n this.passwordHistory = [];\r\n response.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push(new PasswordHistoryData(ph));\r\n });\r\n }\r\n }\r\n}\r\n","import { CollectionDetailsResponse } from '../response/collectionResponse';\n\nexport class CollectionData {\n id: string;\n organizationId: string;\n name: string;\n readOnly: boolean;\n\n constructor(response: CollectionDetailsResponse) {\n this.id = response.id;\n this.organizationId = response.organizationId;\n this.name = response.name;\n this.readOnly = response.readOnly;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-two-factor-verify',\n templateUrl: 'two-factor-verify.component.html',\n})\nexport class TwoFactorVerifyComponent {\n @Input() type: TwoFactorProviderType;\n @Input() organizationId: string;\n @Output() onAuthed = new EventEmitter();\n\n masterPassword: string;\n formPromise: Promise;\n\n private masterPasswordHash: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private toasterService: ToasterService, private cryptoService: CryptoService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash =\n await this.cryptoService.hashPassword(this.masterPassword, null);\n\n try {\n switch (this.type) {\n case -1:\n this.formPromise = this.apiService.getTwoFactorRecover(request);\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.organizationId != null) {\n this.formPromise = this.apiService.getTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.getTwoFactorDuo(request);\n }\n break;\n case TwoFactorProviderType.Email:\n this.formPromise = this.apiService.getTwoFactorEmail(request);\n break;\n case TwoFactorProviderType.U2f:\n this.formPromise = this.apiService.getTwoFactorU2f(request);\n break;\n case TwoFactorProviderType.Authenticator:\n this.formPromise = this.apiService.getTwoFactorAuthenticator(request);\n break;\n case TwoFactorProviderType.Yubikey:\n this.formPromise = this.apiService.getTwoFactorYubiKey(request);\n break;\n }\n\n const response = await this.formPromise;\n this.onAuthed.emit({\n response: response,\n masterPasswordHash: this.masterPasswordHash,\n });\n } catch { }\n }\n}\n","export enum DeviceType {\n Android = 0,\n iOS = 1,\n ChromeExtension = 2,\n FirefoxExtension = 3,\n OperaExtension = 4,\n EdgeExtension = 5,\n WindowsDesktop = 6,\n MacOsDesktop = 7,\n LinuxDesktop = 8,\n ChromeBrowser = 9,\n FirefoxBrowser = 10,\n OperaBrowser = 11,\n EdgeBrowser = 12,\n IEBrowser = 13,\n UnknownBrowser = 14,\n AndroidAmazon = 15,\n UWP = 16,\n SafariBrowser = 17,\n VivaldiBrowser = 18,\n VivaldiExtension = 19,\n SafariExtension = 20,\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nimport { AttachmentRequest } from './attachmentRequest';\r\nimport { PasswordHistoryRequest } from './passwordHistoryRequest';\r\n\r\nexport class CipherRequest {\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n login: LoginApi;\r\n secureNote: SecureNoteApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n fields: FieldApi[];\r\n passwordHistory: PasswordHistoryRequest[];\r\n // Deprecated, remove at some point and rename attachments2 to attachments\r\n attachments: { [id: string]: string; };\r\n attachments2: { [id: string]: AttachmentRequest; };\r\n\r\n constructor(cipher: Cipher) {\r\n this.type = cipher.type;\r\n this.folderId = cipher.folderId;\r\n this.organizationId = cipher.organizationId;\r\n this.name = cipher.name ? cipher.name.encryptedString : null;\r\n this.notes = cipher.notes ? cipher.notes.encryptedString : null;\r\n this.favorite = cipher.favorite;\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = {\r\n uris: null,\r\n username: cipher.login.username ? cipher.login.username.encryptedString : null,\r\n password: cipher.login.password ? cipher.login.password.encryptedString : null,\r\n passwordRevisionDate: cipher.login.passwordRevisionDate != null ?\r\n cipher.login.passwordRevisionDate.toISOString() : null,\r\n totp: cipher.login.totp ? cipher.login.totp.encryptedString : null,\r\n };\r\n\r\n if (cipher.login.uris) {\r\n this.login.uris = [];\r\n cipher.login.uris.forEach((u) => {\r\n this.login.uris.push({\r\n uri: u.uri ? u.uri.encryptedString : null,\r\n match: u.match != null ? u.match : null,\r\n });\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = {\r\n type: cipher.secureNote.type,\r\n };\r\n break;\r\n case CipherType.Card:\r\n this.card = {\r\n cardholderName: cipher.card.cardholderName ? cipher.card.cardholderName.encryptedString : null,\r\n brand: cipher.card.brand ? cipher.card.brand.encryptedString : null,\r\n number: cipher.card.number ? cipher.card.number.encryptedString : null,\r\n expMonth: cipher.card.expMonth ? cipher.card.expMonth.encryptedString : null,\r\n expYear: cipher.card.expYear ? cipher.card.expYear.encryptedString : null,\r\n code: cipher.card.code ? cipher.card.code.encryptedString : null,\r\n };\r\n break;\r\n case CipherType.Identity:\r\n this.identity = {\r\n title: cipher.identity.title ? cipher.identity.title.encryptedString : null,\r\n firstName: cipher.identity.firstName ? cipher.identity.firstName.encryptedString : null,\r\n middleName: cipher.identity.middleName ? cipher.identity.middleName.encryptedString : null,\r\n lastName: cipher.identity.lastName ? cipher.identity.lastName.encryptedString : null,\r\n address1: cipher.identity.address1 ? cipher.identity.address1.encryptedString : null,\r\n address2: cipher.identity.address2 ? cipher.identity.address2.encryptedString : null,\r\n address3: cipher.identity.address3 ? cipher.identity.address3.encryptedString : null,\r\n city: cipher.identity.city ? cipher.identity.city.encryptedString : null,\r\n state: cipher.identity.state ? cipher.identity.state.encryptedString : null,\r\n postalCode: cipher.identity.postalCode ? cipher.identity.postalCode.encryptedString : null,\r\n country: cipher.identity.country ? cipher.identity.country.encryptedString : null,\r\n company: cipher.identity.company ? cipher.identity.company.encryptedString : null,\r\n email: cipher.identity.email ? cipher.identity.email.encryptedString : null,\r\n phone: cipher.identity.phone ? cipher.identity.phone.encryptedString : null,\r\n ssn: cipher.identity.ssn ? cipher.identity.ssn.encryptedString : null,\r\n username: cipher.identity.username ? cipher.identity.username.encryptedString : null,\r\n passportNumber: cipher.identity.passportNumber ?\r\n cipher.identity.passportNumber.encryptedString : null,\r\n licenseNumber: cipher.identity.licenseNumber ? cipher.identity.licenseNumber.encryptedString : null,\r\n };\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (cipher.fields) {\r\n this.fields = [];\r\n cipher.fields.forEach((field) => {\r\n this.fields.push({\r\n type: field.type,\r\n name: field.name ? field.name.encryptedString : null,\r\n value: field.value ? field.value.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.passwordHistory) {\r\n this.passwordHistory = [];\r\n cipher.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push({\r\n lastUsedDate: ph.lastUsedDate,\r\n password: ph.password ? ph.password.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.attachments) {\r\n this.attachments = {};\r\n this.attachments2 = {};\r\n cipher.attachments.forEach((attachment) => {\r\n const fileName = attachment.fileName ? attachment.fileName.encryptedString : null;\r\n this.attachments[attachment.id] = fileName;\r\n const attachmentRequest = new AttachmentRequest();\r\n attachmentRequest.fileName = fileName;\r\n if (attachment.key != null) {\r\n attachmentRequest.key = attachment.key.encryptedString;\r\n }\r\n this.attachments2[attachment.id] = attachmentRequest;\r\n });\r\n }\r\n }\r\n}\r\n","export enum FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { Field } from '../domain/field';\r\n\r\nexport class FieldView implements View {\r\n name: string = null;\r\n value: string = null;\r\n type: FieldType = null;\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 { CollectionData } from '../data/collectionData';\n\nimport { CollectionView } from '../view/collectionView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Collection extends Domain {\n id: string;\n organizationId: string;\n name: CipherString;\n readOnly: boolean;\n\n constructor(obj?: CollectionData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n organizationId: null,\n name: null,\n readOnly: null,\n }, alreadyEncrypted, ['id', 'organizationId', 'readOnly']);\n }\n\n decrypt(): Promise {\n return this.decryptObj(new CollectionView(this), {\n name: null,\n }, this.organizationId);\n }\n}\n","
\n
\n

{{'twoStepLoginAuthDesc' | i18n}}

\n \n \n
\n
\n \n \n
\n
\n","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 { EncryptionType } from '../../enums/encryptionType';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class CipherString {\r\n encryptedString?: string;\r\n encryptionType?: EncryptionType;\r\n decryptedValue?: string;\r\n data?: string;\r\n iv?: string;\r\n mac?: string;\r\n\r\n constructor(encryptedStringOrType: string | EncryptionType, data?: string, iv?: string, mac?: string) {\r\n if (data != null) {\r\n // data and header\r\n const encType = encryptedStringOrType as EncryptionType;\r\n this.encryptedString = encType + '.' + data;\r\n\r\n // iv\r\n if (iv != null) {\r\n this.encryptedString += ('|' + iv);\r\n }\r\n\r\n // mac\r\n if (mac != null) {\r\n this.encryptedString += ('|' + mac);\r\n }\r\n\r\n this.encryptionType = encType;\r\n this.data = data;\r\n this.iv = iv;\r\n this.mac = mac;\r\n\r\n return;\r\n }\r\n\r\n this.encryptedString = encryptedStringOrType as string;\r\n if (!this.encryptedString) {\r\n return;\r\n }\r\n\r\n const headerPieces = this.encryptedString.split('.');\r\n let encPieces: string[] = null;\r\n\r\n if (headerPieces.length === 2) {\r\n try {\r\n this.encryptionType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) {\r\n return;\r\n }\r\n } else {\r\n encPieces = this.encryptedString.split('|');\r\n this.encryptionType = encPieces.length === 3 ? EncryptionType.AesCbc128_HmacSha256_B64 :\r\n EncryptionType.AesCbc256_B64;\r\n }\r\n\r\n switch (this.encryptionType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encPieces.length !== 3) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n this.mac = encPieces[2];\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encPieces.length !== 2) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n if (encPieces.length !== 1) {\r\n return;\r\n }\r\n\r\n this.data = encPieces[0];\r\n break;\r\n default:\r\n return;\r\n }\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n if (this.decryptedValue) {\r\n return Promise.resolve(this.decryptedValue);\r\n }\r\n\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n this.decryptedValue = await cryptoService.decryptToUtf8(this, orgKey);\r\n } catch (e) {\r\n this.decryptedValue = '[error: cannot decrypt]';\r\n }\r\n return this.decryptedValue;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-organizations',\n templateUrl: 'organizations.component.html',\n})\nexport class OrganizationsComponent implements OnInit {\n @Input() vault = false;\n\n organizations: Organization[];\n loaded: boolean = false;\n actionPromise: Promise;\n\n constructor(private userService: UserService, private platformUtilsService: PlatformUtilsService,\n private i18nService: I18nService, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private syncService: SyncService) { }\n\n async ngOnInit() {\n if (!this.vault) {\n await this.load();\n }\n }\n\n async load() {\n const orgs = await this.userService.getAllOrganizations();\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.organizations = orgs;\n this.loaded = true;\n }\n\n async leave(org: Organization) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('leaveOrganizationConfirmation'), org.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.apiService.postLeaveOrganization(org.id).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Left Organization' });\n this.toasterService.popAsync('success', null, this.i18nService.t('leftOrganization'));\n await this.load();\n } catch { }\n }\n}\n","export abstract class TotpService {\n getCode: (key: string) => Promise;\n getTimeInterval: (key: string) => number;\n isAutoCopyEnabled: () => Promise;\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { View } from './view';\n\nimport { LoginUri } from '../domain/loginUri';\n\nimport { Utils } from '../../misc/utils';\n\nconst CanLaunchWhitelist = [\n 'https://',\n 'http://',\n 'ssh://',\n 'ftp://',\n 'sftp://',\n 'irc://',\n 'vnc://',\n 'chrome://',\n];\n\nexport class LoginUriView implements View {\n match: UriMatchType = null;\n\n // tslint:disable\n private _uri: string = null;\n private _domain: string = null;\n private _hostname: string = null;\n private _canLaunch: boolean = null;\n // tslint:enable\n\n constructor(u?: LoginUri) {\n if (!u) {\n return;\n }\n\n this.match = u.match;\n }\n\n get uri(): string {\n return this._uri;\n }\n set uri(value: string) {\n this._uri = value;\n this._domain = null;\n this._canLaunch = null;\n }\n\n get domain(): string {\n if (this._domain == null && this.uri != null) {\n this._domain = Utils.getDomain(this.uri);\n if (this._domain === '') {\n this._domain = null;\n }\n }\n\n return this._domain;\n }\n\n get hostname(): string {\n if (this._hostname == null && this.uri != null) {\n this._hostname = Utils.getHostname(this.uri);\n if (this._hostname === '') {\n this._hostname = null;\n }\n }\n\n return this._hostname;\n }\n\n get hostnameOrUri(): string {\n return this.hostname != null ? this.hostname : this.uri;\n }\n\n get isWebsite(): boolean {\n return this.uri != null && (this.uri.indexOf('http://') === 0 || this.uri.indexOf('https://') === 0 ||\n (this.uri.indexOf('://') < 0 && Utils.tldEndingRegex.test(this.uri)));\n }\n\n get canLaunch(): boolean {\n if (this._canLaunch != null) {\n return this._canLaunch;\n }\n if (this.uri != null && this.match !== UriMatchType.RegularExpression) {\n const uri = this.launchUri;\n for (let i = 0; i < CanLaunchWhitelist.length; i++) {\n if (uri.indexOf(CanLaunchWhitelist[i]) === 0) {\n this._canLaunch = true;\n return this._canLaunch;\n }\n }\n }\n this._canLaunch = false;\n return this._canLaunch;\n }\n\n get launchUri(): string {\n return this.uri.indexOf('://') < 0 && Utils.tldEndingRegex.test(this.uri) ? ('http://' + this.uri) : this.uri;\n }\n}\n","import {\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { TwoFactorProviderRequest } from 'jslib/models/request/twoFactorProviderRequest';\n\nexport abstract class TwoFactorBaseComponent {\n @Output() onUpdated = new EventEmitter();\n\n type: TwoFactorProviderType;\n organizationId: string;\n twoFactorProviderType = TwoFactorProviderType;\n enabled = false;\n authed = false;\n\n protected masterPasswordHash: string;\n\n constructor(protected apiService: ApiService, protected i18nService: I18nService,\n protected analytics: Angulartics2, protected toasterService: ToasterService,\n protected platformUtilsService: PlatformUtilsService) { }\n\n protected auth(authResponse: any) {\n this.masterPasswordHash = authResponse.masterPasswordHash;\n this.authed = true;\n }\n\n protected async enable(enableFunction: () => Promise) {\n try {\n await enableFunction();\n this.analytics.eventTrack.next({\n action: 'Enabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.onUpdated.emit(true);\n } catch { }\n }\n\n protected async disable(promise: Promise) {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('twoStepDisableDesc'),\n this.i18nService.t('disable'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n const request = new TwoFactorProviderRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.type = this.type;\n if (this.organizationId != null) {\n promise = this.apiService.putTwoFactorOrganizationDisable(this.organizationId, request);\n } else {\n promise = this.apiService.putTwoFactorDisable(request);\n }\n await promise;\n this.enabled = false;\n this.analytics.eventTrack.next({\n action: 'Disabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepDisabled'));\n this.onUpdated.emit(false);\n } catch { }\n }\n}\n","import { Importer } from '../importers/importer';\r\n\r\nexport interface ImportOption {\r\n id: string;\r\n name: string;\r\n}\r\nexport abstract class ImportService {\r\n featuredImportOptions: ImportOption[];\r\n regularImportOptions: ImportOption[];\r\n getImportOptions: () => ImportOption[];\r\n import: (importer: Importer, fileContents: string, organizationId?: string) => Promise;\r\n getImporter: (format: string, organization?: boolean) => Importer;\r\n}\r\n","export abstract class ExportService {\r\n getExport: (format?: 'csv' | 'json') => Promise;\r\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\r\n getFileName: (prefix?: string, extension?: string) => string;\r\n}\r\n","import {\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { ModalComponent } from '../modal.component';\nimport { AddEditComponent as OrgAddEditComponent } from '../organizations/vault/add-edit.component';\nimport { AddEditComponent } from '../vault/add-edit.component';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nexport class CipherReportComponent {\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n\n loading = false;\n hasLoaded = false;\n ciphers: CipherView[] = [];\n organization: Organization;\n\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, protected userService: UserService,\n protected messagingService: MessagingService, public requiresPaid: boolean) { }\n\n async load() {\n this.loading = true;\n await this.setCiphers();\n this.loading = false;\n this.hasLoaded = true;\n }\n\n selectCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n let childComponent: OrgAddEditComponent | AddEditComponent;\n if (this.organization != null) {\n childComponent = this.modal.show(OrgAddEditComponent, this.cipherAddEditModalRef);\n (childComponent as OrgAddEditComponent).organization = this.organization;\n } else {\n childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n }\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n if (this.organization != null) {\n childComponent.organizationId = this.organization.id;\n }\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n protected async checkAccess(): Promise {\n if (this.organization != null) {\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n if (this.requiresPaid && !this.organization.useTotp) {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n return false;\n }\n } else {\n const accessPremium = await this.userService.canAccessPremium();\n if (this.requiresPaid && !accessPremium) {\n this.messagingService.send('premiumRequired');\n this.loading = false;\n return false;\n }\n }\n return true;\n }\n\n protected async setCiphers() {\n this.ciphers = [];\n }\n}\n","import { CipherType } from '../../enums/cipherType';\n\nimport { CipherData } from '../data/cipherData';\n\nimport { CipherView } from '../view/cipherView';\n\nimport { Attachment } from './attachment';\nimport { Card } from './card';\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\nimport { Field } from './field';\nimport { Identity } from './identity';\nimport { Login } from './login';\nimport { Password } from './password';\nimport { SecureNote } from './secureNote';\n\nexport class Cipher extends Domain {\n id: string;\n organizationId: string;\n folderId: string;\n name: CipherString;\n notes: CipherString;\n type: CipherType;\n favorite: boolean;\n organizationUseTotp: boolean;\n edit: boolean;\n revisionDate: Date;\n localData: any;\n login: Login;\n identity: Identity;\n card: Card;\n secureNote: SecureNote;\n attachments: Attachment[];\n fields: Field[];\n passwordHistory: Password[];\n collectionIds: string[];\n\n constructor(obj?: CipherData, alreadyEncrypted: boolean = false, localData: any = null) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n userId: null,\n organizationId: null,\n folderId: null,\n name: null,\n notes: null,\n }, alreadyEncrypted, ['id', 'userId', 'organizationId', 'folderId']);\n\n this.type = obj.type;\n this.favorite = obj.favorite;\n this.organizationUseTotp = obj.organizationUseTotp;\n this.edit = obj.edit;\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n this.collectionIds = obj.collectionIds;\n this.localData = localData;\n\n switch (this.type) {\n case CipherType.Login:\n this.login = new Login(obj.login, alreadyEncrypted);\n break;\n case CipherType.SecureNote:\n this.secureNote = new SecureNote(obj.secureNote, alreadyEncrypted);\n break;\n case CipherType.Card:\n this.card = new Card(obj.card, alreadyEncrypted);\n break;\n case CipherType.Identity:\n this.identity = new Identity(obj.identity, alreadyEncrypted);\n break;\n default:\n break;\n }\n\n if (obj.attachments != null) {\n this.attachments = [];\n obj.attachments.forEach((attachment) => {\n this.attachments.push(new Attachment(attachment, alreadyEncrypted));\n });\n } else {\n this.attachments = null;\n }\n\n if (obj.fields != null) {\n this.fields = [];\n obj.fields.forEach((field) => {\n this.fields.push(new Field(field, alreadyEncrypted));\n });\n } else {\n this.fields = null;\n }\n\n if (obj.passwordHistory != null) {\n this.passwordHistory = [];\n obj.passwordHistory.forEach((ph) => {\n this.passwordHistory.push(new Password(ph, alreadyEncrypted));\n });\n } else {\n this.passwordHistory = null;\n }\n }\n\n async decrypt(): Promise {\n const model = new CipherView(this);\n\n await this.decryptObj(model, {\n name: null,\n notes: null,\n }, this.organizationId);\n\n switch (this.type) {\n case CipherType.Login:\n model.login = await this.login.decrypt(this.organizationId);\n break;\n case CipherType.SecureNote:\n model.secureNote = await this.secureNote.decrypt(this.organizationId);\n break;\n case CipherType.Card:\n model.card = await this.card.decrypt(this.organizationId);\n break;\n case CipherType.Identity:\n model.identity = await this.identity.decrypt(this.organizationId);\n break;\n default:\n break;\n }\n\n const orgId = this.organizationId;\n\n if (this.attachments != null && this.attachments.length > 0) {\n const attachments: any[] = [];\n await this.attachments.reduce((promise, attachment) => {\n return promise.then(() => {\n return attachment.decrypt(orgId);\n }).then((decAttachment) => {\n attachments.push(decAttachment);\n });\n }, Promise.resolve());\n model.attachments = attachments;\n }\n\n if (this.fields != null && this.fields.length > 0) {\n const fields: any[] = [];\n await this.fields.reduce((promise, field) => {\n return promise.then(() => {\n return field.decrypt(orgId);\n }).then((decField) => {\n fields.push(decField);\n });\n }, Promise.resolve());\n model.fields = fields;\n }\n\n if (this.passwordHistory != null && this.passwordHistory.length > 0) {\n const passwordHistory: any[] = [];\n await this.passwordHistory.reduce((promise, ph) => {\n return promise.then(() => {\n return ph.decrypt(orgId);\n }).then((decPh) => {\n passwordHistory.push(decPh);\n });\n }, Promise.resolve());\n model.passwordHistory = passwordHistory;\n }\n\n return model;\n }\n\n toCipherData(userId: string): CipherData {\n const c = new CipherData();\n c.id = this.id;\n c.organizationId = this.organizationId;\n c.folderId = this.folderId;\n c.userId = this.organizationId != null ? userId : null;\n c.edit = this.edit;\n c.organizationUseTotp = this.organizationUseTotp;\n c.favorite = this.favorite;\n c.revisionDate = this.revisionDate != null ? this.revisionDate.toISOString() : null;\n c.type = this.type;\n c.collectionIds = this.collectionIds;\n\n this.buildDataModel(this, c, {\n name: null,\n notes: null,\n });\n\n switch (c.type) {\n case CipherType.Login:\n c.login = this.login.toLoginData();\n break;\n case CipherType.SecureNote:\n c.secureNote = this.secureNote.toSecureNoteData();\n break;\n case CipherType.Card:\n c.card = this.card.toCardData();\n break;\n case CipherType.Identity:\n c.identity = this.identity.toIdentityData();\n break;\n default:\n break;\n }\n\n if (this.fields != null) {\n c.fields = [];\n this.fields.forEach((field) => {\n c.fields.push(field.toFieldData());\n });\n }\n\n if (this.attachments != null) {\n c.attachments = [];\n this.attachments.forEach((attachment) => {\n c.attachments.push(attachment.toAttachmentData());\n });\n }\n\n if (this.passwordHistory != null) {\n c.passwordHistory = [];\n this.passwordHistory.forEach((ph) => {\n c.passwordHistory.push(ph.toPasswordHistoryData());\n });\n }\n return c;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\nimport { EventType } from 'jslib/enums/eventType';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\n\n@Injectable()\nexport class EventService {\n constructor(private i18nService: I18nService) { }\n\n getDefaultDateFilters() {\n const d = new Date();\n const end = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59);\n d.setDate(d.getDate() - 30);\n const start = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0);\n return [this.toDateTimeLocalString(start), this.toDateTimeLocalString(end)];\n }\n\n formatDateFilters(filterStart: string, filterEnd: string) {\n const start: Date = new Date(filterStart);\n const end: Date = new Date(filterEnd + ':59.999');\n if (isNaN(start.getTime()) || isNaN(end.getTime()) || end < start) {\n throw new Error('Invalid date range.');\n }\n return [start.toISOString(), end.toISOString()];\n }\n\n getEventInfo(ev: EventResponse, options = new EventOptions()): EventInfo {\n const appInfo = this.getAppInfo(ev.deviceType);\n return {\n message: this.getEventMessage(ev, options),\n appIcon: appInfo[0],\n appName: appInfo[1],\n };\n }\n\n private getEventMessage(ev: EventResponse, options: EventOptions) {\n let msg = '';\n switch (ev.type) {\n // User\n case EventType.User_LoggedIn:\n msg = this.i18nService.t('loggedIn');\n break;\n case EventType.User_ChangedPassword:\n msg = this.i18nService.t('changedPassword');\n break;\n case EventType.User_Updated2fa:\n msg = this.i18nService.t('enabledUpdated2fa');\n break;\n case EventType.User_Disabled2fa:\n msg = this.i18nService.t('disabled2fa');\n break;\n case EventType.User_Recovered2fa:\n msg = this.i18nService.t('recovered2fa');\n break;\n case EventType.User_FailedLogIn:\n msg = this.i18nService.t('failedLogin');\n break;\n case EventType.User_FailedLogIn2fa:\n msg = this.i18nService.t('failedLogin2fa');\n break;\n // Cipher\n case EventType.Cipher_Created:\n msg = this.i18nService.t('createdItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Updated:\n msg = this.i18nService.t('editedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Deleted:\n msg = this.i18nService.t('deletedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentCreated:\n msg = this.i18nService.t('createdAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentDeleted:\n msg = this.i18nService.t('deletedAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Shared:\n msg = this.i18nService.t('sharedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_UpdatedCollections:\n msg = this.i18nService.t('editedCollectionsForItem', this.formatCipherId(ev, options));\n break;\n // Collection\n case EventType.Collection_Created:\n msg = this.i18nService.t('createdCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Updated:\n msg = this.i18nService.t('editedCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Deleted:\n msg = this.i18nService.t('deletedCollectionId', this.formatCollectionId(ev));\n break;\n // Group\n case EventType.Group_Created:\n msg = this.i18nService.t('createdGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Updated:\n msg = this.i18nService.t('editedGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Deleted:\n msg = this.i18nService.t('deletedGroupId', this.formatGroupId(ev));\n break;\n // Org user\n case EventType.OrganizationUser_Invited:\n msg = this.i18nService.t('invitedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Confirmed:\n msg = this.i18nService.t('confirmedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Updated:\n msg = this.i18nService.t('editedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Removed:\n msg = this.i18nService.t('removedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_UpdatedGroups:\n msg = this.i18nService.t('editedGroupsForUser', this.formatOrgUserId(ev));\n break;\n // Org\n case EventType.Organization_Updated:\n msg = this.i18nService.t('editedOrgSettings');\n break;\n case EventType.Organization_PurgedVault:\n msg = this.i18nService.t('purgedOrganizationVault');\n break;\n default:\n break;\n }\n return msg === '' ? null : msg;\n }\n\n private getAppInfo(deviceType: DeviceType): [string, string] {\n switch (deviceType) {\n case DeviceType.Android:\n return ['fa-android', this.i18nService.t('mobile') + ' - Android'];\n case DeviceType.iOS:\n return ['fa-apple', this.i18nService.t('mobile') + ' - iOS'];\n case DeviceType.UWP:\n return ['fa-windows', this.i18nService.t('mobile') + ' - Windows'];\n case DeviceType.ChromeExtension:\n return ['fa-chrome', this.i18nService.t('extension') + ' - Chrome'];\n case DeviceType.FirefoxExtension:\n return ['fa-firefox', this.i18nService.t('extension') + ' - Firefox'];\n case DeviceType.OperaExtension:\n return ['fa-opera', this.i18nService.t('extension') + ' - Opera'];\n case DeviceType.EdgeExtension:\n return ['fa-edge', this.i18nService.t('extension') + ' - Edge'];\n case DeviceType.VivaldiExtension:\n return ['fa-puzzle-piece', this.i18nService.t('extension') + ' - Vivaldi'];\n case DeviceType.SafariExtension:\n return ['fa-safari', this.i18nService.t('extension') + ' - Safari'];\n case DeviceType.WindowsDesktop:\n return ['fa-windows', this.i18nService.t('desktop') + ' - Windows'];\n case DeviceType.MacOsDesktop:\n return ['fa-apple', this.i18nService.t('desktop') + ' - macOS'];\n case DeviceType.LinuxDesktop:\n return ['fa-linux', this.i18nService.t('desktop') + ' - Linux'];\n case DeviceType.ChromeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Chrome'];\n case DeviceType.FirefoxBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Firefox'];\n case DeviceType.OperaBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Opera'];\n case DeviceType.SafariBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Safari'];\n case DeviceType.VivaldiBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Vivaldi'];\n case DeviceType.EdgeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Edge'];\n case DeviceType.IEBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - IE'];\n case DeviceType.UnknownBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - ' + this.i18nService.t('unknown')];\n default:\n return ['fa-globe', this.i18nService.t('unknown')];\n }\n }\n\n private formatCipherId(ev: EventResponse, options: EventOptions) {\n const shortId = this.getShortId(ev.cipherId);\n if (ev.organizationId == null || !options.cipherInfo) {\n return '' + shortId + '';\n }\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/vault?search=' + shortId +\n '&viewEvents=' + ev.cipherId);\n return a.outerHTML;\n }\n\n private formatGroupId(ev: EventResponse) {\n const shortId = this.getShortId(ev.groupId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/groups?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatCollectionId(ev: EventResponse) {\n const shortId = this.getShortId(ev.collectionId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/collections?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatOrgUserId(ev: EventResponse) {\n const shortId = this.getShortId(ev.organizationUserId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/people?search=' + shortId +\n '&viewEvents=' + ev.organizationUserId);\n return a.outerHTML;\n }\n\n private makeAnchor(shortId: string) {\n const a = document.createElement('a');\n a.title = this.i18nService.t('view');\n a.innerHTML = '' + shortId + '';\n return a;\n }\n\n private getShortId(id: string) {\n return id.substring(0, 8);\n }\n\n private toDateTimeLocalString(date: Date) {\n return date.getFullYear() +\n '-' + this.pad(date.getMonth() + 1) +\n '-' + this.pad(date.getDate()) +\n 'T' + this.pad(date.getHours()) +\n ':' + this.pad(date.getMinutes());\n }\n\n private pad(num: number) {\n const norm = Math.floor(Math.abs(num));\n return (norm < 10 ? '0' : '') + norm;\n }\n}\n\nexport class EventInfo {\n message: string;\n appIcon: string;\n appName: string;\n}\n\nexport class EventOptions {\n cipherInfo = true;\n}\n","export enum OrganizationUserType {\r\n Owner = 0,\r\n Admin = 1,\r\n User = 2,\r\n Manager = 3,\r\n}\r\n","import { KdfType } from '../enums/kdfType';\nimport { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { DeviceRequest } from '../models/request/deviceRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\n\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService } from '../abstractions/user.service';\n\nexport const TwoFactorProviders = {\n [TwoFactorProviderType.Authenticator]: {\n type: TwoFactorProviderType.Authenticator,\n name: null as string,\n description: null as string,\n priority: 1,\n sort: 1,\n premium: false,\n },\n [TwoFactorProviderType.Yubikey]: {\n type: TwoFactorProviderType.Yubikey,\n name: null as string,\n description: null as string,\n priority: 3,\n sort: 2,\n premium: true,\n },\n [TwoFactorProviderType.Duo]: {\n type: TwoFactorProviderType.Duo,\n name: 'Duo',\n description: null as string,\n priority: 2,\n sort: 3,\n premium: true,\n },\n [TwoFactorProviderType.OrganizationDuo]: {\n type: TwoFactorProviderType.OrganizationDuo,\n name: 'Duo (Organization)',\n description: null as string,\n priority: 10,\n sort: 4,\n premium: false,\n },\n [TwoFactorProviderType.U2f]: {\n type: TwoFactorProviderType.U2f,\n name: null as string,\n description: null as string,\n priority: 4,\n sort: 5,\n premium: true,\n },\n [TwoFactorProviderType.Email]: {\n type: TwoFactorProviderType.Email,\n name: null as string,\n description: null as string,\n priority: 0,\n sort: 6,\n premium: false,\n },\n};\n\nexport class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType = null;\n\n private key: SymmetricCryptoKey;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private cryptoService: CryptoService, private apiService: ApiService,\n private userService: UserService, private tokenService: TokenService,\n private appIdService: AppIdService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private messagingService: MessagingService,\n private setCryptoKeys = true) { }\n\n init() {\n TwoFactorProviders[TwoFactorProviderType.Email].name = this.i18nService.t('emailTitle');\n TwoFactorProviders[TwoFactorProviderType.Email].description = this.i18nService.t('emailDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Authenticator].name = this.i18nService.t('authenticatorAppTitle');\n TwoFactorProviders[TwoFactorProviderType.Authenticator].description =\n this.i18nService.t('authenticatorAppDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Duo].description = this.i18nService.t('duoDesc');\n\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].name =\n 'Duo (' + this.i18nService.t('organization') + ')';\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].description =\n this.i18nService.t('duoOrganizationDesc');\n\n TwoFactorProviders[TwoFactorProviderType.U2f].name = this.i18nService.t('u2fTitle');\n TwoFactorProviders[TwoFactorProviderType.U2f].description = this.i18nService.t('u2fDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Yubikey].name = this.i18nService.t('yubiKeyTitle');\n TwoFactorProviders[TwoFactorProviderType.Yubikey].description = this.i18nService.t('yubiKeyDesc');\n }\n\n async logIn(email: string, masterPassword: string): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key);\n }\n\n async logInTwoFactor(twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean): Promise {\n return await this.logInHelper(this.email, this.masterPasswordHash, this.key, twoFactorProvider,\n twoFactorToken, remember);\n }\n\n async logInComplete(email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key, twoFactorProvider, twoFactorToken, remember);\n }\n\n logOut(callback: Function) {\n callback();\n this.messagingService.send('loggedOut');\n }\n\n getSupportedTwoFactorProviders(win: Window): any[] {\n const providers: any[] = [];\n if (this.twoFactorProviders == null) {\n return providers;\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.OrganizationDuo) &&\n this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.OrganizationDuo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Authenticator)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Authenticator]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Yubikey)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Yubikey]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Duo) && this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Duo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.U2f) && this.platformUtilsService.supportsU2f(win)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.U2f]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Email)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Email]);\n }\n\n return providers;\n }\n\n getDefaultTwoFactorProvider(u2fSupported: boolean): TwoFactorProviderType {\n if (this.twoFactorProviders == null) {\n return null;\n }\n\n if (this.selectedTwoFactorProviderType != null &&\n this.twoFactorProviders.has(this.selectedTwoFactorProviderType)) {\n return this.selectedTwoFactorProviderType;\n }\n\n let providerType: TwoFactorProviderType = null;\n let providerPriority = -1;\n this.twoFactorProviders.forEach((value, type) => {\n const provider = (TwoFactorProviders as any)[type];\n if (provider != null && provider.priority > providerPriority) {\n if (type === TwoFactorProviderType.U2f && !u2fSupported) {\n return;\n }\n\n providerType = type;\n providerPriority = provider.priority;\n }\n });\n\n return providerType;\n }\n\n async makePreloginKey(masterPassword: string, email: string): Promise {\n email = email.trim().toLowerCase();\n this.kdf = null;\n this.kdfIterations = null;\n try {\n const preloginResponse = await this.apiService.postPrelogin(new PreloginRequest(email));\n if (preloginResponse != null) {\n this.kdf = preloginResponse.kdf;\n this.kdfIterations = preloginResponse.kdfIterations;\n }\n } catch (e) {\n if (e == null || e.statusCode !== 404) {\n throw e;\n }\n }\n return this.cryptoService.makeKey(masterPassword, email, this.kdf, this.kdfIterations);\n }\n\n private async logInHelper(email: string, hashedPassword: string, key: SymmetricCryptoKey,\n twoFactorProvider?: TwoFactorProviderType, twoFactorToken?: string, remember?: boolean): Promise {\n const storedTwoFactorToken = await this.tokenService.getTwoFactorToken(email);\n const appId = await this.appIdService.getAppId();\n const deviceRequest = new DeviceRequest(appId, this.platformUtilsService);\n\n let request: TokenRequest;\n if (twoFactorToken != null && twoFactorProvider != null) {\n request = new TokenRequest(email, hashedPassword, twoFactorProvider, twoFactorToken, remember,\n deviceRequest);\n } else if (storedTwoFactorToken != null) {\n request = new TokenRequest(email, hashedPassword, TwoFactorProviderType.Remember,\n storedTwoFactorToken, false, deviceRequest);\n } else {\n request = new TokenRequest(email, hashedPassword, null, null, false, deviceRequest);\n }\n\n const response = await this.apiService.postIdentityToken(request);\n\n this.clearState();\n const result = new AuthResult();\n result.twoFactor = !(response as any).accessToken;\n\n if (result.twoFactor) {\n // two factor required\n const twoFactorResponse = response as IdentityTwoFactorResponse;\n this.email = email;\n this.masterPasswordHash = hashedPassword;\n this.key = this.setCryptoKeys ? key : null;\n this.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n result.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n return result;\n }\n\n const tokenResponse = response as IdentityTokenResponse;\n if (tokenResponse.twoFactorToken != null) {\n this.tokenService.setTwoFactorToken(tokenResponse.twoFactorToken, email);\n }\n\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n await this.userService.setInformation(this.tokenService.getUserId(), this.tokenService.getEmail(),\n this.kdf, this.kdfIterations);\n if (this.setCryptoKeys) {\n await this.cryptoService.setKey(key);\n await this.cryptoService.setKeyHash(hashedPassword);\n await this.cryptoService.setEncKey(tokenResponse.key);\n\n // User doesn't have a key pair yet (old account), let's generate one for them\n if (tokenResponse.privateKey == null) {\n try {\n const keyPair = await this.cryptoService.makeKeyPair();\n await this.apiService.postAccountKeys(new KeysRequest(keyPair[0], keyPair[1].encryptedString));\n tokenResponse.privateKey = keyPair[1].encryptedString;\n } catch (e) {\n // tslint:disable-next-line\n console.error(e);\n }\n }\n\n await this.cryptoService.setEncPrivateKey(tokenResponse.privateKey);\n }\n\n this.messagingService.send('loggedIn');\n return result;\n }\n\n private clearState(): void {\n this.email = null;\n this.masterPasswordHash = null;\n this.twoFactorProviders = null;\n this.selectedTwoFactorProviderType = null;\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from 'jslib/angular/components/groupings.component';\n\n@Component({\n selector: 'app-vault-groupings',\n templateUrl: 'groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n @Output() onSearchTextChanged = new EventEmitter();\n\n searchText: string = '';\n searchPlaceholder: string = null;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n searchTextChanged() {\n this.onSearchTextChanged.emit(this.searchText);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CiphersComponent as BaseCiphersComponent } from 'jslib/angular/components/ciphers.component';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nconst MaxCheckedCount = 500;\n\n@Component({\n selector: 'app-vault-ciphers',\n templateUrl: 'ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent implements OnDestroy {\n @Input() showAddNew = true;\n @Output() onAttachmentsClicked = new EventEmitter();\n @Output() onShareClicked = new EventEmitter();\n @Output() onCollectionsClicked = new EventEmitter();\n\n cipherType = CipherType;\n actionPromise: Promise;\n\n constructor(searchService: SearchService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected cipherService: CipherService) {\n super(searchService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n checkCipher(c: CipherView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n if (select) {\n this.selectAll(false);\n }\n const selectCount = select && this.ciphers.length > MaxCheckedCount ? MaxCheckedCount : this.ciphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(this.ciphers[i], select);\n }\n }\n\n getSelected(): CipherView[] {\n if (this.ciphers == null) {\n return [];\n }\n return this.ciphers.filter((c) => !!(c as any).checked);\n }\n\n getSelectedIds(): string[] {\n return this.getSelected().map((c) => c.id);\n }\n\n attachments(c: CipherView) {\n this.onAttachmentsClicked.emit(c);\n }\n\n share(c: CipherView) {\n this.onShareClicked.emit(c);\n }\n\n collections(c: CipherView) {\n this.onCollectionsClicked.emit(c);\n }\n\n async delete(c: CipherView): Promise {\n if (this.actionPromise != null) {\n return;\n }\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.deleteCipher(c.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Cipher' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItem'));\n this.refresh();\n } catch { }\n this.actionPromise = null;\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.analytics.eventTrack.next({ action: 'Copied ' + aType.toLowerCase() + ' from listing.' });\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.toasterService.popAsync('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n protected deleteCipher(id: string) {\n return this.cipherService.deleteWithServer(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return c.hasOldAttachments && c.organizationId == null;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AddEditComponent as BaseAddEditComponent } from 'jslib/angular/components/add-edit.component';\nimport { LoginUriView } from 'jslib/models/view/loginUriView';\n\n@Component({\n selector: 'app-vault-add-edit',\n templateUrl: 'add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n canAccessPremium: boolean;\n totpCode: string;\n totpCodeFormatted: string;\n totpDash: number;\n totpSec: number;\n totpLow: boolean;\n showRevisionDate = false;\n hasPasswordHistory = false;\n viewingPasswordHistory = false;\n\n protected totpInterval: number;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n protected totpService: TotpService, protected passwordGenerationService: PasswordGenerationService,\n protected messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService, messagingService);\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.launchUri);\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Copied ' + aType);\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n async generatePassword(): Promise {\n const confirmed = await super.generatePassword();\n if (confirmed) {\n const options = await this.passwordGenerationService.getOptions();\n this.cipher.login.password = await this.passwordGenerationService.generatePassword(options);\n }\n return confirmed;\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.cipher.organizationId });\n }\n\n viewHistory() {\n this.viewingPasswordHistory = !this.viewingPasswordHistory;\n }\n\n protected cleanUp() {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n\n protected async totpUpdateCode() {\n if (this.cipher == null || this.cipher.type !== CipherType.Login || this.cipher.login.totp == null) {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n return;\n }\n\n this.totpCode = await this.totpService.getCode(this.cipher.login.totp);\n if (this.totpCode != null) {\n if (this.totpCode.length > 4) {\n const half = Math.floor(this.totpCode.length / 2);\n this.totpCodeFormatted = this.totpCode.substring(0, half) + ' ' + this.totpCode.substring(half);\n } else {\n this.totpCodeFormatted = this.totpCode;\n }\n } else {\n this.totpCodeFormatted = null;\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n }\n\n private async totpTick(intervalSeconds: number) {\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const mod = epoch % intervalSeconds;\n\n this.totpSec = intervalSeconds - mod;\n this.totpDash = +(Math.round((((78.6 / intervalSeconds) * mod) + 'e+2') as any) + 'e-2');\n this.totpLow = this.totpSec <= 7;\n if (mod === 0) {\n await this.totpUpdateCode();\n }\n }\n}\n","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\n","export enum UriMatchType {\r\n Domain = 0,\r\n Host = 1,\r\n StartsWith = 2,\r\n Exact = 3,\r\n RegularExpression = 4,\r\n Never = 5,\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n Type,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviders } from 'jslib/services/auth.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorAuthenticatorComponent } from './two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './two-factor-recovery.component';\nimport { TwoFactorU2fComponent } from './two-factor-u2f.component';\nimport { TwoFactorYubiKeyComponent } from './two-factor-yubikey.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: 'two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent implements OnInit {\n @ViewChild('recoveryTemplate', { read: ViewContainerRef }) recoveryModalRef: ViewContainerRef;\n @ViewChild('authenticatorTemplate', { read: ViewContainerRef }) authenticatorModalRef: ViewContainerRef;\n @ViewChild('yubikeyTemplate', { read: ViewContainerRef }) yubikeyModalRef: ViewContainerRef;\n @ViewChild('u2fTemplate', { read: ViewContainerRef }) u2fModalRef: ViewContainerRef;\n @ViewChild('duoTemplate', { read: ViewContainerRef }) duoModalRef: ViewContainerRef;\n @ViewChild('emailTemplate', { read: ViewContainerRef }) emailModalRef: ViewContainerRef;\n\n organizationId: string;\n providers: any[] = [];\n canAccessPremium: boolean;\n loading = true;\n\n private modal: ModalComponent = null;\n\n constructor(protected apiService: ApiService, protected userService: UserService,\n protected componentFactoryResolver: ComponentFactoryResolver, protected messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n\n for (const key in TwoFactorProviders) {\n if (!TwoFactorProviders.hasOwnProperty(key)) {\n continue;\n }\n\n const p = (TwoFactorProviders as any)[key];\n if (this.filterProvider(p.type)) {\n continue;\n }\n\n this.providers.push({\n type: p.type,\n name: p.name,\n description: p.description,\n enabled: false,\n premium: p.premium,\n sort: p.sort,\n });\n }\n\n this.providers.sort((a: any, b: any) => a.sort - b.sort);\n await this.load();\n }\n\n async load() {\n this.loading = true;\n const providerList = await this.getTwoFactorProviders();\n providerList.data.forEach((p) => {\n this.providers.forEach((p2) => {\n if (p.type === p2.type) {\n p2.enabled = p.enabled;\n }\n });\n });\n this.loading = false;\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.Authenticator:\n const authComp = this.openModal(this.authenticatorModalRef, TwoFactorAuthenticatorComponent);\n authComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Authenticator);\n });\n break;\n case TwoFactorProviderType.Yubikey:\n const yubiComp = this.openModal(this.yubikeyModalRef, TwoFactorYubiKeyComponent);\n yubiComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Yubikey);\n });\n break;\n case TwoFactorProviderType.Duo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Duo);\n });\n break;\n case TwoFactorProviderType.Email:\n const emailComp = this.openModal(this.emailModalRef, TwoFactorEmailComponent);\n emailComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Email);\n });\n break;\n case TwoFactorProviderType.U2f:\n const u2fComp = this.openModal(this.u2fModalRef, TwoFactorU2fComponent);\n u2fComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.U2f);\n });\n break;\n default:\n break;\n }\n }\n\n recoveryCode() {\n this.openModal(this.recoveryModalRef, TwoFactorRecoveryComponent);\n }\n\n async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorProviders();\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type === TwoFactorProviderType.OrganizationDuo;\n }\n\n protected openModal(ref: ViewContainerRef, type: Type): T {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = ref.createComponent(factory).instance;\n const childComponent = this.modal.show(type, ref);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return childComponent;\n }\n\n protected updateStatus(enabled: boolean, type: TwoFactorProviderType) {\n if (!enabled && this.modal != null) {\n this.modal.close();\n }\n this.providers.forEach((p) => {\n if (p.type === type) {\n p.enabled = enabled;\n }\n });\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { ImportOption, ImportService } from 'jslib/abstractions/import.service';\n\n@Component({\n selector: 'app-import',\n templateUrl: 'import.component.html',\n})\nexport class ImportComponent implements OnInit {\n featuredImportOptions: ImportOption[];\n importOptions: ImportOption[];\n format: string = null;\n fileContents: string;\n formPromise: Promise;\n\n protected organizationId: string = null;\n protected successNavigate: any[] = ['vault'];\n\n constructor(protected i18nService: I18nService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected importService: ImportService,\n protected router: Router) { }\n\n ngOnInit() {\n this.setImportOptions();\n this.importOptions.sort((a, b) => {\n if (a.name == null && b.name != null) {\n return -1;\n }\n if (a.name != null && b.name == null) {\n return 1;\n }\n if (a.name == null && b.name == null) {\n return 0;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(a.name, b.name) :\n a.name.localeCompare(b.name);\n });\n }\n\n async submit() {\n const importer = this.importService.getImporter(this.format, this.organizationId != null);\n if (importer === null) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFormat'));\n return;\n }\n\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if ((files == null || files.length === 0) && (this.fileContents == null || this.fileContents === '')) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n let fileContents = this.fileContents;\n if (files != null && files.length > 0) {\n try {\n const content = await this.getFileContents(files[0]);\n if (content != null) {\n fileContents = content;\n }\n } catch { }\n }\n\n if (fileContents == null || fileContents === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n this.formPromise = this.importService.import(importer, fileContents, this.organizationId);\n const error = await this.formPromise;\n if (error != null) {\n this.error(error);\n return;\n }\n this.analytics.eventTrack.next({\n action: 'Imported Data',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('importSuccess'));\n this.router.navigate(this.successNavigate);\n } catch { }\n }\n\n getFormatInstructionTitle() {\n if (this.format == null) {\n return null;\n }\n\n const results = this.featuredImportOptions.concat(this.importOptions).filter((o) => o.id === this.format);\n if (results.length > 0) {\n return this.i18nService.t('instructionsFor', results[0].name);\n }\n return null;\n }\n\n protected setImportOptions() {\n this.featuredImportOptions = [{\n id: null,\n name: '-- ' + this.i18nService.t('select') + ' --',\n }, ...this.importService.featuredImportOptions];\n this.importOptions = this.importService.regularImportOptions;\n }\n\n private error(error: Error) {\n this.analytics.eventTrack.next({\n action: 'Import Data Failed',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'), error.message);\n }\n\n private getFileContents(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsText(file, 'utf-8');\n reader.onload = (evt) => {\n if (this.format === 'lastpasscsv' && file.type === 'text/html') {\n const parser = new DOMParser();\n const doc = parser.parseFromString((evt.target as any).result, 'text/html');\n const pre = doc.querySelector('pre');\n if (pre != null) {\n resolve(pre.textContent);\n return;\n }\n reject();\n return;\n }\n\n resolve((evt.target as any).result);\n };\n reader.onerror = () => {\n reject();\n };\n });\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from 'jslib/angular/components/export.component';\n\n@Component({\n selector: 'app-export',\n templateUrl: 'export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService) {\n super(cryptoService, i18nService, platformUtilsService, exportService, window);\n }\n\n protected saved() {\n super.saved();\n this.masterPassword = null;\n this.platformUtilsService.showToast('success', null, this.i18nService.t('exportSuccess'));\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: 'reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordUseMap: Map;\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const ciphersWithPasswords: CipherView[] = [];\n this.passwordUseMap = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n ciphersWithPasswords.push(c);\n if (this.passwordUseMap.has(c.login.password)) {\n this.passwordUseMap.set(c.login.password, this.passwordUseMap.get(c.login.password) + 1);\n } else {\n this.passwordUseMap.set(c.login.password, 1);\n }\n });\n const reusedPasswordCiphers = ciphersWithPasswords.filter((c) =>\n this.passwordUseMap.has(c.login.password) && this.passwordUseMap.get(c.login.password) > 1);\n this.ciphers = reusedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: 'unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends CipherReportComponent implements OnInit {\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const unsecuredCiphers = allCiphers.filter((c) => {\n if (c.type !== CipherType.Login || !c.login.hasUris) {\n return false;\n }\n return c.login.uris.some((u) => u.uri != null && u.uri.indexOf('http://') === 0);\n });\n this.ciphers = unsecuredCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: 'weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordStrengthMap = new Map();\n\n private passwordStrengthCache = new Map();\n\n constructor(protected cipherService: CipherService, protected passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const weakPasswordCiphers: CipherView[] = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const hasUsername = c.login.username != null && c.login.username.trim() !== '';\n const cacheKey = c.login.password + '_____' + (hasUsername ? c.login.username : '');\n if (!this.passwordStrengthCache.has(cacheKey)) {\n let userInput: string[] = [];\n if (hasUsername) {\n const atPosition = c.login.username.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(\n c.login.username.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/))\n .filter((i) => i.length >= 3);\n } else {\n userInput = c.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/)\n .filter((i) => i.length >= 3);\n }\n }\n const result = this.passwordGenerationService.passwordStrength(c.login.password,\n userInput.length > 0 ? userInput : null);\n this.passwordStrengthCache.set(cacheKey, result.score);\n }\n const score = this.passwordStrengthCache.get(cacheKey);\n if (score != null && score <= 3) {\n this.passwordStrengthMap.set(c.id, this.scoreKey(score));\n weakPasswordCiphers.push(c);\n }\n });\n this.ciphers = weakPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private scoreKey(score: number): [string, string] {\n switch (score) {\n case 4:\n return ['strong', 'success'];\n case 3:\n return ['good', 'primary'];\n case 2:\n return ['weak', 'warning'];\n default:\n return ['veryWeak', 'danger'];\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: 'exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n exposedPasswordMap = new Map();\n\n constructor(protected cipherService: CipherService, protected auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n ngOnInit() {\n this.checkAccess();\n }\n\n async load() {\n if (await this.checkAccess()) {\n super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const exposedPasswordCiphers: CipherView[] = [];\n const promises: Array> = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const promise = this.auditService.passwordLeaked(c.login.password).then((exposedCount) => {\n if (exposedCount > 0) {\n exposedPasswordCiphers.push(c);\n this.exposedPasswordMap.set(c.id, exposedCount);\n }\n });\n promises.push(promise);\n });\n await Promise.all(promises);\n this.ciphers = exposedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: 'inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends CipherReportComponent implements OnInit {\n services = new Map();\n cipherDocs = new Map();\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n try {\n await this.load2fa();\n } catch { }\n if (this.services.size > 0) {\n const allCiphers = await this.getAllCiphers();\n const inactive2faCiphers: CipherView[] = [];\n const promises: Array> = [];\n const docs = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || (c.login.totp != null && c.login.totp !== '') || !c.login.hasUris) {\n return;\n }\n for (let i = 0; i < c.login.uris.length; i++) {\n const u = c.login.uris[i];\n if (u.uri != null && u.uri !== '') {\n const hostname = Utils.getHostname(u.uri);\n if (hostname != null && this.services.has(hostname)) {\n if (this.services.get(hostname) != null) {\n docs.set(c.id, this.services.get(hostname));\n }\n inactive2faCiphers.push(c);\n break;\n }\n }\n }\n });\n await Promise.all(promises);\n this.ciphers = inactive2faCiphers;\n this.cipherDocs = docs;\n }\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private async load2fa() {\n if (this.services.size > 0) {\n return;\n }\n const response = await fetch(new Request('https://twofactorauth.org/data.json'));\n if (response.status !== 200) {\n throw new Error();\n }\n const responseJson = await response.json();\n for (const categoryName in responseJson) {\n if (responseJson.hasOwnProperty(categoryName)) {\n const category = responseJson[categoryName];\n for (const serviceName in category) {\n if (category.hasOwnProperty(serviceName)) {\n const service = category[serviceName];\n if (service.tfa && service.url != null) {\n const hostname = Utils.getHostname(service.url);\n if (hostname != null) {\n this.services.set(hostname, service.doc);\n }\n }\n }\n }\n }\n }\n }\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n@Pipe({\n name: 'search',\n})\nexport class SearchPipe implements PipeTransform {\n transform(items: any[], searchText: string, prop1?: string, prop2?: string, prop3?: string): any[] {\n if (items == null || items.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return items;\n }\n\n searchText = searchText.trim().toLowerCase();\n return items.filter((i) => {\n if (prop1 != null && i[prop1] != null && i[prop1].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop2 != null && i[prop2] != null && i[prop2].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop3 != null && i[prop3] != null && i[prop3].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n return false;\n });\n }\n}\n","export class SelectionReadOnlyRequest {\n id: string;\n readOnly: boolean;\n\n constructor(id: string, readOnly: boolean) {\n this.id = id;\n this.readOnly = readOnly;\n }\n}\n","export class SelectionReadOnlyResponse {\n id: string;\n readOnly: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.readOnly = response.ReadOnly;\n }\n}\n","import { EnvironmentService } from './environment.service';\r\n\r\nexport abstract class NotificationsService {\r\n init: (environmentService: EnvironmentService) => Promise;\r\n updateConnection: (sync?: boolean) => Promise;\r\n reconnectFromActivity: () => Promise;\r\n disconnectFromInactivity: () => Promise;\r\n}\r\n","export abstract class SettingsService {\r\n clearCache: () => void;\r\n getEquivalentDomains: () => Promise;\r\n setEquivalentDomains: (equivalentDomains: string[][]) => Promise;\r\n clear: (userId: string) => Promise;\r\n}\r\n","import {\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-frontend-layout',\n templateUrl: 'frontend-layout.component.html',\n})\nexport class FrontendLayoutComponent implements OnInit, OnDestroy {\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 document.body.classList.add('layout_frontend');\n }\n\n ngOnDestroy() {\n document.body.classList.remove('layout_frontend');\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { LoginComponent as BaseLoginComponent } from 'jslib/angular/components/login.component';\n\n@Component({\n selector: 'app-login',\n templateUrl: 'login.component.html',\n})\nexport class LoginComponent extends BaseLoginComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, private route: ActivatedRoute,\n storageService: StorageService, private stateService: StateService,\n platformUtilsService: PlatformUtilsService) {\n super(authService, router, platformUtilsService, i18nService, storageService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n async ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n await super.ngOnInit();\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { Router } from '@angular/router';\n\nimport { TwoFactorOptionsComponent } from './two-factor-options.component';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { EnvironmentService } from 'jslib/abstractions/environment.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { TwoFactorComponent as BaseTwoFactorComponent } from 'jslib/angular/components/two-factor.component';\n\n@Component({\n selector: 'app-two-factor',\n templateUrl: 'two-factor.component.html',\n})\nexport class TwoFactorComponent extends BaseTwoFactorComponent {\n @ViewChild('twoFactorOptions', { read: ViewContainerRef }) twoFactorOptionsModal: ViewContainerRef;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, apiService: ApiService,\n platformUtilsService: PlatformUtilsService, private stateService: StateService,\n environmentService: EnvironmentService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n anotherMethod() {\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n const modal = this.twoFactorOptionsModal.createComponent(factory).instance;\n const childComponent = modal.show(TwoFactorOptionsComponent,\n this.twoFactorOptionsModal);\n\n childComponent.onProviderSelected.subscribe(async (provider: TwoFactorProviderType) => {\n modal.close();\n this.selectedProviderType = provider;\n await this.init();\n });\n childComponent.onRecoverSelected.subscribe(() => {\n modal.close();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-password-strength',\n templateUrl: 'password-strength.component.html',\n})\nexport class PasswordStrengthComponent implements OnChanges {\n @Input() score?: number;\n @Input() showText = false;\n\n scoreWidth = 0;\n color = 'bg-danger';\n text: string;\n\n constructor(private i18nService: I18nService) { }\n\n ngOnChanges(): void {\n this.scoreWidth = this.score == null ? 0 : (this.score + 1) * 20;\n switch (this.score) {\n case 4:\n this.color = 'bg-success';\n this.text = this.i18nService.t('strong');\n break;\n case 3:\n this.color = 'bg-primary';\n this.text = this.i18nService.t('good');\n break;\n case 2:\n this.color = 'bg-warning';\n this.text = this.i18nService.t('weak');\n break;\n default:\n this.color = 'bg-danger';\n this.text = this.score != null ? this.i18nService.t('weak') : null;\n break;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { RegisterComponent as BaseRegisterComponent } from 'jslib/angular/components/register.component';\n\n@Component({\n selector: 'app-register',\n templateUrl: 'register.component.html',\n})\nexport class RegisterComponent extends BaseRegisterComponent {\n showCreateOrgMessage = false;\n showTerms = true;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, cryptoService: CryptoService,\n apiService: ApiService, private route: ActivatedRoute,\n stateService: StateService, platformUtilsService: PlatformUtilsService,\n passwordGenerationService: PasswordGenerationService) {\n super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,\n passwordGenerationService);\n this.showTerms = !platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe((qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.showCreateOrgMessage = true;\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.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 {\n constructor(router: Router, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, messagingService: MessagingService,\n userService: UserService, cryptoService: CryptoService,\n storageService: StorageService, lockService: LockService,\n private routerService: RouterService) {\n super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService,\n storageService, lockService);\n }\n\n async ngOnInit() {\n await super.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","export enum EncryptionType {\r\n AesCbc256_B64 = 0,\r\n AesCbc128_HmacSha256_B64 = 1,\r\n AesCbc256_HmacSha256_B64 = 2,\r\n Rsa2048_OaepSha256_B64 = 3,\r\n Rsa2048_OaepSha1_B64 = 4,\r\n Rsa2048_OaepSha256_HmacSha256_B64 = 5,\r\n Rsa2048_OaepSha1_HmacSha256_B64 = 6,\r\n}\r\n","import { 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 {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { VerifyEmailRequest } from 'jslib/models/request/verifyEmailRequest';\n\n@Component({\n selector: 'app-verify-email-token',\n templateUrl: 'verify-email-token.component.html',\n})\nexport class VerifyEmailTokenComponent implements OnInit {\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null) {\n try {\n await this.apiService.postAccountVerifyEmailToken(\n new VerifyEmailRequest(qParams.userId, qParams.token));\n const authed = await this.userService.isAuthenticated();\n if (authed) {\n await this.apiService.refreshIdentityToken();\n }\n this.toasterService.popAsync('success', null, this.i18nService.t('emailVerified'));\n this.router.navigate(['/']);\n return;\n } catch { }\n }\n this.toasterService.popAsync('error', null, this.i18nService.t('emailVerifiedFailed'));\n this.router.navigate(['/']);\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport {\r\n Toast,\r\n ToasterService,\r\n} from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { StateService } from 'jslib/abstractions/state.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\r\n\r\n@Component({\r\n selector: 'app-accept-organization',\r\n templateUrl: 'accept-organization.component.html',\r\n})\r\nexport class AcceptOrganizationComponent implements OnInit {\r\n loading = true;\r\n authed = false;\r\n orgName: string;\r\n email: string;\r\n actionPromise: Promise;\r\n\r\n constructor(private router: Router, private toasterService: ToasterService,\r\n private i18nService: I18nService, private route: ActivatedRoute,\r\n private apiService: ApiService, private userService: UserService,\r\n private stateService: StateService) { }\r\n\r\n ngOnInit() {\r\n let fired = false;\r\n this.route.queryParams.subscribe(async (qParams) => {\r\n if (fired) {\r\n return;\r\n }\r\n fired = true;\r\n await this.stateService.remove('orgInvitation');\r\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\r\n if (!error) {\r\n this.authed = await this.userService.isAuthenticated();\r\n if (this.authed) {\r\n const request = new OrganizationUserAcceptRequest();\r\n request.token = qParams.token;\r\n try {\r\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\r\n qParams.organizationUserId, request);\r\n await this.actionPromise;\r\n const toast: Toast = {\r\n type: 'success',\r\n title: this.i18nService.t('inviteAccepted'),\r\n body: this.i18nService.t('inviteAcceptedDesc'),\r\n timeout: 10000,\r\n };\r\n this.toasterService.popAsync(toast);\r\n this.router.navigate(['/vault']);\r\n } catch {\r\n error = true;\r\n }\r\n } else {\r\n await this.stateService.save('orgInvitation', qParams);\r\n this.email = qParams.email;\r\n this.orgName = qParams.organizationName;\r\n if (this.orgName != null) {\r\n // Fix URL encoding of space issue with Angular\r\n this.orgName = this.orgName.replace(/\\+/g, ' ');\r\n }\r\n }\r\n }\r\n\r\n if (error) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\r\n this.router.navigate(['/']);\r\n }\r\n\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoveryRequest } from 'jslib/models/request/twoFactorRecoveryRequest';\n\n@Component({\n selector: 'app-recover-two-factor',\n templateUrl: 'recover-two-factor.component.html',\n})\nexport class RecoverTwoFactorComponent {\n email: string;\n masterPassword: string;\n recoveryCode: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private cryptoService: CryptoService,\n private authService: AuthService) { }\n\n async submit() {\n try {\n const request = new TwoFactorRecoveryRequest();\n request.recoveryCode = this.recoveryCode.replace(/\\s/g, '').toLowerCase();\n request.email = this.email.trim().toLowerCase();\n const key = await this.authService.makePreloginKey(this.masterPassword, request.email);\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n this.formPromise = this.apiService.postTwoFactorRecover(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered 2FA' });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepRecoverDisabled'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeleteRecoverRequest } from 'jslib/models/request/deleteRecoverRequest';\n\n@Component({\n selector: 'app-recover-delete',\n templateUrl: 'recover-delete.component.html',\n})\nexport class RecoverDeleteComponent {\n email: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService) {\n }\n\n async submit() {\n try {\n const request = new DeleteRecoverRequest();\n request.email = this.email.trim().toLowerCase();\n this.formPromise = this.apiService.postAccountRecoverDelete(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Started Delete Recovery' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deleteRecoverEmailSent'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { VerifyDeleteRecoverRequest } from 'jslib/models/request/verifyDeleteRecoverRequest';\n\n@Component({\n selector: 'app-verify-recover-delete',\n templateUrl: 'verify-recover-delete.component.html',\n})\nexport class VerifyRecoverDeleteComponent implements OnInit {\n email: string;\n formPromise: Promise;\n\n private userId: string;\n private token: string;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute) {\n }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null && qParams.email != null) {\n this.userId = qParams.userId;\n this.token = qParams.token;\n this.email = qParams.email;\n } else {\n this.router.navigate(['/']);\n }\n });\n }\n\n async submit() {\n try {\n const request = new VerifyDeleteRecoverRequest(this.userId, this.token);\n this.formPromise = this.apiService.postAccountRecoverDeleteToken(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered Delete' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\n@Component({\n selector: 'app-navbar',\n templateUrl: 'navbar.component.html',\n})\nexport class NavbarComponent implements OnInit {\n selfHosted = false;\n name: string;\n email: string;\n\n constructor(private messagingService: MessagingService, private platformUtilsService: PlatformUtilsService,\n private tokenService: TokenService) {\n this.selfHosted = this.platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.name = await this.tokenService.getName();\n this.email = await this.tokenService.getEmail();\n if (this.name == null || this.name.trim() === '') {\n this.name = this.email;\n }\n }\n\n lock() {\n this.messagingService.send('lockVault');\n }\n\n logOut() {\n this.messagingService.send('logout');\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-footer',\n templateUrl: 'footer.component.html',\n})\nexport class FooterComponent implements OnInit {\n version: string;\n year: string = '2015';\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n ngOnInit() {\n this.year = new Date().getFullYear().toString();\n this.version = this.platformUtilsService.getApplicationVersion();\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-user-layout',\r\n templateUrl: 'user-layout.component.html',\r\n})\r\nexport class UserLayoutComponent implements OnInit {\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { OrganizationsComponent } from '../settings/organizations.component';\nimport { UpdateKeyComponent } from '../settings/update-key.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { BulkDeleteComponent } from './bulk-delete.component';\nimport { BulkMoveComponent } from './bulk-move.component';\nimport { BulkShareComponent } from './bulk-share.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { FolderAddEditComponent } from './folder-add-edit.component';\nimport { GroupingsComponent } from './groupings.component';\nimport { ShareComponent } from './share.component';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nconst BroadcasterSubscriptionId = 'VaultComponent';\n\n@Component({\n selector: 'app-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild(OrganizationsComponent) organizationsComponent: OrganizationsComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('folderAddEdit', { read: ViewContainerRef }) folderAddEditModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('share', { read: ViewContainerRef }) shareModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('bulkDeleteTemplate', { read: ViewContainerRef }) bulkDeleteModalRef: ViewContainerRef;\n @ViewChild('bulkMoveTemplate', { read: ViewContainerRef }) bulkMoveModalRef: ViewContainerRef;\n @ViewChild('bulkShareTemplate', { read: ViewContainerRef }) bulkShareModalRef: ViewContainerRef;\n @ViewChild('updateKeyTemplate', { read: ViewContainerRef }) updateKeyModalRef: ViewContainerRef;\n\n favorites: boolean = false;\n type: CipherType = null;\n folderId: string = null;\n collectionId: string = null;\n showVerifyEmail = false;\n showBrowserOutdated = false;\n showUpdateKey = false;\n showPremiumCallout = false;\n\n private modal: ModalComponent = null;\n\n constructor(private syncService: SyncService, private route: ActivatedRoute,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private tokenService: TokenService, private cryptoService: CryptoService,\n private messagingService: MessagingService, private userService: UserService,\n private platformUtilsService: PlatformUtilsService, private toasterService: ToasterService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (params) => {\n await this.syncService.fullSync(false);\n\n this.showUpdateKey = !(await this.cryptoService.hasEncKey());\n const canAccessPremium = await this.userService.canAccessPremium();\n this.showPremiumCallout = !this.showVerifyEmail && !canAccessPremium &&\n !this.platformUtilsService.isSelfHost();\n\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n ]);\n\n if (params == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (params.favorites) {\n this.groupingsComponent.selectedFavorites = true;\n await this.filterFavorites();\n } else if (params.type) {\n const t = parseInt(params.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t);\n } else if (params.folderId) {\n this.groupingsComponent.selectedFolder = true;\n this.groupingsComponent.selectedFolderId = params.folderId;\n await this.filterFolder(params.folderId);\n } else if (params.collectionId) {\n this.groupingsComponent.selectedCollectionId = params.collectionId;\n await this.filterCollection(params.collectionId);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n this.ciphersComponent.load(this.ciphersComponent.filter),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.load();\n this.clearFilters();\n this.go();\n }\n\n async filterFavorites() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFavorites');\n await this.ciphersComponent.load((c) => c.favorite);\n this.clearFilters();\n this.favorites = true;\n this.go();\n }\n\n async filterCipherType(type: CipherType) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n await this.ciphersComponent.load((c) => c.type === type);\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterFolder(folderId: string) {\n this.ciphersComponent.showAddNew = true;\n folderId = folderId === 'none' ? null : folderId;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFolder');\n await this.ciphersComponent.load((c) => c.folderId === folderId);\n this.clearFilters();\n this.folderId = folderId == null ? 'none' : folderId;\n this.go();\n }\n\n async filterCollection(collectionId: string) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n await this.ciphersComponent.load((c) => c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1);\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n async editCipherAttachments(cipher: CipherView) {\n const canAccessPremium = await this.userService.canAccessPremium();\n if (cipher.organizationId == null && !canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n } else if (cipher.organizationId != null) {\n const org = await this.userService.getOrganization(cipher.organizationId);\n if (org != null && (org.maxStorageGb == null || org.maxStorageGb === 0)) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onReuploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n shareCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.shareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(ShareComponent, this.shareModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSharedCipher.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n async addFolder() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = null;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async editFolder(folderId: string) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = folderId;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n childComponent.onDeletedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n await this.filterFolder('none');\n this.groupingsComponent.selectedFolderId = null;\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.type = this.type;\n component.folderId = this.folderId === 'none' ? null : this.folderId;\n if (this.collectionId != null) {\n const collection = this.groupingsComponent.collections.filter((c) => c.id === this.collectionId);\n if (collection.length > 0) {\n component.organizationId = collection[0].organizationId;\n component.collectionIds = [this.collectionId];\n }\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n bulkDelete() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkDeleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkDeleteComponent, this.bulkDeleteModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onDeleted.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n bulkShare() {\n const selectedCiphers = this.ciphersComponent.getSelected();\n if (selectedCiphers.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkShareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkShareComponent, this.bulkShareModalRef);\n\n childComponent.ciphers = selectedCiphers;\n childComponent.onShared.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n bulkMove() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkMoveModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkMoveComponent, this.bulkMoveModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onMoved.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n selectAll(select: boolean) {\n this.ciphersComponent.selectAll(select);\n }\n\n updateKey() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.updateKeyModalRef.createComponent(factory).instance;\n this.modal.show(UpdateKeyComponent, this.updateKeyModalRef);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.folderId = null;\n this.collectionId = null;\n this.favorites = false;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n favorites: this.favorites ? true : null,\n type: this.type,\n folderId: this.folderId,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherWithIdRequest extends CipherRequest {\n id: string;\n\n constructor(cipher: Cipher) {\n super(cipher);\n this.id = cipher.id;\n }\n}\n","import { Folder } from '../domain/folder';\r\n\r\nexport class FolderRequest {\r\n name: string;\r\n\r\n constructor(folder: Folder) {\r\n this.name = folder.name ? folder.name.encryptedString : null;\r\n }\r\n}\r\n","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 let updatePromise: Promise = null;\n if (this.organizationId == null) {\n updatePromise = this.apiService.postAccountLicense(fd);\n } else {\n updatePromise = this.apiService.postOrganizationLicenseUpdate(this.organizationId, fd);\n }\n\n this.formPromise = updatePromise.then(() => {\n return this.apiService.refreshIdentityToken();\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","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';\nimport { TransactionType } from 'jslib/enums/transactionType';\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 transactionType = TransactionType;\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 invoices() {\n return this.billing != null ? this.billing.invoices : null;\n }\n\n get transactions() {\n return this.billing != null ? this.billing.transactions : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n}\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { PaymentComponent } from './payment.component';\n\nimport { PlanType } from 'jslib/enums/planType';\nimport { OrganizationCreateRequest } from 'jslib/models/request/organizationCreateRequest';\n\n@Component({\n selector: 'app-create-organization',\n templateUrl: 'create-organization.component.html',\n})\nexport class CreateOrganizationComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n selfHosted = false;\n ownedBusiness = false;\n premiumAccessAddon = false;\n storageGbPriceMonthly = 0.33;\n additionalStorage = 0;\n additionalSeats = 0;\n plan = 'free';\n interval = 'year';\n name: string;\n billingEmail: string;\n businessName: string;\n\n storageGb: any = {\n price: 0.33,\n monthlyPrice: 0.50,\n yearlyPrice: 4,\n };\n\n plans: any = {\n free: {\n basePrice: 0,\n noAdditionalSeats: true,\n noPayment: true,\n },\n families: {\n basePrice: 1,\n annualBasePrice: 12,\n baseSeats: 5,\n noAdditionalSeats: true,\n annualPlanType: PlanType.FamiliesAnnually,\n canBuyPremiumAccessAddon: true,\n },\n teams: {\n basePrice: 5,\n annualBasePrice: 60,\n monthlyBasePrice: 8,\n baseSeats: 5,\n seatPrice: 2,\n annualSeatPrice: 24,\n monthlySeatPrice: 2.5,\n monthPlanType: PlanType.TeamsMonthly,\n annualPlanType: PlanType.TeamsAnnually,\n },\n enterprise: {\n seatPrice: 3,\n annualSeatPrice: 36,\n monthlySeatPrice: 4,\n monthPlanType: PlanType.EnterpriseMonthly,\n annualPlanType: PlanType.EnterpriseAnnually,\n },\n };\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private router: Router, private syncService: SyncService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent implements OnInit {\n canAccessPremium = false;\n\n constructor(private userService: UserService, private messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorComponent as BasePasswordGeneratorComponent,\n} from 'jslib/angular/components/password-generator.component';\n\nimport { ModalComponent } from '../modal.component';\nimport { PasswordGeneratorHistoryComponent } from './password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator',\n templateUrl: 'password-generator.component.html',\n})\nexport class PasswordGeneratorComponent extends BasePasswordGeneratorComponent {\n @ViewChild('historyTemplate', { read: ViewContainerRef }) historyModalRef: ViewContainerRef;\n\n private modal: ModalComponent = null;\n\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n\n history() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.historyModalRef.createComponent(factory).instance;\n this.modal.show(PasswordGeneratorHistoryComponent, this.historyModalRef);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { AuditService } from 'jslib/abstractions/audit.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\nimport { BreachAccountResponse } from 'jslib/models/response/breachAccountResponse';\r\n\r\n@Component({\r\n selector: 'app-breach-report',\r\n templateUrl: 'breach-report.component.html',\r\n})\r\nexport class BreachReportComponent implements OnInit {\r\n error = false;\r\n username: string;\r\n checkedUsername: string;\r\n breachedAccounts: BreachAccountResponse[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private auditService: AuditService, private userService: UserService) { }\r\n\r\n async ngOnInit() {\r\n this.username = await this.userService.getEmail();\r\n }\r\n\r\n async submit() {\r\n this.error = false;\r\n this.username = this.username.toLowerCase();\r\n try {\r\n this.formPromise = this.auditService.breachedAccounts(this.username);\r\n this.breachedAccounts = await this.formPromise;\r\n } catch {\r\n this.error = true;\r\n }\r\n this.checkedUsername = this.username;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCreateRequest } from 'jslib/models/request/cipherCreateRequest';\nimport { CipherRequest } from 'jslib/models/request/cipherRequest';\n\nimport { AddEditComponent as BaseAddEditComponent } from '../../vault/add-edit.component';\n\n@Component({\n selector: 'app-org-vault-add-edit',\n templateUrl: '../../vault/add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n organization: Organization;\n originalCipher: Cipher = null;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n totpService: TotpService, passwordGenerationService: PasswordGenerationService,\n private apiService: ApiService, 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 {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nconst BroadcasterSubscriptionId = 'OrganizationLayoutComponent';\n\n@Component({\n selector: 'app-organization-layout',\n templateUrl: 'organization-layout.component.html',\n})\nexport class OrganizationLayoutComponent implements OnInit, OnDestroy {\n organization: Organization;\n\n private organizationId: string;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n document.body.classList.remove('layout_frontend');\n this.route.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'updatedOrgLicense':\n await this.load();\n break;\n }\n });\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async load() {\n this.organization = await this.userService.getOrganization(this.organizationId);\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from '../../vault/groupings.component';\n\n@Component({\n selector: 'app-org-vault-groupings',\n templateUrl: '../../vault/groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService,\n private apiService: ApiService, private i18nService: I18nService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n async loadCollections() {\n if (!this.organization.isAdmin) {\n await super.loadCollections(this.organization.id);\n return;\n }\n\n const collections = await this.apiService.getCollections(this.organization.id);\n if (collections != null && collections.data != null && collections.data.length) {\n const collectionDomains = collections.data.map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collectionDomains);\n } else {\n this.collections = [];\n }\n\n const unassignedCollection = new CollectionView();\n unassignedCollection.name = this.i18nService.t('unassigned');\n unassignedCollection.id = 'unassigned';\n unassignedCollection.organizationId = this.organization.id;\n unassignedCollection.readOnly = true;\n this.collections.push(unassignedCollection);\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\n }\n\n collapse(grouping: CollectionView) {\n super.collapse(grouping, 'org_');\n }\n\n isCollapsed(grouping: CollectionView) {\n return super.isCollapsed(grouping, 'org_');\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CiphersComponent as BaseCiphersComponent } from '../../vault/ciphers.component';\n\n@Component({\n selector: 'app-org-vault-ciphers',\n templateUrl: '../../vault/ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent {\n @Output() onEventsClicked = new EventEmitter();\n\n organization: Organization;\n accessEvents = false;\n\n protected allCiphers: CipherView[] = [];\n\n constructor(searchService: SearchService, analytics: Angulartics2,\n toasterService: ToasterService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, cipherService: CipherService,\n private apiService: ApiService) {\n super(searchService, analytics, toasterService, i18nService, platformUtilsService, cipherService);\n }\n\n async load(filter: (cipher: CipherView) => boolean = null) {\n if (!this.organization.isAdmin) {\n await super.load(filter);\n return;\n }\n this.accessEvents = this.organization.useEvents;\n this.allCiphers = await this.cipherService.getAllFromApiForOrganization(this.organization.id);\n this.applyFilter(filter);\n this.loaded = true;\n }\n\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\n if (this.organization.isAdmin) {\n await super.applyFilter(filter);\n } else {\n const f = (c: CipherView) => c.organizationId === this.organization.id && (filter == null || filter(c));\n await super.applyFilter(f);\n }\n }\n\n search(timeout: number = null) {\n if (!this.organization.isAdmin) {\n return super.search(timeout);\n }\n this.searchPending = false;\n let filteredCiphers = this.allCiphers;\n if (this.filter != null) {\n filteredCiphers = filteredCiphers.filter(this.filter);\n }\n if (this.searchText == null || this.searchText.trim().length < 2) {\n this.ciphers = filteredCiphers;\n } else {\n this.ciphers = this.searchService.searchCiphersBasic(filteredCiphers, this.searchText);\n }\n }\n\n checkCipher(c: CipherView) {\n // do nothing\n }\n\n events(c: CipherView) {\n this.onEventsClicked.emit(c);\n }\n\n protected deleteCipher(id: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipher(id);\n }\n return this.apiService.deleteCipherAdmin(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return this.organization.isAdmin && c.hasOldAttachments;\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { ModalComponent } from '../../modal.component';\n\nimport { EntityEventsComponent } from '../manage/entity-events.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { GroupingsComponent } from './groupings.component';\n\nconst BroadcasterSubscriptionId = 'OrgVaultComponent';\n\n@Component({\n selector: 'app-org-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n\n organization: Organization;\n collectionId: string;\n type: CipherType;\n\n private modal: ModalComponent = null;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.groupingsComponent.organization = this.organization;\n this.ciphersComponent.organization = this.organization;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.ciphersComponent.searchText = this.groupingsComponent.searchText = qParams.search;\n if (!this.organization.isAdmin) {\n await this.syncService.fullSync(false);\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.ciphersComponent.refresh(),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n }\n await this.groupingsComponent.load();\n\n if (qParams == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (qParams.type) {\n const t = parseInt(qParams.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t, true);\n } else if (qParams.collectionId) {\n this.groupingsComponent.selectedCollectionId = qParams.collectionId;\n await this.filterCollection(qParams.collectionId, true);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n if (qParams.viewEvents != null) {\n const cipher = this.ciphersComponent.ciphers.filter((c) => c.id === qParams.viewEvents);\n if (cipher.length > 0) {\n this.viewEvents(cipher[0]);\n }\n }\n\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { EventService } from '../../services/event.service';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\n\n@Component({\n selector: 'app-entity-events',\n templateUrl: 'entity-events.component.html',\n})\nexport class EntityEventsComponent implements OnInit {\n @Input() name: string;\n @Input() entity: 'user' | 'cipher';\n @Input() entityId: string;\n @Input() organizationId: string;\n @Input() showUser = false;\n\n loading = true;\n loaded = false;\n events: any[];\n start: string;\n end: string;\n continuationToken: string;\n refreshPromise: Promise;\n morePromise: Promise;\n\n private orgUsersUserIdMap = new Map();\n private orgUsersIdMap = new Map();\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private eventService: EventService, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const defaultDates = this.eventService.getDefaultDateFilters();\n this.start = defaultDates[0];\n this.end = defaultDates[1];\n await this.load();\n }\n\n async load() {\n if (this.showUser) {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n response.data.forEach((u) => {\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\n });\n }\n await this.loadEvents(true);\n this.loaded = true;\n }\n\n async loadEvents(clearExisting: boolean) {\n if (this.refreshPromise != null || this.morePromise != null) {\n return;\n }\n\n let dates: string[] = null;\n try {\n dates = this.eventService.formatDateFilters(this.start, this.end);\n } catch (e) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidDateRange'));\n return;\n }\n\n this.loading = true;\n let response: ListResponse;\n try {\n let promise: Promise;\n if (this.entity === 'user') {\n promise = this.apiService.getEventsOrganizationUser(this.organizationId, this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n } else {\n promise = this.apiService.getEventsCipher(this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n }\n if (clearExisting) {\n this.refreshPromise = promise;\n } else {\n this.morePromise = promise;\n }\n response = await promise;\n } catch { }\n\n this.continuationToken = response.continuationToken;\n const events = response.data.map((r) => {\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\n const eventInfo = this.eventService.getEventInfo(r);\n const user = this.showUser && userId != null && this.orgUsersUserIdMap.has(userId) ?\n this.orgUsersUserIdMap.get(userId) : null;\n return {\n message: eventInfo.message,\n appIcon: eventInfo.appIcon,\n appName: eventInfo.appName,\n userId: userId,\n userName: user != null ? user.name : this.showUser ? this.i18nService.t('unknown') : null,\n userEmail: user != null ? user.email : this.showUser ? '' : null,\n date: r.date,\n ip: r.ipAddress,\n type: r.type,\n };\n });\n\n if (!clearExisting && this.events != null && this.events.length > 0) {\n this.events = this.events.concat(events);\n } else {\n this.events = events;\n }\n\n this.loading = false;\n this.morePromise = null;\n this.refreshPromise = null;\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent {\n organization: Organization;\n accessReports = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private messagingService: MessagingService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n this.accessReports = this.organization.useTotp;\n });\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n }\n}\n","import { Component } from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService } from 'jslib/abstractions/import.service';\r\n\r\nimport { ImportComponent as BaseImportComponent } from '../../tools/import.component';\r\n\r\n@Component({\r\n selector: 'app-org-import',\r\n templateUrl: '../../tools/import.component.html',\r\n})\r\nexport class ImportComponent extends BaseImportComponent {\r\n constructor(i18nService: I18nService, analytics: Angulartics2,\r\n toasterService: ToasterService, importService: ImportService,\r\n router: Router, private route: ActivatedRoute) {\r\n super(i18nService, analytics, toasterService, importService, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n this.successNavigate = ['organizations', this.organizationId, 'vault'];\r\n super.ngOnInit();\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from '../../tools/export.component';\n\n@Component({\n selector: 'app-org-export',\n templateUrl: '../../tools/export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n organizationId: string;\n\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService,\n private route: ActivatedRoute) {\n super(cryptoService, i18nService, platformUtilsService, exportService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n });\n }\n\n getExportData() {\n return this.exportService.getOrganizationExport(this.organizationId, this.format);\n }\n\n getFileName() {\n return super.getFileName('org');\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent,\n} from '../../tools/exposed-passwords-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: '../../tools/exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends BaseExposedPasswordsReportComponent {\n constructor(cipherService: CipherService, auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, auditService, componentFactoryResolver, messagingService, userService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent,\n} from '../../tools/inactive-two-factor-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: '../../tools/inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends BaseInactiveTwoFactorReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent,\n} from '../../tools/reused-passwords-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: '../../tools/reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends BaseReusedPasswordsReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent,\n} from '../../tools/unsecured-websites-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: '../../tools/unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends BaseUnsecuredWebsitesReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent,\n} from '../../tools/weak-passwords-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: '../../tools/weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends BaseWeakPasswordsReportComponent {\n constructor(cipherService: CipherService, passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, passwordGenerationService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-org-manage',\n templateUrl: 'manage.component.html',\n})\nexport class ManageComponent implements OnInit {\n organization: Organization;\n accessGroups = false;\n accessEvents = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.accessEvents = this.organization.useEvents;\n this.accessGroups = this.organization.useGroups;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport {\n CollectionDetailsResponse,\n CollectionResponse,\n} from 'jslib/models/response/collectionResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ModalComponent } from '../../modal.component';\nimport { CollectionAddEditComponent } from './collection-add-edit.component';\nimport { EntityUsersComponent } from './entity-users.component';\n\n@Component({\n selector: 'app-org-manage-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n collections: CollectionView[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private collectionService: CollectionService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private platformUtilsService: PlatformUtilsService,\n private userService: UserService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n });\n }\n\n async load() {\n const organization = await this.userService.getOrganization(this.organizationId);\n let response: ListResponse;\n if (organization.isAdmin) {\n response = await this.apiService.getCollections(this.organizationId);\n } else {\n response = await this.apiService.getUserCollections();\n }\n const collections = response.data.filter((c) => c.organizationId === this.organizationId).map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collections);\n this.loading = false;\n }\n\n edit(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n CollectionAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.collectionId = collection != null ? collection.id : null;\n childComponent.onSavedCollection.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedCollection.subscribe(() => {\n this.modal.close();\n this.removeCollection(collection);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(collection: CollectionView) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), collection.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteCollection(this.organizationId, collection.id);\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', collection.name));\n this.removeCollection(collection);\n } catch { }\n }\n\n users(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'collection';\n childComponent.entityId = collection.id;\n childComponent.entityName = collection.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.load();\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeCollection(collection: CollectionView) {\n const index = this.collections.indexOf(collection);\n if (index > -1) {\n this.collections.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-entity-users',\n templateUrl: 'entity-users.component.html',\n})\nexport class EntityUsersComponent implements OnInit {\n @Input() entity: 'group' | 'collection';\n @Input() entityId: string;\n @Input() entityName: string;\n @Input() organizationId: string;\n @Output() onEditedUsers = new EventEmitter();\n\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n\n showSelected = false;\n loading = true;\n formPromise: Promise;\n selectedCount = 0;\n searchText: string;\n\n private allUsers: OrganizationUserUserDetailsResponse[] = [];\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n await this.loadUsers();\n this.loading = false;\n }\n\n get users() {\n if (this.showSelected) {\n return this.allUsers.filter((u) => (u as any).checked);\n } else {\n return this.allUsers;\n }\n }\n\n async loadUsers() {\n const users = await this.apiService.getOrganizationUsers(this.organizationId);\n this.allUsers = users.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'email'));\n if (this.entity === 'group') {\n const response = await this.apiService.getGroupUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => u.id === s);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n }\n });\n }\n } else if (this.entity === 'collection') {\n const response = await this.apiService.getCollectionUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => !u.accessAll && u.id === s.id);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n (user[0] as any).readOnly = s.readOnly;\n }\n });\n }\n }\n\n this.allUsers.forEach((u) => {\n if (this.entity === 'collection' && u.accessAll) {\n (u as any).checked = true;\n }\n if ((u as any).checked) {\n this.selectedCount++;\n }\n });\n }\n\n check(u: OrganizationUserUserDetailsResponse) {\n if (this.entity === 'collection' && u.accessAll) {\n return;\n }\n (u as any).checked = !(u as any).checked;\n this.selectedChanged(u);\n }\n\n selectedChanged(u: OrganizationUserUserDetailsResponse) {\n if ((u as any).checked) {\n this.selectedCount++;\n } else {\n if (this.entity === 'collection') {\n (u as any).readOnly = false;\n }\n this.selectedCount--;\n }\n }\n\n filterSelected(showSelected: boolean) {\n this.showSelected = showSelected;\n }\n\n async submit() {\n try {\n if (this.entity === 'group') {\n const selections = this.users.filter((u) => (u as any).checked).map((u) => u.id);\n this.formPromise = this.apiService.putGroupUsers(this.organizationId, this.entityId, selections);\n } else {\n const selections = this.users.filter((u) => (u as any).checked && !u.accessAll)\n .map((u) => new SelectionReadOnlyRequest(u.id, !!(u as any).readOnly));\n this.formPromise = this.apiService.putCollectionUsers(this.organizationId, this.entityId, selections);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.entity === 'group' ? 'Edited Group Users' : 'Edited Collection Users',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedUsers'));\n this.onEditedUsers.emit();\n } catch { }\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { EventService } from '../../services/event.service';\r\n\r\nimport { EventResponse } from 'jslib/models/response/eventResponse';\r\nimport { ListResponse } from 'jslib/models/response/listResponse';\r\n\r\n@Component({\r\n selector: 'app-org-events',\r\n templateUrl: 'events.component.html',\r\n})\r\nexport class EventsComponent implements OnInit {\r\n loading = true;\r\n loaded = false;\r\n organizationId: string;\r\n events: any[];\r\n start: string;\r\n end: string;\r\n continuationToken: string;\r\n refreshPromise: Promise;\r\n morePromise: Promise;\r\n\r\n private orgUsersUserIdMap = new Map();\r\n private orgUsersIdMap = new Map();\r\n\r\n constructor(private apiService: ApiService, private route: ActivatedRoute,\r\n private eventService: EventService, private i18nService: I18nService,\r\n private toasterService: ToasterService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n const organization = await this.userService.getOrganization(this.organizationId);\r\n if (organization == null || !organization.useEvents) {\r\n this.router.navigate(['/organizations', this.organizationId]);\r\n return;\r\n }\r\n const defaultDates = this.eventService.getDefaultDateFilters();\r\n this.start = defaultDates[0];\r\n this.end = defaultDates[1];\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\r\n response.data.forEach((u) => {\r\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\r\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\r\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\r\n });\r\n await this.loadEvents(true);\r\n this.loaded = true;\r\n }\r\n\r\n async loadEvents(clearExisting: boolean) {\r\n if (this.refreshPromise != null || this.morePromise != null) {\r\n return;\r\n }\r\n\r\n let dates: string[] = null;\r\n try {\r\n dates = this.eventService.formatDateFilters(this.start, this.end);\r\n } catch (e) {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidDateRange'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n let response: ListResponse;\r\n try {\r\n const promise = this.apiService.getEventsOrganization(this.organizationId, dates[0], dates[1],\r\n clearExisting ? null : this.continuationToken);\r\n if (clearExisting) {\r\n this.refreshPromise = promise;\r\n } else {\r\n this.morePromise = promise;\r\n }\r\n response = await promise;\r\n } catch { }\r\n\r\n this.continuationToken = response.continuationToken;\r\n const events = response.data.map((r) => {\r\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\r\n const eventInfo = this.eventService.getEventInfo(r);\r\n const user = userId != null && this.orgUsersUserIdMap.has(userId) ?\r\n this.orgUsersUserIdMap.get(userId) : null;\r\n return {\r\n message: eventInfo.message,\r\n appIcon: eventInfo.appIcon,\r\n appName: eventInfo.appName,\r\n userId: userId,\r\n userName: user != null ? user.name : this.i18nService.t('unknown'),\r\n userEmail: user != null ? user.email : '',\r\n date: r.date,\r\n ip: r.ipAddress,\r\n type: r.type,\r\n };\r\n });\r\n\r\n if (!clearExisting && this.events != null && this.events.length > 0) {\r\n this.events = this.events.concat(events);\r\n } else {\r\n this.events = events;\r\n }\r\n\r\n this.loading = false;\r\n this.morePromise = null;\r\n this.refreshPromise = null;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityUsersComponent } from './entity-users.component';\nimport { GroupAddEditComponent } from './group-add-edit.component';\n\n@Component({\n selector: 'app-org-groups',\n templateUrl: 'groups.component.html',\n})\nexport class GroupsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n groups: GroupResponse[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private userService: UserService,\n private router: Router) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (organization == null || !organization.useGroups) {\n this.router.navigate(['/organizations', this.organizationId]);\n return;\n }\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\n }\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getGroups(this.organizationId);\n const groups = response.data != null && response.data.length > 0 ? response.data : [];\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n this.loading = false;\n }\n\n edit(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n GroupAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.groupId = group != null ? group.id : null;\n childComponent.onSavedGroup.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedGroup.subscribe(() => {\n this.modal.close();\n this.removeGroup(group);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(group: GroupResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteGroupConfirmation'), group.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteGroup(this.organizationId, group.id);\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', group.name));\n this.removeGroup(group);\n } catch { }\n }\n\n users(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'group';\n childComponent.entityId = group.id;\n childComponent.entityName = group.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeGroup(group: GroupResponse) {\n const index = this.groups.indexOf(group);\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityEventsComponent } from './entity-events.component';\nimport { UserAddEditComponent } from './user-add-edit.component';\nimport { UserConfirmComponent } from './user-confirm.component';\nimport { UserGroupsComponent } from './user-groups.component';\n\n@Component({\n selector: 'app-org-people',\n templateUrl: 'people.component.html',\n})\nexport class PeopleComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('groupsTemplate', { read: ViewContainerRef }) groupsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n @ViewChild('confirmTemplate', { read: ViewContainerRef }) confirmModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n users: OrganizationUserUserDetailsResponse[];\n searchText: string;\n status: OrganizationUserStatusType = null;\n statusMap = new Map();\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n actionPromise: Promise;\n accessEvents = false;\n accessGroups = false;\n\n private modal: ModalComponent = null;\n private allUsers: OrganizationUserUserDetailsResponse[];\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private platformUtilsService: PlatformUtilsService, private analytics: Angulartics2,\n private toasterService: ToasterService, private cryptoService: CryptoService,\n private userService: UserService, private router: Router,\n private storageService: StorageService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (!organization.isAdmin) {\n this.router.navigate(['../collections'], { relativeTo: this.route });\n return;\n }\n this.accessEvents = organization.useEvents;\n this.accessGroups = organization.useGroups;\n await this.load();\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (qParams.viewEvents != null) {\n const user = this.users.filter((u) => u.id === qParams.viewEvents);\n if (user.length > 0 && user[0].status === OrganizationUserStatusType.Confirmed) {\n this.events(user[0]);\n }\n }\n if (queryParamsSub != null) {\n queryParamsSub.unsubscribe();\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 { MessagingService } from 'jslib/abstractions/messaging.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';\nimport { TransactionType } from 'jslib/enums/transactionType';\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 transactionType = TransactionType;\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 messagingService: MessagingService, 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(updated: boolean) {\n this.showUpdateLicense = false;\n if (updated) {\n this.load();\n this.messagingService.send('updatedOrgLicense');\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 invoices() {\n return this.billing != null ? this.billing.invoices : null;\n }\n\n get transactions() {\n return this.billing != null ? this.billing.transactions : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : 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 = 522;","import * as jq from 'jquery';\nimport * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport {\n BodyOutputType,\n Toast,\n ToasterConfig,\n ToasterContainerComponent,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n SecurityContext,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport {\n NavigationEnd,\n Router,\n} from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { NotificationsService } from 'jslib/abstractions/notifications.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\nimport { SettingsService } from 'jslib/abstractions/settings.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { RouterService } from './services/router.service';\n\nconst BroadcasterSubscriptionId = 'AppComponent';\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\nconst IdleTimeout = 60000 * 10; // 10 minutes\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n})\nexport class AppComponent implements OnDestroy, OnInit {\n toasterConfig: ToasterConfig = new ToasterConfig({\n showCloseButton: true,\n mouseoverTimerStop: true,\n animation: 'flyRight',\n limit: 5,\n });\n\n private lastActivity: number = null;\n private idleTimer: number = null;\n private isIdle = false;\n\n constructor(private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics,\n private broadcasterService: BroadcasterService, private userService: UserService,\n private tokenService: TokenService, private folderService: FolderService,\n private settingsService: SettingsService, private syncService: SyncService,\n private passwordGenerationService: PasswordGenerationService, private cipherService: CipherService,\n private authService: AuthService, private router: Router, private analytics: Angulartics2,\n private toasterService: ToasterService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private ngZone: NgZone,\n private lockService: LockService, private storageService: StorageService,\n private cryptoService: CryptoService, private collectionService: CollectionService,\n private sanitizer: DomSanitizer, private searchService: SearchService,\n private notificationsService: NotificationsService, private routerService: RouterService) { }\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n window.onmousemove = () => this.recordActivity();\n window.onmousedown = () => this.recordActivity();\n window.ontouchstart = () => this.recordActivity();\n window.onclick = () => this.recordActivity();\n window.onscroll = () => this.recordActivity();\n window.onkeypress = () => this.recordActivity();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'loggedIn':\n case 'loggedOut':\n case 'unlocked':\n this.notificationsService.updateConnection(false);\n break;\n case 'logout':\n this.logOut(!!message.expired);\n break;\n case 'lockVault':\n await this.lockService.lock();\n break;\n case 'locked':\n this.notificationsService.updateConnection(false);\n this.router.navigate(['lock']);\n break;\n case 'syncStarted':\n break;\n case 'syncCompleted':\n break;\n case 'upgradeOrganization':\n const upgradeConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('upgradeOrganizationDesc'), this.i18nService.t('upgradeOrganization'),\n this.i18nService.t('upgradeOrganization'), this.i18nService.t('cancel'));\n if (upgradeConfirmed) {\n this.router.navigate(['organizations', message.organizationId, 'settings', 'billing']);\n }\n break;\n case 'premiumRequired':\n const premiumConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\n if (premiumConfirmed) {\n this.router.navigate(['settings/premium']);\n }\n break;\n case 'showToast':\n this.showToast(message);\n break;\n case 'analyticsEventTrack':\n this.analytics.eventTrack.next({\n action: message.action,\n properties: { label: message.label },\n });\n break;\n default:\n break;\n }\n });\n });\n\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n const modals = Array.from(document.querySelectorAll('.modal'));\n for (const modal of modals) {\n (jq(modal) as any).modal('hide');\n }\n\n if (document.querySelector('.swal-modal') != null) {\n swal.close(undefined);\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n private async logOut(expired: boolean) {\n const userId = await this.userService.getUserId();\n\n await Promise.all([\n this.syncService.setLastSync(new Date(0)),\n this.tokenService.clearToken(),\n this.cryptoService.clearKeys(),\n this.userService.clear(),\n this.settingsService.clear(userId),\n this.cipherService.clear(userId),\n this.folderService.clear(userId),\n this.collectionService.clear(userId),\n this.passwordGenerationService.clear(),\n ]);\n\n this.searchService.clearIndex();\n this.authService.logOut(async () => {\n this.analytics.eventTrack.next({ action: 'Logged Out' });\n if (expired) {\n this.toasterService.popAsync('warning', this.i18nService.t('loggedOut'),\n this.i18nService.t('loginExpired'));\n }\n this.router.navigate(['/']);\n });\n }\n\n private async recordActivity() {\n const now = (new Date()).getTime();\n if (this.lastActivity != null && now - this.lastActivity < 250) {\n return;\n }\n\n this.lastActivity = now;\n this.storageService.save(ConstantsService.lastActiveKey, now);\n\n // Idle states\n if (this.isIdle) {\n this.isIdle = false;\n this.idleStateChanged();\n }\n if (this.idleTimer != null) {\n window.clearTimeout(this.idleTimer);\n this.idleTimer = null;\n }\n this.idleTimer = window.setTimeout(() => {\n if (!this.isIdle) {\n this.isIdle = true;\n this.idleStateChanged();\n }\n }, IdleTimeout);\n }\n\n private showToast(msg: any) {\n const toast: Toast = {\n type: msg.type,\n title: msg.title,\n };\n if (typeof (msg.text) === 'string') {\n toast.body = msg.text;\n } else if (msg.text.length === 1) {\n toast.body = msg.text[0];\n } else {\n let message = '';\n msg.text.forEach((t: string) =>\n message += ('

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

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

\n \n

\n \n \n

{{'noOrganizationsList' | i18n}}

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

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

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

{{'noOrganizationsList' | i18n}}

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

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

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

' + new Date() + '

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

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

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

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

\n \n \n \n
\n
\n","export enum TransactionType {\n Charge = 0,\n Credit = 1,\n PromotionalCredit = 2,\n ReferralCredit = 3,\n Refund = 4,\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 {\r\n Pipe,\r\n PipeTransform,\r\n} from '@angular/core';\r\n\r\n/**\r\n * A pipe that sanitizes HTML and highlights numbers and special characters (in different colors each).\r\n */\r\n@Pipe({ name: 'colorPassword' })\r\nexport class ColorPasswordPipe implements PipeTransform {\r\n transform(password: string) {\r\n let colorizedPassword = '';\r\n for (let i = 0; i < password.length; i++) {\r\n let character = password[i];\r\n let isSpecial = false;\r\n // Sanitize HTML first.\r\n switch (character) {\r\n case '&':\r\n character = '&';\r\n isSpecial = true;\r\n break;\r\n case '<':\r\n character = '<';\r\n isSpecial = true;\r\n break;\r\n case '>':\r\n character = '>';\r\n isSpecial = true;\r\n break;\r\n case ' ':\r\n character = ' ';\r\n isSpecial = true;\r\n break;\r\n default:\r\n break;\r\n }\r\n let type = 'letter';\r\n if (isSpecial || character.match(/[^\\w ]/)) {\r\n type = 'special';\r\n } else if (character.match(/\\d/)) {\r\n type = 'number';\r\n }\r\n colorizedPassword += '' + character + '';\r\n }\r\n return colorizedPassword;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n} from '@angular/core';\r\n\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\n@Directive({\r\n selector: '[appFlexCopy]',\r\n})\r\nexport class FlexCopyDirective {\r\n constructor(private el: ElementRef, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n @HostListener('copy') onCopy() {\r\n if (window == null) {\r\n return;\r\n }\r\n let copyText = '';\r\n const selection = window.getSelection();\r\n for (let i = 0; i < selection.rangeCount; i++) {\r\n const range = selection.getRangeAt(i);\r\n const text = range.toString();\r\n copyText += text;\r\n }\r\n this.platformUtilsService.copyToClipboard(copyText, { window: window });\r\n }\r\n}\r\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 = null;\r\n url: string = null;\r\n size: number = null;\r\n sizeName: string = null;\r\n fileName: string = null;\r\n key: SymmetricCryptoKey = null;\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 { 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 = null;\r\n lastUsedDate: Date = null;\r\n\r\n constructor(ph?: Password) {\r\n if (!ph) {\r\n return;\r\n }\r\n\r\n this.lastUsedDate = ph.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteData } from '../data/secureNoteData';\n\nimport Domain from './domainBase';\n\nimport { SecureNoteView } from '../view/secureNoteView';\n\nexport class SecureNote extends Domain {\n type: SecureNoteType;\n\n constructor(obj?: SecureNoteData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n }\n\n decrypt(orgId: string): Promise {\n return Promise.resolve(new SecureNoteView(this));\n }\n\n toSecureNoteData(): SecureNoteData {\n const n = new SecureNoteData();\n n.type = this.type;\n return n;\n }\n}\n","import { CipherRequest } from './cipherRequest';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nexport class CipherCreateRequest {\r\n cipher: CipherRequest;\r\n collectionIds: string[];\r\n\r\n constructor(cipher: Cipher) {\r\n this.cipher = new CipherRequest(cipher);\r\n this.collectionIds = cipher.collectionIds;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from '../../vault/attachments.component';\n\n@Component({\n selector: 'app-org-vault-attachments',\n templateUrl: '../../vault/attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n organization: Organization;\n\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService, private apiService: ApiService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.organization.isAdmin && this.showFixOldAttachments(attachment)) {\n await super.reuploadCipherAttachment(attachment, true);\n }\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected saveCipherAttachment(file: File) {\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file, this.organization.isAdmin);\n }\n\n protected deleteCipherAttachment(attachmentId: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipherAttachment(attachmentId);\n }\n return this.apiService.deleteCipherAttachmentAdmin(this.cipherId, attachmentId);\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.organization.isAdmin;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCollectionsRequest } from 'jslib/models/request/cipherCollectionsRequest';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from '../../vault/collections.component';\n\n@Component({\n selector: 'app-org-vault-collections',\n templateUrl: '../../vault/collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService,\n private apiService: ApiService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected loadCipherCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCipherCollections();\n }\n return this.collectionIds;\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected saveCollections() {\n if (this.organization.isAdmin) {\n const request = new CipherCollectionsRequest(this.cipherDomain.collectionIds);\n return this.apiService.putCipherCollectionsAdmin(this.cipherId, request);\n } else {\n return super.saveCollections();\n }\n }\n}\n","export class CipherCollectionsRequest {\n collectionIds: string[];\n\n constructor(collectionIds: string[]) {\n this.collectionIds = collectionIds == null ? [] : collectionIds;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\nimport { CollectionRequest } from 'jslib/models/request/collectionRequest';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-collection-add-edit',\n templateUrl: 'collection-add-edit.component.html',\n})\nexport class CollectionAddEditComponent implements OnInit {\n @Input() collectionId: string;\n @Input() organizationId: string;\n @Output() onSavedCollection = new EventEmitter();\n @Output() onDeletedCollection = new EventEmitter();\n\n loading = true;\n editMode: boolean = false;\n accessGroups: boolean = false;\n title: string;\n name: string;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n deletePromise: Promise;\n\n private orgKey: SymmetricCryptoKey;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private userService: UserService) { }\n\n async ngOnInit() {\n const organization = await this.userService.getOrganization(this.organizationId);\n this.accessGroups = organization.useGroups;\n this.editMode = this.loading = this.collectionId != null;\n if (this.accessGroups) {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n this.groups = groupsResponse.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n this.orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n\n if (this.editMode) {\n this.editMode = true;\n this.title = this.i18nService.t('editCollection');\n try {\n const collection = await this.apiService.getCollectionDetails(this.organizationId, this.collectionId);\n this.name = await this.cryptoService.decryptToUtf8(new CipherString(collection.name), this.orgKey);\n if (collection.groups != null && this.groups.length > 0) {\n collection.groups.forEach((s) => {\n const group = this.groups.filter((g) => !g.accessAll && g.id === s.id);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n (group[0] as any).readOnly = s.readOnly;\n }\n });\n }\n } catch { }\n } else {\n this.title = this.i18nService.t('addCollection');\n }\n\n this.groups.forEach((g) => {\n if (g.accessAll) {\n (g as any).checked = true;\n }\n });\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n if (g.accessAll) {\n return;\n }\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n if (this.orgKey == null) {\n throw new Error('No encryption key for this organization.');\n }\n\n const request = new CollectionRequest();\n request.name = (await this.cryptoService.encrypt(this.name, this.orgKey)).encryptedString;\n request.groups = this.groups.filter((g) => (g as any).checked && !g.accessAll)\n .map((g) => new SelectionReadOnlyRequest(g.id, !!(g as any).readOnly));\n\n try {\n if (this.editMode) {\n this.formPromise = this.apiService.putCollection(this.organizationId, this.collectionId, request);\n } else {\n this.formPromise = this.apiService.postCollection(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Collection' : 'Created Collection' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t(this.editMode ? 'editedCollectionId' : 'createdCollectionId', this.name));\n this.onSavedCollection.emit();\n } catch { }\n }\n\n async delete() {\n if (!this.editMode) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), this.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.deletePromise = this.apiService.deleteCollection(this.organizationId, this.collectionId);\n await this.deletePromise;\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', this.name));\n this.onDeletedCollection.emit();\n } catch { }\n }\n}\n","import { Collection } from '../domain/collection';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class CollectionRequest {\n name: string;\n groups: SelectionReadOnlyRequest[] = [];\n\n constructor(collection?: Collection) {\n if (collection == null) {\n return;\n }\n this.name = collection.name ? collection.name.encryptedString : null;\n }\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { GroupRequest } from 'jslib/models/request/groupRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\n@Component({\r\n selector: 'app-group-add-edit',\r\n templateUrl: 'group-add-edit.component.html',\r\n})\r\nexport class GroupAddEditComponent implements OnInit {\r\n @Input() groupId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedGroup = new EventEmitter();\r\n @Output() onDeletedGroup = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n name: string;\r\n externalId: string;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.groupId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editGroup');\r\n try {\r\n const group = await this.apiService.getGroupDetails(this.organizationId, this.groupId);\r\n this.access = group.accessAll ? 'all' : 'selected';\r\n this.name = group.name;\r\n this.externalId = group.externalId;\r\n if (group.collections != null && this.collections != null) {\r\n group.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('addGroup');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n const request = new GroupRequest();\r\n request.name = this.name;\r\n request.externalId = this.externalId;\r\n request.accessAll = this.access === 'all';\r\n if (!request.accessAll) {\r\n request.collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n this.formPromise = this.apiService.putGroup(this.organizationId, this.groupId, request);\r\n } else {\r\n this.formPromise = this.apiService.postGroup(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Group' : 'Created Group' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedGroupId' : 'createdGroupId', this.name));\r\n this.onSavedGroup.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteGroupConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteGroup(this.organizationId, this.groupId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', this.name));\r\n this.onDeletedGroup.emit();\r\n } catch { }\r\n }\r\n}\r\n","export class OrganizationUserConfirmRequest {\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { OrganizationUserInviteRequest } from 'jslib/models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateRequest } from 'jslib/models/request/organizationUserUpdateRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Component({\r\n selector: 'app-user-add-edit',\r\n templateUrl: 'user-add-edit.component.html',\r\n})\r\nexport class UserAddEditComponent implements OnInit {\r\n @Input() name: string;\r\n @Input() organizationUserId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedUser = new EventEmitter();\r\n @Output() onDeletedUser = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n emails: string;\r\n type: OrganizationUserType = OrganizationUserType.User;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n organizationUserType = OrganizationUserType;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.organizationUserId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editUser');\r\n try {\r\n const user = await this.apiService.getOrganizationUser(this.organizationId, this.organizationUserId);\r\n this.access = user.accessAll ? 'all' : 'selected';\r\n this.type = user.type;\r\n if (user.collections != null && this.collections != null) {\r\n user.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('inviteUser');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n let collections: SelectionReadOnlyRequest[] = null;\r\n if (this.access !== 'all') {\r\n collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n const request = new OrganizationUserUpdateRequest();\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.putOrganizationUser(this.organizationId, this.organizationUserId,\r\n request);\r\n } else {\r\n const request = new OrganizationUserInviteRequest();\r\n request.emails = this.emails.trim().split(/\\s*,\\s*/);\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.postOrganizationUserInvite(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited User' : 'Invited User' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedUserId' : 'invitedUsers', this.name));\r\n this.onSavedUser.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('removeUserConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteOrganizationUser(this.organizationId, this.organizationUserId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted User' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', this.name));\r\n this.onDeletedUser.emit();\r\n } catch { }\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-confirm',\n templateUrl: 'user-confirm.component.html',\n})\nexport class UserConfirmComponent implements OnInit {\n @Input() name: string;\n @Input() userId: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onConfirmedUser = new EventEmitter();\n\n dontAskAgain = false;\n loading = true;\n fingerprint: string;\n formPromise: Promise;\n\n private publicKey: Uint8Array = null;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private storageService: StorageService) { }\n\n async ngOnInit() {\n try {\n const publicKeyResponse = await this.apiService.getUserPublicKey(this.userId);\n if (publicKeyResponse != null) {\n this.publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n const fingerprint = await this.cryptoService.getFingerprint(this.userId, this.publicKey.buffer);\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n } catch { }\n this.loading = false;\n }\n\n async submit() {\n if (this.loading) {\n return;\n }\n\n if (this.dontAskAgain) {\n await this.storageService.save(ConstantsService.autoConfirmFingerprints, true);\n }\n\n try {\n this.formPromise = this.doConfirmation();\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', this.name));\n this.onConfirmedUser.emit();\n } catch { }\n }\n\n private async doConfirmation() {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, this.publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, this.organizationUserId, request);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserUpdateGroupsRequest } from 'jslib/models/request/organizationUserUpdateGroupsRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-groups',\n templateUrl: 'user-groups.component.html',\n})\nexport class UserGroupsComponent implements OnInit {\n @Input() name: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onSavedUser = new EventEmitter();\n\n loading = true;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n const groups = groupsResponse.data.map((r) => r);\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n\n try {\n const userGroups = await this.apiService.getOrganizationUserGroups(\n this.organizationId, this.organizationUserId);\n if (userGroups != null && this.groups != null) {\n userGroups.forEach((ug) => {\n const group = this.groups.filter((g) => g.id === ug);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n }\n });\n }\n } catch { }\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n const request = new OrganizationUserUpdateGroupsRequest();\n request.groupIds = this.groups.filter((g) => (g as any).checked).map((g) => g.id);\n\n try {\n this.formPromise = this.apiService.putOrganizationUserGroups(this.organizationId, this.organizationUserId,\n request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Edited User Groups' });\n this.toasterService.popAsync('success', null, this.i18nService.t('editedGroupsForUser', this.name));\n this.onSavedUser.emit();\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-organization',\n templateUrl: 'delete-organization.component.html',\n})\nexport class DeleteOrganizationComponent {\n organizationId: string;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteOrganization(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationDeleted'),\n this.i18nService.t('organizationDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { SeatRequest } from 'jslib/models/request/seatRequest';\n\n@Component({\n selector: 'app-adjust-seats',\n templateUrl: 'adjust-seats.component.html',\n})\nexport class AdjustSeatsComponent {\n @Input() seatPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n seatAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new SeatRequest();\n request.seatAdjustment = this.seatAdjustment;\n if (!this.add) {\n request.seatAdjustment *= -1;\n }\n\n this.formPromise = this.apiService.postOrganizationSeat(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Seats' : 'Removed Seats' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedSeats', request.seatAdjustment.toString()));\n this.onAdjusted.emit(this.seatAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedSeatTotal(): number {\n return this.seatAdjustment * this.seatPrice;\n }\n}\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appBoxRow]',\r\n})\r\nexport class BoxRowDirective implements OnInit {\r\n el: HTMLElement = null;\r\n formEls: Element[];\r\n\r\n constructor(private elRef: ElementRef) {\r\n this.el = elRef.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formEls = Array.from(this.el.querySelectorAll('input:not([type=\"hidden\"]), select, textarea'));\r\n this.formEls.forEach((formEl) => {\r\n formEl.addEventListener('focus', (event: Event) => {\r\n this.el.classList.add('active');\r\n }, false);\r\n\r\n formEl.addEventListener('blur', (event: Event) => {\r\n this.el.classList.remove('active');\r\n }, false);\r\n });\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick(event: Event) {\r\n const target = event.target as HTMLElement;\r\n if (target !== this.el && !target.classList.contains('progress') &&\r\n !target.classList.contains('progress-bar')) {\r\n return;\r\n }\r\n\r\n if (this.formEls.length > 0) {\r\n const formEl = (this.formEls[0] as HTMLElement);\r\n if (formEl.tagName.toLowerCase() === 'input') {\r\n const inputEl = (formEl as HTMLInputElement);\r\n if (inputEl.type != null && inputEl.type.toLowerCase() === 'checkbox') {\r\n inputEl.click();\r\n return;\r\n }\r\n }\r\n formEl.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n forwardRef,\r\n HostListener,\r\n Input,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n NgControl,\r\n} from '@angular/forms';\r\n\r\n// ref: https://juristr.com/blog/2018/02/ng-true-value-directive/\r\n@Directive({\r\n selector: 'input[type=checkbox][appTrueFalseValue]',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => TrueFalseValueDirective),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TrueFalseValueDirective implements ControlValueAccessor {\r\n @Input() trueValue = true;\r\n @Input() falseValue = false;\r\n\r\n constructor(private elementRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @HostListener('change', ['$event'])\r\n onHostChange(ev: any) {\r\n this.propagateChange(ev.target.checked ? this.trueValue : this.falseValue);\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj === this.trueValue) {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', true);\r\n } else {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false);\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void { /* nothing */ }\r\n\r\n setDisabledState?(isDisabled: boolean): void { /* nothing */ }\r\n\r\n private propagateChange = (_: any) => { /* nothing */ };\r\n}\r\n","import { DeviceType } from '../enums/deviceType';\n\nimport { ApiService as ApiServiceAbstraction } from '../abstractions/api.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\n\nimport { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\nimport { EmailRequest } from '../models/request/emailRequest';\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { GroupRequest } from '../models/request/groupRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KdfRequest } from '../models/request/kdfRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\nimport { PasswordRequest } from '../models/request/passwordRequest';\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\nimport { PaymentRequest } from '../models/request/paymentRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { RegisterRequest } from '../models/request/registerRequest';\nimport { SeatRequest } from '../models/request/seatRequest';\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\nimport { StorageRequest } from '../models/request/storageRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\n\nimport { BillingResponse } from '../models/response/billingResponse';\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport {\n CollectionGroupDetailsResponse,\n CollectionResponse,\n} from '../models/response/collectionResponse';\nimport { DomainsResponse } from '../models/response/domainsResponse';\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { EventResponse } from '../models/response/eventResponse';\nimport { FolderResponse } from '../models/response/folderResponse';\nimport {\n GroupDetailsResponse,\n GroupResponse,\n} from '../models/response/groupResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\nimport { ListResponse } from '../models/response/listResponse';\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\nimport { OrganizationResponse } from '../models/response/organizationResponse';\nimport {\n OrganizationUserDetailsResponse,\n OrganizationUserUserDetailsResponse,\n} from '../models/response/organizationUserResponse';\nimport { PreloginResponse } from '../models/response/preloginResponse';\nimport { ProfileResponse } from '../models/response/profileResponse';\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\nimport { SyncResponse } from '../models/response/syncResponse';\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from '../models/response/twoFactorU2fResponse';\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\n\nexport class ApiService implements ApiServiceAbstraction {\n urlsSet: boolean = false;\n apiBaseUrl: string;\n identityBaseUrl: string;\n\n private deviceType: string;\n private isWebClient = false;\n private isDesktopClient = false;\n private usingBaseUrl = false;\n\n constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService,\n private logoutCallback: (expired: boolean) => Promise) {\n const device = platformUtilsService.getDevice();\n this.deviceType = device.toString();\n this.isWebClient = device === DeviceType.IEBrowser || device === DeviceType.ChromeBrowser ||\n device === DeviceType.EdgeBrowser || device === DeviceType.FirefoxBrowser ||\n device === DeviceType.OperaBrowser || device === DeviceType.SafariBrowser ||\n device === DeviceType.UnknownBrowser || device === DeviceType.VivaldiBrowser;\n this.isDesktopClient = device === DeviceType.WindowsDesktop || device === DeviceType.MacOsDesktop ||\n device === DeviceType.LinuxDesktop;\n }\n\n setUrls(urls: EnvironmentUrls): void {\n this.urlsSet = true;\n\n if (urls.base != null) {\n this.usingBaseUrl = true;\n this.apiBaseUrl = urls.base + '/api';\n this.identityBaseUrl = urls.base + '/identity';\n return;\n }\n\n if (urls.api != null && urls.identity != null) {\n this.apiBaseUrl = urls.api;\n this.identityBaseUrl = urls.identity;\n return;\n }\n\n /* tslint:disable */\n // Local Dev\n //this.apiBaseUrl = 'http://localhost:4000';\n //this.identityBaseUrl = 'http://localhost:33656';\n\n // Production\n this.apiBaseUrl = 'https://api.bitwarden.com';\n this.identityBaseUrl = 'https://identity.bitwarden.com';\n /* tslint:enable */\n }\n\n // Auth APIs\n\n async postIdentityToken(request: TokenRequest): Promise {\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\n body: this.qsStringify(request.toIdentityToken(this.platformUtilsService.identityClientId)),\n credentials: this.getCredentials(),\n cache: 'no-cache',\n headers: new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n 'Accept': 'application/json',\n 'Device-Type': this.deviceType,\n }),\n method: 'POST',\n }));\n\n let responseJson: any = null;\n const typeHeader = response.headers.get('content-type');\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\n responseJson = await response.json();\n }\n\n if (responseJson != null) {\n if (response.status === 200) {\n return new IdentityTokenResponse(responseJson);\n } else if (response.status === 400 && responseJson.TwoFactorProviders2 &&\n Object.keys(responseJson.TwoFactorProviders2).length) {\n await this.tokenService.clearTwoFactorToken(request.email);\n return new IdentityTwoFactorResponse(responseJson);\n }\n }\n\n return Promise.reject(new ErrorResponse(responseJson, response.status, true));\n }\n\n async refreshIdentityToken(): Promise {\n try {\n await this.doRefreshToken();\n } catch (e) {\n return Promise.reject(null);\n }\n }\n\n // Account APIs\n\n async getProfile(): Promise {\n const r = await this.send('GET', '/accounts/profile', null, true, true);\n return new ProfileResponse(r);\n }\n\n async getUserBilling(): Promise {\n const r = await this.send('GET', '/accounts/billing', null, true, true);\n return new BillingResponse(r);\n }\n\n async putProfile(request: UpdateProfileRequest): Promise {\n const r = await this.send('PUT', '/accounts/profile', request, true, true);\n return new ProfileResponse(r);\n }\n\n async postPrelogin(request: PreloginRequest): Promise {\n const r = await this.send('POST', '/accounts/prelogin', request, false, true);\n return new PreloginResponse(r);\n }\n\n postEmailToken(request: EmailTokenRequest): Promise {\n return this.send('POST', '/accounts/email-token', request, true, false);\n }\n\n postEmail(request: EmailRequest): Promise {\n return this.send('POST', '/accounts/email', request, true, false);\n }\n\n postPassword(request: PasswordRequest): Promise {\n return this.send('POST', '/accounts/password', request, true, false);\n }\n\n postSecurityStamp(request: PasswordVerificationRequest): Promise {\n return this.send('POST', '/accounts/security-stamp', request, true, false);\n }\n\n deleteAccount(request: PasswordVerificationRequest): Promise {\n return this.send('DELETE', '/accounts', request, true, false);\n }\n\n async getAccountRevisionDate(): Promise {\n const r = await this.send('GET', '/accounts/revision-date', null, true, true);\n return r as number;\n }\n\n postPasswordHint(request: PasswordHintRequest): Promise {\n return this.send('POST', '/accounts/password-hint', request, false, false);\n }\n\n postRegister(request: RegisterRequest): Promise {\n return this.send('POST', '/accounts/register', request, false, false);\n }\n\n postPremium(data: FormData): Promise {\n return this.send('POST', '/accounts/premium', data, true, false);\n }\n\n postReinstatePremium(): Promise {\n return this.send('POST', '/accounts/reinstate-premium', null, true, false);\n }\n\n postCancelPremium(): Promise {\n return this.send('POST', '/accounts/cancel-premium', null, true, false);\n }\n\n postAccountStorage(request: StorageRequest): Promise {\n return this.send('POST', '/accounts/storage', request, true, false);\n }\n\n postAccountPayment(request: PaymentRequest): Promise {\n return this.send('POST', '/accounts/payment', request, true, false);\n }\n\n postAccountLicense(data: FormData): Promise {\n return this.send('POST', '/accounts/license', data, true, false);\n }\n\n postAccountKeys(request: KeysRequest): Promise {\n return this.send('POST', '/accounts/keys', request, true, false);\n }\n\n postAccountKey(request: UpdateKeyRequest): Promise {\n return this.send('POST', '/accounts/key', request, true, false);\n }\n\n postAccountVerifyEmail(): Promise {\n return this.send('POST', '/accounts/verify-email', null, true, false);\n }\n\n postAccountVerifyEmailToken(request: VerifyEmailRequest): Promise {\n return this.send('POST', '/accounts/verify-email-token', request, false, false);\n }\n\n postAccountRecoverDelete(request: DeleteRecoverRequest): Promise {\n return this.send('POST', '/accounts/delete-recover', request, false, false);\n }\n\n postAccountRecoverDeleteToken(request: VerifyDeleteRecoverRequest): Promise {\n return this.send('POST', '/accounts/delete-recover-token', request, false, false);\n }\n\n postAccountKdf(request: KdfRequest): Promise {\n return this.send('POST', '/accounts/kdf', request, true, false);\n }\n\n // Folder APIs\n\n async getFolder(id: string): Promise {\n const r = await this.send('GET', '/folders/' + id, null, true, true);\n return new FolderResponse(r);\n }\n\n async postFolder(request: FolderRequest): Promise {\n const r = await this.send('POST', '/folders', request, true, true);\n return new FolderResponse(r);\n }\n\n async putFolder(id: string, request: FolderRequest): Promise {\n const r = await this.send('PUT', '/folders/' + id, request, true, true);\n return new FolderResponse(r);\n }\n\n deleteFolder(id: string): Promise {\n return this.send('DELETE', '/folders/' + id, null, true, false);\n }\n\n // Cipher APIs\n\n async getCipher(id: string): Promise {\n const r = await this.send('GET', '/ciphers/' + id, null, true, true);\n return new CipherResponse(r);\n }\n\n async getCipherAdmin(id: string): Promise {\n const r = await this.send('GET', '/ciphers/' + id + '/admin', null, true, true);\n return new CipherResponse(r);\n }\n\n async getCiphersOrganization(organizationId: string): Promise> {\n const r = await this.send('GET', '/ciphers/organization-details?organizationId=' + organizationId,\n null, true, true);\n return new ListResponse(r, CipherResponse);\n }\n\n async postCipher(request: CipherRequest): Promise {\n const r = await this.send('POST', '/ciphers', request, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherCreate(request: CipherCreateRequest): Promise {\n const r = await this.send('POST', '/ciphers/create', request, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherAdmin(request: CipherCreateRequest): Promise {\n const r = await this.send('POST', '/ciphers/admin', request, true, true);\n return new CipherResponse(r);\n }\n\n async putCipher(id: string, request: CipherRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id, request, true, true);\n return new CipherResponse(r);\n }\n\n async putCipherAdmin(id: string, request: CipherRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id + '/admin', request, true, true);\n return new CipherResponse(r);\n }\n\n deleteCipher(id: string): Promise {\n return this.send('DELETE', '/ciphers/' + id, null, true, false);\n }\n\n deleteCipherAdmin(id: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/admin', null, true, false);\n }\n\n deleteManyCiphers(request: CipherBulkDeleteRequest): Promise {\n return this.send('DELETE', '/ciphers', request, true, false);\n }\n\n putMoveCiphers(request: CipherBulkMoveRequest): Promise {\n return this.send('PUT', '/ciphers/move', request, true, false);\n }\n\n async putShareCipher(id: string, request: CipherShareRequest): Promise {\n const r = await this.send('PUT', '/ciphers/' + id + '/share', request, true, true);\n return new CipherResponse(r);\n }\n\n putShareCiphers(request: CipherBulkShareRequest): Promise {\n return this.send('PUT', '/ciphers/share', request, true, false);\n }\n\n putCipherCollections(id: string, request: CipherCollectionsRequest): Promise {\n return this.send('PUT', '/ciphers/' + id + '/collections', request, true, false);\n }\n\n putCipherCollectionsAdmin(id: string, request: CipherCollectionsRequest): Promise {\n return this.send('PUT', '/ciphers/' + id + '/collections-admin', request, true, false);\n }\n\n postPurgeCiphers(request: PasswordVerificationRequest, organizationId: string = null): Promise {\n let path = '/ciphers/purge';\n if (organizationId != null) {\n path += '?organizationId=' + organizationId;\n }\n return this.send('POST', path, request, true, false);\n }\n\n postImportCiphers(request: ImportCiphersRequest): Promise {\n return this.send('POST', '/ciphers/import', request, true, false);\n }\n\n postImportOrganizationCiphers(organizationId: string, request: ImportOrganizationCiphersRequest): Promise {\n return this.send('POST', '/ciphers/import-organization?organizationId=' + organizationId, request, true, false);\n }\n\n // Attachments APIs\n\n async postCipherAttachment(id: string, data: FormData): Promise {\n const r = await this.send('POST', '/ciphers/' + id + '/attachment', data, true, true);\n return new CipherResponse(r);\n }\n\n async postCipherAttachmentAdmin(id: string, data: FormData): Promise {\n const r = await this.send('POST', '/ciphers/' + id + '/attachment-admin', data, true, true);\n return new CipherResponse(r);\n }\n\n deleteCipherAttachment(id: string, attachmentId: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId, null, true, false);\n }\n\n deleteCipherAttachmentAdmin(id: string, attachmentId: string): Promise {\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId + '/admin', null, true, false);\n }\n\n postShareCipherAttachment(id: string, attachmentId: string, data: FormData,\n organizationId: string): Promise {\n return this.send('POST', '/ciphers/' + id + '/attachment/' +\n attachmentId + '/share?organizationId=' + organizationId, data, true, false);\n }\n\n // Collections APIs\n\n async getCollectionDetails(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/details',\n null, true, true);\n return new CollectionGroupDetailsResponse(r);\n }\n\n async getUserCollections(): Promise> {\n const r = await this.send('GET', '/collections', null, true, true);\n return new ListResponse(r, CollectionResponse);\n }\n\n async getCollections(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections', null, true, true);\n return new ListResponse(r, CollectionResponse);\n }\n\n async getCollectionUsers(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/users',\n null, true, true);\n return r.map((dr: any) => new SelectionReadOnlyResponse(dr));\n }\n\n async postCollection(organizationId: string, request: CollectionRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/collections', request, true, true);\n return new CollectionResponse(r);\n }\n\n async putCollection(organizationId: string, id: string, request: CollectionRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id,\n request, true, true);\n return new CollectionResponse(r);\n }\n\n async putCollectionUsers(organizationId: string, id: string, request: SelectionReadOnlyRequest[]): Promise {\n await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id + '/users',\n request, true, false);\n }\n\n deleteCollection(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/collections/' + id, null, true, false);\n }\n\n deleteCollectionUser(organizationId: string, id: string, organizationUserId: string): Promise {\n return this.send('DELETE',\n '/organizations/' + organizationId + '/collections/' + id + '/user/' + organizationUserId,\n null, true, false);\n }\n\n // Groups APIs\n\n async getGroupDetails(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/details',\n null, true, true);\n return new GroupDetailsResponse(r);\n }\n\n async getGroups(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups', null, true, true);\n return new ListResponse(r, GroupResponse);\n }\n\n async getGroupUsers(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/users',\n null, true, true);\n return r;\n }\n\n async postGroup(organizationId: string, request: GroupRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/groups', request, true, true);\n return new GroupResponse(r);\n }\n\n async putGroup(organizationId: string, id: string, request: GroupRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id, request, true, true);\n return new GroupResponse(r);\n }\n\n async putGroupUsers(organizationId: string, id: string, request: string[]): Promise {\n await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id + '/users', request, true, false);\n }\n\n deleteGroup(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/groups/' + id, null, true, false);\n }\n\n deleteGroupUser(organizationId: string, id: string, organizationUserId: string): Promise {\n return this.send('DELETE',\n '/organizations/' + organizationId + '/groups/' + id + '/user/' + organizationUserId, null, true, false);\n }\n\n // Organization User APIs\n\n async getOrganizationUser(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id, null, true, true);\n return new OrganizationUserDetailsResponse(r);\n }\n\n async getOrganizationUserGroups(organizationId: string, id: string): Promise {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id + '/groups',\n null, true, true);\n return r;\n }\n\n async getOrganizationUsers(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/users', null, true, true);\n return new ListResponse(r, OrganizationUserUserDetailsResponse);\n }\n\n postOrganizationUserInvite(organizationId: string, request: OrganizationUserInviteRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/invite', request, true, false);\n }\n\n postOrganizationUserReinvite(organizationId: string, id: string): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/reinvite', null, true, false);\n }\n\n postOrganizationUserAccept(organizationId: string, id: string,\n request: OrganizationUserAcceptRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/accept', request, true, false);\n }\n\n postOrganizationUserConfirm(organizationId: string, id: string,\n request: OrganizationUserConfirmRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/confirm',\n request, true, false);\n }\n\n putOrganizationUser(organizationId: string, id: string, request: OrganizationUserUpdateRequest): Promise {\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id, request, true, false);\n }\n\n putOrganizationUserGroups(organizationId: string, id: string,\n request: OrganizationUserUpdateGroupsRequest): Promise {\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id + '/groups', request, true, false);\n }\n\n deleteOrganizationUser(organizationId: string, id: string): Promise {\n return this.send('DELETE', '/organizations/' + organizationId + '/users/' + id, null, true, false);\n }\n\n // Sync APIs\n\n async getSync(): Promise {\n const path = this.isDesktopClient || this.isWebClient ? '/sync?excludeDomains=true' : '/sync';\n const r = await this.send('GET', path, null, true, true);\n return new SyncResponse(r);\n }\n\n async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise {\n return this.send('POST', '/organizations/' + organizationId + '/import', request, true, false);\n }\n\n // Settings APIs\n\n async getSettingsDomains(): Promise {\n const r = await this.send('GET', '/settings/domains', null, true, true);\n return new DomainsResponse(r);\n }\n\n async putSettingsDomains(request: UpdateDomainsRequest): Promise {\n const r = await this.send('PUT', '/settings/domains', request, true, true);\n return new DomainsResponse(r);\n }\n\n // Two-factor APIs\n\n async getTwoFactorProviders(): Promise> {\n const r = await this.send('GET', '/two-factor', null, true, true);\n return new ListResponse(r, TwoFactorProviderResponse);\n }\n\n async getTwoFactorOrganizationProviders(organizationId: string): Promise> {\n const r = await this.send('GET', '/organizations/' + organizationId + '/two-factor', null, true, true);\n return new ListResponse(r, TwoFactorProviderResponse);\n }\n\n async getTwoFactorAuthenticator(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-authenticator', request, true, true);\n return new TwoFactorAuthenticatorResponse(r);\n }\n\n async getTwoFactorEmail(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-email', request, true, true);\n return new TwoFactorEmailResponse(r);\n }\n\n async getTwoFactorDuo(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async getTwoFactorOrganizationDuo(organizationId: string,\n request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/organizations/' + organizationId + '/two-factor/get-duo',\n request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async getTwoFactorYubiKey(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-yubikey', request, true, true);\n return new TwoFactorYubiKeyResponse(r);\n }\n\n async getTwoFactorU2f(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async getTwoFactorU2fChallenge(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-u2f-challenge', request, true, true);\n return new ChallengeResponse(r);\n }\n\n async getTwoFactorRecover(request: PasswordVerificationRequest): Promise {\n const r = await this.send('POST', '/two-factor/get-recover', request, true, true);\n return new TwoFactorRecoverResponse(r);\n }\n\n async putTwoFactorAuthenticator(\n request: UpdateTwoFactorAuthenticatorRequest): Promise {\n const r = await this.send('PUT', '/two-factor/authenticator', request, true, true);\n return new TwoFactorAuthenticatorResponse(r);\n }\n\n async putTwoFactorEmail(request: UpdateTwoFactorEmailRequest): Promise {\n const r = await this.send('PUT', '/two-factor/email', request, true, true);\n return new TwoFactorEmailResponse(r);\n }\n\n async putTwoFactorDuo(request: UpdateTwoFactorDuoRequest): Promise {\n const r = await this.send('PUT', '/two-factor/duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async putTwoFactorOrganizationDuo(organizationId: string,\n request: UpdateTwoFactorDuoRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/duo', request, true, true);\n return new TwoFactorDuoResponse(r);\n }\n\n async putTwoFactorYubiKey(request: UpdateTwoFactorYubioOtpRequest): Promise {\n const r = await this.send('PUT', '/two-factor/yubikey', request, true, true);\n return new TwoFactorYubiKeyResponse(r);\n }\n\n async putTwoFactorU2f(request: UpdateTwoFactorU2fRequest): Promise {\n const r = await this.send('PUT', '/two-factor/u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async deleteTwoFactorU2f(request: UpdateTwoFactorU2fDeleteRequest): Promise {\n const r = await this.send('DELETE', '/two-factor/u2f', request, true, true);\n return new TwoFactorU2fResponse(r);\n }\n\n async putTwoFactorDisable(request: TwoFactorProviderRequest): Promise {\n const r = await this.send('PUT', '/two-factor/disable', request, true, true);\n return new TwoFactorProviderResponse(r);\n }\n\n async putTwoFactorOrganizationDisable(organizationId: string,\n request: TwoFactorProviderRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/disable',\n request, true, true);\n return new TwoFactorProviderResponse(r);\n }\n\n postTwoFactorRecover(request: TwoFactorRecoveryRequest): Promise {\n return this.send('POST', '/two-factor/recover', request, false, false);\n }\n\n postTwoFactorEmailSetup(request: TwoFactorEmailRequest): Promise {\n return this.send('POST', '/two-factor/send-email', request, true, false);\n }\n\n postTwoFactorEmail(request: TwoFactorEmailRequest): Promise {\n return this.send('POST', '/two-factor/send-email-login', request, false, false);\n }\n\n // Organization APIs\n\n async getOrganization(id: string): Promise {\n const r = await this.send('GET', '/organizations/' + id, null, true, true);\n return new OrganizationResponse(r);\n }\n\n async getOrganizationBilling(id: string): Promise {\n const r = await this.send('GET', '/organizations/' + id + '/billing', null, true, true);\n return new OrganizationBillingResponse(r);\n }\n\n async getOrganizationLicense(id: string, installationId: string): Promise {\n return this.send('GET', '/organizations/' + id + '/license?installationId=' + installationId,\n null, true, true);\n }\n\n async postOrganization(request: OrganizationCreateRequest): Promise {\n const r = await this.send('POST', '/organizations', request, true, true);\n return new OrganizationResponse(r);\n }\n\n async putOrganization(id: string, request: OrganizationUpdateRequest): Promise {\n const r = await this.send('PUT', '/organizations/' + id, request, true, true);\n return new OrganizationResponse(r);\n }\n\n postLeaveOrganization(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/leave', null, true, false);\n }\n\n async postOrganizationLicense(data: FormData): Promise {\n const r = await this.send('POST', '/organizations/license', data, true, true);\n return new OrganizationResponse(r);\n }\n\n async postOrganizationLicenseUpdate(id: string, data: FormData): Promise {\n return this.send('POST', '/organizations/' + id + '/license', data, true, false);\n }\n\n postOrganizationSeat(id: string, request: SeatRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/seat', request, true, false);\n }\n\n postOrganizationStorage(id: string, request: StorageRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/storage', request, true, false);\n }\n\n postOrganizationPayment(id: string, request: PaymentRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/payment', request, true, false);\n }\n\n postOrganizationVerifyBank(id: string, request: VerifyBankRequest): Promise {\n return this.send('POST', '/organizations/' + id + '/verify-bank', request, true, false);\n }\n\n postOrganizationCancel(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/cancel', null, true, false);\n }\n\n postOrganizationReinstate(id: string): Promise {\n return this.send('POST', '/organizations/' + id + '/reinstate', null, true, false);\n }\n\n deleteOrganization(id: string, request: PasswordVerificationRequest): Promise {\n return this.send('DELETE', '/organizations/' + id, request, true, false);\n }\n\n // Event APIs\n\n async getEvents(start: string, end: string, token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/events', start, end, token), null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsCipher(id: string, start: string, end: string,\n token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/ciphers/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsOrganization(id: string, start: string, end: string,\n token: string): Promise> {\n const r = await this.send('GET', this.addEventParameters('/organizations/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n async getEventsOrganizationUser(organizationId: string, id: string,\n start: string, end: string, token: string): Promise> {\n const r = await this.send('GET',\n this.addEventParameters('/organizations/' + organizationId + '/users/' + id + '/events', start, end, token),\n null, true, true);\n return new ListResponse(r, EventResponse);\n }\n\n // User APIs\n\n async getUserPublicKey(id: string): Promise {\n const r = await this.send('GET', '/users/' + id + '/public-key', null, true, true);\n return new UserKeyResponse(r);\n }\n\n // HIBP APIs\n\n async getHibpBreach(username: string): Promise {\n const r = await this.send('GET', '/hibp/breach?username=' + username, null, true, true);\n return r.map((a: any) => new BreachAccountResponse(a));\n }\n\n // Helpers\n\n async getActiveBearerToken(): Promise {\n let accessToken = await this.tokenService.getToken();\n if (this.tokenService.tokenNeedsRefresh()) {\n const tokenResponse = await this.doRefreshToken();\n accessToken = tokenResponse.accessToken;\n }\n return accessToken;\n }\n\n fetch(request: Request): Promise {\n if (request.method === 'GET') {\n request.headers.set('Cache-Control', 'no-cache');\n request.headers.set('Pragma', 'no-cache');\n }\n return fetch(request);\n }\n\n private async send(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, body: any,\n authed: boolean, hasResponse: boolean): Promise {\n const headers = new Headers({\n 'Device-Type': this.deviceType,\n });\n\n const requestInit: RequestInit = {\n cache: 'no-cache',\n credentials: this.getCredentials(),\n method: method,\n };\n\n if (authed) {\n const authHeader = await this.getActiveBearerToken();\n headers.set('Authorization', 'Bearer ' + authHeader);\n }\n if (body != null) {\n if (typeof body === 'string') {\n requestInit.body = body;\n headers.set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');\n } else if (typeof body === 'object') {\n if (body instanceof FormData) {\n requestInit.body = body;\n } else {\n headers.set('Content-Type', 'application/json; charset=utf-8');\n requestInit.body = JSON.stringify(body);\n }\n }\n }\n if (hasResponse) {\n headers.set('Accept', 'application/json');\n }\n\n requestInit.headers = headers;\n const response = await this.fetch(new Request(this.apiBaseUrl + path, requestInit));\n\n if (hasResponse && response.status === 200) {\n const responseJson = await response.json();\n return responseJson;\n } else if (response.status !== 200) {\n const error = await this.handleError(response, false);\n return Promise.reject(error);\n }\n }\n\n private async handleError(response: Response, tokenError: boolean): Promise {\n if ((tokenError && response.status === 400) || response.status === 401 || response.status === 403) {\n await this.logoutCallback(true);\n return null;\n }\n\n let responseJson: any = null;\n const typeHeader = response.headers.get('content-type');\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\n responseJson = await response.json();\n }\n\n return new ErrorResponse(responseJson, response.status, tokenError);\n }\n\n private async doRefreshToken(): Promise {\n const refreshToken = await this.tokenService.getRefreshToken();\n if (refreshToken == null || refreshToken === '') {\n throw new Error();\n }\n\n const decodedToken = this.tokenService.decodeToken();\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\n body: this.qsStringify({\n grant_type: 'refresh_token',\n client_id: decodedToken.client_id,\n refresh_token: refreshToken,\n }),\n cache: 'no-cache',\n credentials: this.getCredentials(),\n headers: new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n 'Accept': 'application/json',\n 'Device-Type': this.deviceType,\n }),\n method: 'POST',\n }));\n\n if (response.status === 200) {\n const responseJson = await response.json();\n const tokenResponse = new IdentityTokenResponse(responseJson);\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n return tokenResponse;\n } else {\n const error = await this.handleError(response, true);\n return Promise.reject(error);\n }\n }\n\n private qsStringify(params: any): string {\n return Object.keys(params).map((key) => {\n return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);\n }).join('&');\n }\n\n private getCredentials(): RequestCredentials {\n if (!this.isWebClient || this.usingBaseUrl) {\n return 'include';\n }\n return undefined;\n }\n\n private addEventParameters(base: string, start: string, end: string, token: string) {\n if (start != null) {\n base += ('?start=' + start);\n }\n if (end != null) {\n base += (base.indexOf('?') > -1 ? '&' : '?');\n base += ('end=' + end);\n }\n if (token != null) {\n base += (base.indexOf('?') > -1 ? '&' : '?');\n base += ('continuationToken=' + token);\n }\n return base;\n }\n}\n","import { PaymentMethodType } from '../../enums/paymentMethodType';\nimport { TransactionType } from '../../enums/transactionType';\n\nexport class BillingResponse {\n storageName: string;\n storageGb: number;\n maxStorageGb: number;\n paymentSource: BillingSourceResponse;\n subscription: BillingSubscriptionResponse;\n upcomingInvoice: BillingInvoiceInfoResponse;\n charges: BillingChargeResponse[] = [];\n invoices: BillingInvoiceResponse[] = [];\n transactions: BillingTransactionResponse[] = [];\n license: any;\n expiration: string;\n\n constructor(response: any) {\n this.storageName = response.StorageName;\n this.storageGb = response.StorageGb;\n this.maxStorageGb = response.MaxStorageGb;\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\n this.subscription = response.Subscription == null ?\n null : new BillingSubscriptionResponse(response.Subscription);\n this.upcomingInvoice = response.UpcomingInvoice == null ?\n null : new BillingInvoiceInfoResponse(response.UpcomingInvoice);\n if (response.Charges != null) {\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\n }\n if (response.Transactions != null) {\n this.transactions = response.Transactions.map((t: any) => new BillingTransactionResponse(t));\n }\n if (response.Invoices != null) {\n this.invoices = response.Invoices.map((i: any) => new BillingInvoiceResponse(i));\n }\n this.license = response.License;\n this.expiration = response.Expiration;\n }\n}\n\nexport class BillingSourceResponse {\n type: PaymentMethodType;\n cardBrand: string;\n description: string;\n needsVerification: boolean;\n\n constructor(response: any) {\n this.type = response.Type;\n this.cardBrand = response.CardBrand;\n this.description = response.Description;\n this.needsVerification = response.NeedsVerification;\n }\n}\n\nexport class BillingSubscriptionResponse {\n trialStartDate: string;\n trialEndDate: string;\n periodStartDate: string;\n periodEndDate: string;\n cancelledDate: string;\n cancelAtEndDate: boolean;\n status: string;\n cancelled: boolean;\n items: BillingSubscriptionItemResponse[] = [];\n\n constructor(response: any) {\n this.trialEndDate = response.TrialStartDate;\n this.trialEndDate = response.TrialEndDate;\n this.periodStartDate = response.PeriodStartDate;\n this.periodEndDate = response.PeriodEndDate;\n this.cancelledDate = response.CancelledDate;\n this.cancelAtEndDate = response.CancelAtEndDate;\n this.status = response.Status;\n this.cancelled = response.Cancelled;\n if (response.Items != null) {\n this.items = response.Items.map((i: any) => new BillingSubscriptionItemResponse(i));\n }\n }\n}\n\nexport class BillingSubscriptionItemResponse {\n name: string;\n amount: number;\n quantity: number;\n interval: string;\n\n constructor(response: any) {\n this.name = response.Name;\n this.amount = response.Amount;\n this.quantity = response.Quantity;\n this.interval = response.Interval;\n }\n}\n\nexport class BillingInvoiceInfoResponse {\n date: string;\n amount: number;\n\n constructor(response: any) {\n this.date = response.Date;\n this.amount = response.Amount;\n }\n}\n\nexport class BillingChargeResponse {\n createdDate: string;\n amount: number;\n paymentSource: BillingSourceResponse;\n status: string;\n failureMessage: string;\n refunded: boolean;\n partiallyRefunded: boolean;\n refundedAmount: number;\n invoiceId: string;\n\n constructor(response: any) {\n this.createdDate = response.CreatedDate;\n this.amount = response.Amount;\n this.paymentSource = response.PaymentSource != null ? new BillingSourceResponse(response.PaymentSource) : null;\n this.status = response.Status;\n this.failureMessage = response.FailureMessage;\n this.refunded = response.Refunded;\n this.partiallyRefunded = response.PartiallyRefunded;\n this.refundedAmount = response.RefundedAmount;\n this.invoiceId = response.InvoiceId;\n }\n}\n\nexport class BillingInvoiceResponse extends BillingInvoiceInfoResponse {\n url: string;\n pdfUrl: string;\n number: string;\n paid: boolean;\n\n constructor(response: any) {\n super(response);\n this.url = response.Url;\n this.pdfUrl = response.PdfUrl;\n this.number = response.Number;\n this.paid = response.Paid;\n }\n}\n\nexport class BillingTransactionResponse {\n createdDate: string;\n amount: number;\n refunded: boolean;\n partiallyRefunded: boolean;\n refundedAmount: number;\n type: TransactionType;\n paymentMethodType: PaymentMethodType;\n details: string;\n\n constructor(response: any) {\n this.createdDate = response.CreatedDate;\n this.amount = response.Amount;\n this.refunded = response.Refunded;\n this.partiallyRefunded = response.PartiallyRefunded;\n this.refundedAmount = response.RefundedAmount;\n this.type = response.Type;\n this.paymentMethodType = response.PaymentMethodType;\n this.details = response.Details;\n }\n}\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 { throttle } from '../misc/throttle';\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\n\r\nconst PwnedPasswordsApi = 'https://api.pwnedpasswords.com/range/';\r\n\r\nexport class AuditService implements AuditServiceAbstraction {\r\n constructor(private cryptoFunctionService: CryptoFunctionService, private apiService: ApiService) { }\r\n\r\n @throttle(100, () => 'passwordLeaked')\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(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 try {\r\n return await this.apiService.getHibpBreach(username);\r\n } catch (e) {\r\n const error = e as ErrorResponse;\r\n if (error.statusCode === 404) {\r\n return [];\r\n }\r\n throw new Error();\r\n }\r\n }\r\n}\r\n","import { CipherType } from '../enums/cipherType';\nimport { FieldType } from '../enums/fieldType';\nimport { UriMatchType } from '../enums/uriMatchType';\n\nimport { CipherData } from '../models/data/cipherData';\n\nimport { Attachment } from '../models/domain/attachment';\nimport { Card } from '../models/domain/card';\nimport { Cipher } from '../models/domain/cipher';\nimport { CipherString } from '../models/domain/cipherString';\nimport Domain from '../models/domain/domainBase';\nimport { Field } from '../models/domain/field';\nimport { Identity } from '../models/domain/identity';\nimport { Login } from '../models/domain/login';\nimport { LoginUri } from '../models/domain/loginUri';\nimport { Password } from '../models/domain/password';\nimport { SecureNote } from '../models/domain/secureNote';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\n\nimport { CipherResponse } from '../models/response/cipherResponse';\nimport { ErrorResponse } from '../models/response/errorResponse';\n\nimport { AttachmentView } from '../models/view/attachmentView';\nimport { CipherView } from '../models/view/cipherView';\nimport { FieldView } from '../models/view/fieldView';\nimport { PasswordHistoryView } from '../models/view/passwordHistoryView';\nimport { View } from '../models/view/view';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { CipherService as CipherServiceAbstraction } from '../abstractions/cipher.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { SearchService } from '../abstractions/search.service';\nimport { SettingsService } from '../abstractions/settings.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ConstantsService } from './constants.service';\n\nimport { sequentialize } from '../misc/sequentialize';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n ciphersPrefix: 'ciphers_',\n localData: 'sitesLocalData',\n neverDomains: 'neverDomains',\n};\n\nconst DomainMatchBlacklist = new Map>([\n ['google.com', new Set(['script.google.com'])],\n]);\n\nexport class CipherService implements CipherServiceAbstraction {\n // tslint:disable-next-line\n _decryptedCipherCache: CipherView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private settingsService: SettingsService, private apiService: ApiService,\n private storageService: StorageService, private i18nService: I18nService,\n private searchService: () => SearchService) {\n }\n\n get decryptedCipherCache() {\n return this._decryptedCipherCache;\n }\n set decryptedCipherCache(value: CipherView[]) {\n this._decryptedCipherCache = value;\n if (this.searchService != null) {\n if (value == null) {\n this.searchService().clearIndex();\n } else {\n this.searchService().indexCiphers();\n }\n }\n }\n\n clearCache(): void {\n this.decryptedCipherCache = null;\n }\n\n async encrypt(model: CipherView, key?: SymmetricCryptoKey, originalCipher: Cipher = null): Promise {\n // Adjust password history\n if (model.id != null) {\n if (originalCipher == null) {\n originalCipher = await this.get(model.id);\n }\n if (originalCipher != null) {\n const existingCipher = await originalCipher.decrypt();\n model.passwordHistory = existingCipher.passwordHistory || [];\n if (model.type === CipherType.Login && existingCipher.type === CipherType.Login) {\n if (existingCipher.login.password != null && existingCipher.login.password !== '' &&\n existingCipher.login.password !== model.login.password) {\n const ph = new PasswordHistoryView();\n ph.password = existingCipher.login.password;\n ph.lastUsedDate = model.login.passwordRevisionDate = new Date();\n model.passwordHistory.splice(0, 0, ph);\n } else {\n model.login.passwordRevisionDate = existingCipher.login.passwordRevisionDate;\n }\n }\n if (existingCipher.hasFields) {\n const existingHiddenFields = existingCipher.fields.filter((f) => f.type === FieldType.Hidden &&\n f.name != null && f.name !== '' && f.value != null && f.value !== '');\n const hiddenFields = model.fields == null ? [] :\n model.fields.filter((f) => f.type === FieldType.Hidden && f.name != null && f.name !== '');\n existingHiddenFields.forEach((ef) => {\n const matchedField = hiddenFields.filter((f) => f.name === ef.name);\n if (matchedField.length === 0 || matchedField[0].value !== ef.value) {\n const ph = new PasswordHistoryView();\n ph.password = ef.name + ': ' + ef.value;\n ph.lastUsedDate = new Date();\n model.passwordHistory.splice(0, 0, ph);\n }\n });\n }\n }\n if (model.passwordHistory != null && model.passwordHistory.length === 0) {\n model.passwordHistory = null;\n } else if (model.passwordHistory != null && model.passwordHistory.length > 5) {\n // only save last 5 history\n model.passwordHistory = model.passwordHistory.slice(0, 5);\n }\n }\n\n const cipher = new Cipher();\n cipher.id = model.id;\n cipher.folderId = model.folderId;\n cipher.favorite = model.favorite;\n cipher.organizationId = model.organizationId;\n cipher.type = model.type;\n cipher.collectionIds = model.collectionIds;\n\n if (key == null && cipher.organizationId != null) {\n key = await this.cryptoService.getOrgKey(cipher.organizationId);\n if (key == null) {\n throw new Error('Cannot encrypt cipher for organization. No key.');\n }\n }\n await Promise.all([\n this.encryptObjProperty(model, cipher, {\n name: null,\n notes: null,\n }, key),\n this.encryptCipherData(cipher, model, key),\n this.encryptFields(model.fields, key).then((fields) => {\n cipher.fields = fields;\n }),\n this.encryptPasswordHistories(model.passwordHistory, key).then((ph) => {\n cipher.passwordHistory = ph;\n }),\n this.encryptAttachments(model.attachments, key).then((attachments) => {\n cipher.attachments = attachments;\n }),\n ]);\n\n return cipher;\n }\n\n async encryptAttachments(attachmentsModel: AttachmentView[], key: SymmetricCryptoKey): Promise {\n if (attachmentsModel == null || attachmentsModel.length === 0) {\n return null;\n }\n\n const promises: Array> = [];\n const encAttachments: Attachment[] = [];\n attachmentsModel.forEach(async (model) => {\n const attachment = new Attachment();\n attachment.id = model.id;\n attachment.size = model.size;\n attachment.sizeName = model.sizeName;\n attachment.url = model.url;\n const promise = this.encryptObjProperty(model, attachment, {\n fileName: null,\n }, key).then(async () => {\n if (model.key != null) {\n attachment.key = await this.cryptoService.encrypt(model.key.key, key);\n }\n encAttachments.push(attachment);\n });\n promises.push(promise);\n });\n\n await Promise.all(promises);\n return encAttachments;\n }\n\n async encryptFields(fieldsModel: FieldView[], key: SymmetricCryptoKey): Promise {\n if (!fieldsModel || !fieldsModel.length) {\n return null;\n }\n\n const self = this;\n const encFields: Field[] = [];\n await fieldsModel.reduce((promise, field) => {\n return promise.then(() => {\n return self.encryptField(field, key);\n }).then((encField: Field) => {\n encFields.push(encField);\n });\n }, Promise.resolve());\n\n return encFields;\n }\n\n async encryptField(fieldModel: FieldView, key: SymmetricCryptoKey): Promise {\n const field = new Field();\n field.type = fieldModel.type;\n // normalize boolean type field values\n if (fieldModel.type === FieldType.Boolean && fieldModel.value !== 'true') {\n fieldModel.value = 'false';\n }\n\n await this.encryptObjProperty(fieldModel, field, {\n name: null,\n value: null,\n }, key);\n\n return field;\n }\n\n async encryptPasswordHistories(phModels: PasswordHistoryView[], key: SymmetricCryptoKey): Promise {\n if (!phModels || !phModels.length) {\n return null;\n }\n\n const self = this;\n const encPhs: Password[] = [];\n await phModels.reduce((promise, ph) => {\n return promise.then(() => {\n return self.encryptPasswordHistory(ph, key);\n }).then((encPh: Password) => {\n encPhs.push(encPh);\n });\n }, Promise.resolve());\n\n return encPhs;\n }\n\n async encryptPasswordHistory(phModel: PasswordHistoryView, key: SymmetricCryptoKey): Promise {\n const ph = new Password();\n ph.lastUsedDate = phModel.lastUsedDate;\n\n await this.encryptObjProperty(phModel, ph, {\n password: null,\n }, key);\n\n return ph;\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const localData = await this.storageService.get(Keys.localData);\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null || !ciphers.hasOwnProperty(id)) {\n return null;\n }\n\n return new Cipher(ciphers[id], false, localData ? localData[id] : null);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const localData = await this.storageService.get(Keys.localData);\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n const response: Cipher[] = [];\n for (const id in ciphers) {\n if (ciphers.hasOwnProperty(id)) {\n response.push(new Cipher(ciphers[id], false, localData ? localData[id] : null));\n }\n }\n return response;\n }\n\n @sequentialize(() => 'getAllDecrypted')\n async getAllDecrypted(): Promise {\n if (this.decryptedCipherCache != null) {\n return this.decryptedCipherCache;\n }\n\n const decCiphers: CipherView[] = [];\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const promises: any[] = [];\n const ciphers = await this.getAll();\n ciphers.forEach((cipher) => {\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\n });\n\n await Promise.all(promises);\n decCiphers.sort(this.getLocaleSortingFunction());\n this.decryptedCipherCache = decCiphers;\n return this.decryptedCipherCache;\n }\n\n async getAllDecryptedForGrouping(groupingId: string, folder: boolean = true): Promise {\n const ciphers = await this.getAllDecrypted();\n\n return ciphers.filter((cipher) => {\n if (folder && cipher.folderId === groupingId) {\n return true;\n } else if (!folder && cipher.collectionIds != null && cipher.collectionIds.indexOf(groupingId) > -1) {\n return true;\n }\n\n return false;\n });\n }\n\n async getAllDecryptedForUrl(url: string, includeOtherTypes?: CipherType[]): Promise {\n if (url == null && !includeOtherTypes) {\n return Promise.resolve([]);\n }\n\n const domain = Utils.getDomain(url);\n const eqDomainsPromise = domain == null ? Promise.resolve([]) :\n this.settingsService.getEquivalentDomains().then((eqDomains: any[][]) => {\n let matches: any[] = [];\n eqDomains.forEach((eqDomain) => {\n if (eqDomain.length && eqDomain.indexOf(domain) >= 0) {\n matches = matches.concat(eqDomain);\n }\n });\n\n if (!matches.length) {\n matches.push(domain);\n }\n\n return matches;\n });\n\n const result = await Promise.all([eqDomainsPromise, this.getAllDecrypted()]);\n const matchingDomains = result[0];\n const ciphers = result[1];\n\n let defaultMatch = await this.storageService.get(ConstantsService.defaultUriMatch);\n if (defaultMatch == null) {\n defaultMatch = UriMatchType.Domain;\n }\n\n return ciphers.filter((cipher) => {\n if (includeOtherTypes && includeOtherTypes.indexOf(cipher.type) > -1) {\n return true;\n }\n\n if (url != null && cipher.type === CipherType.Login && cipher.login.uris != null) {\n for (let i = 0; i < cipher.login.uris.length; i++) {\n const u = cipher.login.uris[i];\n if (u.uri == null) {\n continue;\n }\n\n const match = u.match == null ? defaultMatch : u.match;\n switch (match) {\n case UriMatchType.Domain:\n if (domain != null && u.domain != null && matchingDomains.indexOf(u.domain) > -1) {\n if (DomainMatchBlacklist.has(u.domain)) {\n const domainUrlHost = Utils.getHost(url);\n if (!DomainMatchBlacklist.get(u.domain).has(domainUrlHost)) {\n return true;\n }\n } else {\n return true;\n }\n }\n break;\n case UriMatchType.Host:\n const urlHost = Utils.getHost(url);\n if (urlHost != null && urlHost === Utils.getHost(u.uri)) {\n return true;\n }\n break;\n case UriMatchType.Exact:\n if (url === u.uri) {\n return true;\n }\n break;\n case UriMatchType.StartsWith:\n if (url.startsWith(u.uri)) {\n return true;\n }\n break;\n case UriMatchType.RegularExpression:\n try {\n const regex = new RegExp(u.uri, 'i');\n if (regex.test(url)) {\n return true;\n }\n } catch { }\n break;\n case UriMatchType.Never:\n default:\n break;\n }\n }\n }\n\n return false;\n });\n }\n\n async getAllFromApiForOrganization(organizationId: string): Promise {\n const ciphers = await this.apiService.getCiphersOrganization(organizationId);\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.getLocaleSortingFunction());\n return decCiphers;\n } else {\n return [];\n }\n }\n\n async getLastUsedForUrl(url: string): Promise {\n const ciphers = await this.getAllDecryptedForUrl(url);\n if (ciphers.length === 0) {\n return null;\n }\n\n const sortedCiphers = ciphers.sort(this.sortCiphersByLastUsed);\n return sortedCiphers[0];\n }\n\n async updateLastUsedDate(id: string): Promise {\n let ciphersLocalData = await this.storageService.get(Keys.localData);\n if (!ciphersLocalData) {\n ciphersLocalData = {};\n }\n\n if (ciphersLocalData[id]) {\n ciphersLocalData[id].lastUsedDate = new Date().getTime();\n } else {\n ciphersLocalData[id] = {\n lastUsedDate: new Date().getTime(),\n };\n }\n\n await this.storageService.save(Keys.localData, ciphersLocalData);\n\n if (this.decryptedCipherCache == null) {\n return;\n }\n\n for (let i = 0; i < this.decryptedCipherCache.length; i++) {\n const cached = this.decryptedCipherCache[i];\n if (cached.id === id) {\n cached.localData = ciphersLocalData[id];\n break;\n }\n }\n }\n\n async saveNeverDomain(domain: string): Promise {\n if (domain == null) {\n return;\n }\n\n let domains = await this.storageService.get<{ [id: string]: any; }>(Keys.neverDomains);\n if (!domains) {\n domains = {};\n }\n domains[domain] = null;\n await this.storageService.save(Keys.neverDomains, domains);\n }\n\n async saveWithServer(cipher: Cipher): Promise {\n let response: CipherResponse;\n if (cipher.id == null) {\n if (cipher.collectionIds != null) {\n const request = new CipherCreateRequest(cipher);\n response = await this.apiService.postCipherCreate(request);\n } else {\n const request = new CipherRequest(cipher);\n response = await this.apiService.postCipher(request);\n }\n cipher.id = response.id;\n } else {\n const request = new CipherRequest(cipher);\n response = await this.apiService.putCipher(cipher.id, request);\n }\n\n const userId = await this.userService.getUserId();\n const data = new CipherData(response, userId, cipher.collectionIds);\n await this.upsert(data);\n }\n\n async shareWithServer(cipher: CipherView, organizationId: string, collectionIds: string[]): Promise {\n const attachmentPromises: Array> = [];\n if (cipher.attachments != null) {\n cipher.attachments.forEach((attachment) => {\n if (attachment.key == null) {\n attachmentPromises.push(this.shareAttachmentWithServer(attachment, cipher.id, organizationId));\n }\n });\n }\n await Promise.all(attachmentPromises);\n\n cipher.organizationId = organizationId;\n cipher.collectionIds = collectionIds;\n const encCipher = await this.encrypt(cipher);\n const request = new CipherShareRequest(encCipher);\n const response = await this.apiService.putShareCipher(cipher.id, request);\n const userId = await this.userService.getUserId();\n const data = new CipherData(response, userId, collectionIds);\n await this.upsert(data);\n }\n\n async shareManyWithServer(ciphers: CipherView[], organizationId: string, collectionIds: string[]): Promise {\n const promises: Array> = [];\n const encCiphers: Cipher[] = [];\n for (const cipher of ciphers) {\n cipher.organizationId = organizationId;\n cipher.collectionIds = collectionIds;\n promises.push(this.encrypt(cipher).then((c) => {\n encCiphers.push(c);\n }));\n }\n await Promise.all(promises);\n const request = new CipherBulkShareRequest(encCiphers, collectionIds);\n await this.apiService.putShareCiphers(request);\n const userId = await this.userService.getUserId();\n await this.upsert(encCiphers.map((c) => c.toCipherData(userId)));\n }\n\n saveAttachmentWithServer(cipher: Cipher, unencryptedFile: any, admin = false): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsArrayBuffer(unencryptedFile);\n reader.onload = async (evt: any) => {\n try {\n const cData = await this.saveAttachmentRawWithServer(cipher,\n unencryptedFile.name, evt.target.result, admin);\n resolve(cData);\n } catch (e) {\n reject(e);\n }\n };\n reader.onerror = (evt) => {\n reject('Error reading file.');\n };\n });\n }\n\n async saveAttachmentRawWithServer(cipher: Cipher, filename: string,\n data: ArrayBuffer, admin = false): Promise {\n const key = await this.cryptoService.getOrgKey(cipher.organizationId);\n const encFileName = await this.cryptoService.encrypt(filename, key);\n\n const dataEncKey = await this.cryptoService.makeEncKey(key);\n const encData = await this.cryptoService.encryptToBytes(data, dataEncKey[0]);\n\n const fd = new FormData();\n try {\n fd.append('key', dataEncKey[1].encryptedString);\n const blob = new Blob([encData], { type: 'application/octet-stream' });\n fd.append('data', blob, encFileName.encryptedString);\n } catch (e) {\n if (Utils.isNode && !Utils.isBrowser) {\n fd.append('key', dataEncKey[1].encryptedString);\n fd.append('data', Buffer.from(encData) as any, {\n filepath: encFileName.encryptedString,\n contentType: 'application/octet-stream',\n } as any);\n } else {\n throw e;\n }\n }\n\n let response: CipherResponse;\n try {\n if (admin) {\n response = await this.apiService.postCipherAttachmentAdmin(cipher.id, fd);\n } else {\n response = await this.apiService.postCipherAttachment(cipher.id, fd);\n }\n } catch (e) {\n throw new Error((e as ErrorResponse).getSingleMessage());\n }\n\n const userId = await this.userService.getUserId();\n const cData = new CipherData(response, userId, cipher.collectionIds);\n if (!admin) {\n this.upsert(cData);\n }\n return new Cipher(cData);\n }\n\n async saveCollectionsWithServer(cipher: Cipher): Promise {\n const request = new CipherCollectionsRequest(cipher.collectionIds);\n await this.apiService.putCipherCollections(cipher.id, request);\n const userId = await this.userService.getUserId();\n const data = cipher.toCipherData(userId);\n await this.upsert(data);\n }\n\n async upsert(cipher: CipherData | CipherData[]): Promise {\n const userId = await this.userService.getUserId();\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n ciphers = {};\n }\n\n if (cipher instanceof CipherData) {\n const c = cipher as CipherData;\n ciphers[c.id] = c;\n } else {\n (cipher as CipherData[]).forEach((c) => {\n ciphers[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async replace(ciphers: { [id: string]: CipherData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.ciphersPrefix + userId);\n this.clearCache();\n }\n\n async moveManyWithServer(ids: string[], folderId: string): Promise {\n await this.apiService.putMoveCiphers(new CipherBulkMoveRequest(ids, folderId));\n\n const userId = await this.userService.getUserId();\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n ciphers = {};\n }\n\n ids.forEach((id) => {\n if (ciphers.hasOwnProperty(id)) {\n ciphers[id].folderId = folderId;\n }\n });\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n if (ciphers == null) {\n return;\n }\n\n if (typeof id === 'string') {\n if (ciphers[id] == null) {\n return;\n }\n delete ciphers[id];\n } else {\n (id as string[]).forEach((i) => {\n delete ciphers[i];\n });\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async deleteWithServer(id: string): Promise {\n await this.apiService.deleteCipher(id);\n await this.delete(id);\n }\n\n async deleteManyWithServer(ids: string[]): Promise {\n await this.apiService.deleteManyCiphers(new CipherBulkDeleteRequest(ids));\n await this.delete(ids);\n }\n\n async deleteAttachment(id: string, attachmentId: string): Promise {\n const userId = await this.userService.getUserId();\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\n Keys.ciphersPrefix + userId);\n\n if (ciphers == null || !ciphers.hasOwnProperty(id) || ciphers[id].attachments == null) {\n return;\n }\n\n for (let i = 0; i < ciphers[id].attachments.length; i++) {\n if (ciphers[id].attachments[i].id === attachmentId) {\n ciphers[id].attachments.splice(i, 1);\n }\n }\n\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\n this.decryptedCipherCache = null;\n }\n\n async deleteAttachmentWithServer(id: string, attachmentId: string): Promise {\n try {\n await this.apiService.deleteCipherAttachment(id, attachmentId);\n } catch (e) {\n return Promise.reject((e as ErrorResponse).getSingleMessage());\n }\n await this.deleteAttachment(id, attachmentId);\n }\n\n sortCiphersByLastUsed(a: CipherView, b: CipherView): number {\n const aLastUsed = a.localData && a.localData.lastUsedDate ? a.localData.lastUsedDate as number : null;\n const bLastUsed = b.localData && b.localData.lastUsedDate ? b.localData.lastUsedDate as number : null;\n\n if (aLastUsed != null && bLastUsed != null && aLastUsed < bLastUsed) {\n return 1;\n }\n if (aLastUsed != null && bLastUsed == null) {\n return -1;\n }\n\n if (bLastUsed != null && aLastUsed != null && aLastUsed > bLastUsed) {\n return -1;\n }\n if (bLastUsed != null && aLastUsed == null) {\n return 1;\n }\n\n return 0;\n }\n\n sortCiphersByLastUsedThenName(a: CipherView, b: CipherView): number {\n const result = this.sortCiphersByLastUsed(a, b);\n if (result !== 0) {\n return result;\n }\n\n return this.getLocaleSortingFunction()(a, b);\n }\n\n getLocaleSortingFunction(): (a: CipherView, b: CipherView) => number {\n return (a, b) => {\n let aName = a.name;\n let bName = b.name;\n\n if (aName == null && bName != null) {\n return -1;\n }\n if (aName != null && bName == null) {\n return 1;\n }\n if (aName == null && bName == null) {\n return 0;\n }\n\n const result = this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\n aName.localeCompare(bName);\n\n if (result !== 0 || a.type !== CipherType.Login || b.type !== CipherType.Login) {\n return result;\n }\n\n if (a.login.username != null) {\n aName += a.login.username;\n }\n\n if (b.login.username != null) {\n bName += b.login.username;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\n aName.localeCompare(bName);\n };\n }\n\n // Helpers\n\n private async shareAttachmentWithServer(attachmentView: AttachmentView, cipherId: string,\n organizationId: string): Promise {\n const attachmentResponse = await fetch(new Request(attachmentView.url, { cache: 'no-cache' }));\n if (attachmentResponse.status !== 200) {\n throw Error('Failed to download attachment: ' + attachmentResponse.status.toString());\n }\n\n const buf = await attachmentResponse.arrayBuffer();\n const decBuf = await this.cryptoService.decryptFromBytes(buf, null);\n const key = await this.cryptoService.getOrgKey(organizationId);\n const encFileName = await this.cryptoService.encrypt(attachmentView.fileName, key);\n\n const dataEncKey = await this.cryptoService.makeEncKey(key);\n const encData = await this.cryptoService.encryptToBytes(decBuf, dataEncKey[0]);\n\n const fd = new FormData();\n try {\n fd.append('key', dataEncKey[1].encryptedString);\n const blob = new Blob([encData], { type: 'application/octet-stream' });\n fd.append('data', blob, encFileName.encryptedString);\n } catch (e) {\n if (Utils.isNode && !Utils.isBrowser) {\n fd.append('key', dataEncKey[1].encryptedString);\n fd.append('data', Buffer.from(encData) as any, {\n filepath: encFileName.encryptedString,\n contentType: 'application/octet-stream',\n } as any);\n } else {\n throw e;\n }\n }\n\n try {\n await this.apiService.postShareCipherAttachment(cipherId, attachmentView.id, fd, organizationId);\n } catch (e) {\n throw new Error((e as ErrorResponse).getSingleMessage());\n }\n }\n\n private async encryptObjProperty(model: V, obj: D,\n map: any, key: SymmetricCryptoKey): Promise {\n const promises = [];\n const self = 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, theObj) {\n const p = Promise.resolve().then(() => {\n const modelProp = (model as any)[(map[theProp] || theProp)];\n if (modelProp && modelProp !== '') {\n return self.cryptoService.encrypt(modelProp, key);\n }\n return null;\n }).then((val: CipherString) => {\n (theObj as any)[theProp] = val;\n });\n promises.push(p);\n })(prop, obj);\n }\n\n await Promise.all(promises);\n }\n\n private async encryptCipherData(cipher: Cipher, model: CipherView, key: SymmetricCryptoKey) {\n switch (cipher.type) {\n case CipherType.Login:\n cipher.login = new Login();\n cipher.login.passwordRevisionDate = model.login.passwordRevisionDate;\n await this.encryptObjProperty(model.login, cipher.login, {\n username: null,\n password: null,\n totp: null,\n }, key);\n\n if (model.login.uris != null) {\n cipher.login.uris = [];\n for (let i = 0; i < model.login.uris.length; i++) {\n const loginUri = new LoginUri();\n loginUri.match = model.login.uris[i].match;\n await this.encryptObjProperty(model.login.uris[i], loginUri, {\n uri: null,\n }, key);\n cipher.login.uris.push(loginUri);\n }\n }\n return;\n case CipherType.SecureNote:\n cipher.secureNote = new SecureNote();\n cipher.secureNote.type = model.secureNote.type;\n return;\n case CipherType.Card:\n cipher.card = new Card();\n await this.encryptObjProperty(model.card, cipher.card, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, key);\n return;\n case CipherType.Identity:\n cipher.identity = new Identity();\n await this.encryptObjProperty(model.identity, cipher.identity, {\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 }, key);\n return;\n default:\n throw new Error('Unknown cipher type.');\n }\n }\n}\n","/**\n * Use as a Decorator on async functions, it will prevent multiple 'active' calls as the same time\n *\n * If a promise was returned from a previous call to this function, that hasn't yet resolved it will\n * be returned, instead of calling the original function again\n *\n * Results are not cached, once the promise has returned, the next call will result in a fresh call\n *\n * Read more at https://github.com/bitwarden/jslib/pull/7\n */\nexport function sequentialize(cacheKey: (args: any[]) => string) {\n return (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\n const originalMethod: () => Promise = descriptor.value;\n const caches = new Map>>();\n\n const getCache = (obj: any) => {\n let cache = caches.get(obj);\n if (cache != null) {\n return cache;\n }\n cache = new Map>();\n caches.set(obj, cache);\n return cache;\n };\n\n return {\n value: function(...args: any[]) {\n const cache = getCache(this);\n const argsCacheKey = cacheKey(args);\n let response = cache.get(argsCacheKey);\n if (response != null) {\n return response;\n }\n\n response = originalMethod.apply(this, args).finally(() => {\n cache.delete(argsCacheKey);\n if (cache.size === 0) {\n caches.delete(this);\n }\n });\n\n cache.set(argsCacheKey, response);\n return response;\n },\n };\n };\n}\n","import { CollectionData } from '../models/data/collectionData';\n\nimport { Collection } from '../models/domain/collection';\nimport { TreeNode } from '../models/domain/treeNode';\n\nimport { CollectionView } from '../models/view/collectionView';\n\nimport { CollectionService as CollectionServiceAbstraction } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ServiceUtils } from '../misc/serviceUtils';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n collectionsPrefix: 'collections_',\n};\nconst NestingDelimiter = '/';\n\nexport class CollectionService implements CollectionServiceAbstraction {\n decryptedCollectionCache: CollectionView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private storageService: StorageService, private i18nService: I18nService) {\n }\n\n clearCache(): void {\n this.decryptedCollectionCache = null;\n }\n\n async encrypt(model: CollectionView): Promise {\n if (model.organizationId == null) {\n throw new Error('Collection has no organization id.');\n }\n const key = await this.cryptoService.getOrgKey(model.organizationId);\n if (key == null) {\n throw new Error('No key for this collection\\'s organization.');\n }\n const collection = new Collection();\n collection.id = model.id;\n collection.organizationId = model.organizationId;\n collection.readOnly = model.readOnly;\n collection.name = await this.cryptoService.encrypt(model.name, key);\n return collection;\n }\n\n async decryptMany(collections: Collection[]): Promise {\n if (collections == null) {\n return [];\n }\n const decCollections: CollectionView[] = [];\n const promises: Array> = [];\n collections.forEach((collection) => {\n promises.push(collection.decrypt().then((c) => decCollections.push(c)));\n });\n await Promise.all(promises);\n return decCollections.sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null || !collections.hasOwnProperty(id)) {\n return null;\n }\n\n return new Collection(collections[id]);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n const response: Collection[] = [];\n for (const id in collections) {\n if (collections.hasOwnProperty(id)) {\n response.push(new Collection(collections[id]));\n }\n }\n return response;\n }\n\n async getAllDecrypted(): Promise {\n if (this.decryptedCollectionCache != null) {\n return this.decryptedCollectionCache;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const collections = await this.getAll();\n this.decryptedCollectionCache = await this.decryptMany(collections);\n return this.decryptedCollectionCache;\n }\n\n async getAllNested(collections: CollectionView[] = null): Promise>> {\n if (collections == null) {\n collections = await this.getAllDecrypted();\n }\n const nodes: Array> = [];\n collections.forEach((c) => {\n const collectionCopy = new CollectionView();\n collectionCopy.id = c.id;\n collectionCopy.organizationId = c.organizationId;\n ServiceUtils.nestedTraverse(nodes, 0, c.name.split(NestingDelimiter), collectionCopy,\n null, NestingDelimiter);\n });\n return nodes;\n }\n\n async getNested(id: string): Promise> {\n const collections = await this.getAllNested();\n return ServiceUtils.getTreeNodeObject(collections, id) as TreeNode;\n }\n\n async upsert(collection: CollectionData | CollectionData[]): Promise {\n const userId = await this.userService.getUserId();\n let collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n collections = {};\n }\n\n if (collection instanceof CollectionData) {\n const c = collection as CollectionData;\n collections[c.id] = c;\n } else {\n (collection as CollectionData[]).forEach((c) => {\n collections[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async replace(collections: { [id: string]: CollectionData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.collectionsPrefix + userId);\n this.decryptedCollectionCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n return;\n }\n\n if (typeof id === 'string') {\n const i = id as string;\n delete collections[id];\n } else {\n (id as string[]).forEach((i) => {\n delete collections[i];\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n}\n","import {\r\n ITreeNodeObject,\r\n TreeNode,\r\n} from '../models/domain/treeNode';\r\n\r\nexport class ServiceUtils {\r\n static nestedTraverse(nodeTree: Array>, partIndex: number, parts: string[],\r\n obj: ITreeNodeObject, parent: ITreeNodeObject, delimiter: string) {\r\n if (parts.length <= partIndex) {\r\n return;\r\n }\r\n\r\n const end = partIndex === parts.length - 1;\r\n const partName = parts[partIndex];\r\n\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.name !== parts[partIndex]) {\r\n continue;\r\n }\r\n if (end && nodeTree[i].node.id !== obj.id) {\r\n // Another node with the same name.\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n ServiceUtils.nestedTraverse(nodeTree[i].children, partIndex + 1, parts,\r\n obj, nodeTree[i].node, delimiter);\r\n return;\r\n }\r\n\r\n if (nodeTree.filter((n) => n.node.name === partName).length === 0) {\r\n if (end) {\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n const newPartName = parts[partIndex] + delimiter + parts[partIndex + 1];\r\n ServiceUtils.nestedTraverse(nodeTree, 0, [newPartName, ...parts.slice(partIndex + 2)],\r\n obj, parent, delimiter);\r\n }\r\n }\r\n\r\n static getTreeNodeObject(nodeTree: Array>, id: string): TreeNode {\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.id === id) {\r\n return nodeTree[i];\r\n } else if (nodeTree[i].children != null) {\r\n const node = ServiceUtils.getTreeNodeObject(nodeTree[i].children, id);\r\n if (node !== null) {\r\n return node;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n}\r\n","import { CryptoService } from '../abstractions/crypto.service';\r\n\r\nexport class ContainerService {\r\n constructor(private cryptoService: CryptoService) {\r\n }\r\n\r\n // deprecated, use attachToGlobal instead\r\n attachToWindow(win: any) {\r\n this.attachToGlobal(win);\r\n }\r\n\r\n attachToGlobal(global: any) {\r\n if (!global.bitwardenContainerService) {\r\n global.bitwardenContainerService = this;\r\n }\r\n }\r\n\r\n getCryptoService(): CryptoService {\r\n return this.cryptoService;\r\n }\r\n}\r\n","import * as bigInt from 'big-integer';\r\n\r\nimport { EncryptionType } from '../enums/encryptionType';\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { EncryptedObject } from '../models/domain/encryptedObject';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { CryptoService as CryptoServiceAbstraction } from '../abstractions/crypto.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from './constants.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst Keys = {\r\n key: 'key',\r\n encOrgKeys: 'encOrgKeys',\r\n encPrivateKey: 'encPrivateKey',\r\n encKey: 'encKey',\r\n keyHash: 'keyHash',\r\n};\r\n\r\nexport class CryptoService implements CryptoServiceAbstraction {\r\n private key: SymmetricCryptoKey;\r\n private encKey: SymmetricCryptoKey;\r\n private legacyEtmKey: SymmetricCryptoKey;\r\n private keyHash: string;\r\n private publicKey: ArrayBuffer;\r\n private privateKey: ArrayBuffer;\r\n private orgKeys: Map;\r\n\r\n constructor(private storageService: StorageService, private secureStorageService: StorageService,\r\n private cryptoFunctionService: CryptoFunctionService) { }\r\n\r\n async setKey(key: SymmetricCryptoKey): Promise {\r\n this.key = key;\r\n\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null) {\r\n // if we have a lock option set, we do not store the key\r\n return;\r\n }\r\n\r\n return this.secureStorageService.save(Keys.key, key.keyB64);\r\n }\r\n\r\n setKeyHash(keyHash: string): Promise<{}> {\r\n this.keyHash = keyHash;\r\n return this.storageService.save(Keys.keyHash, keyHash);\r\n }\r\n\r\n async setEncKey(encKey: string): Promise<{}> {\r\n if (encKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encKey, encKey);\r\n this.encKey = null;\r\n }\r\n\r\n async setEncPrivateKey(encPrivateKey: string): Promise<{}> {\r\n if (encPrivateKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encPrivateKey, encPrivateKey);\r\n this.privateKey = null;\r\n }\r\n\r\n setOrgKeys(orgs: ProfileOrganizationResponse[]): Promise<{}> {\r\n const orgKeys: any = {};\r\n orgs.forEach((org) => {\r\n orgKeys[org.id] = org.key;\r\n });\r\n\r\n this.orgKeys = null;\r\n return this.storageService.save(Keys.encOrgKeys, orgKeys);\r\n }\r\n\r\n async getKey(): Promise {\r\n if (this.key != null) {\r\n return this.key;\r\n }\r\n\r\n const key = await this.secureStorageService.get(Keys.key);\r\n if (key != null) {\r\n this.key = new SymmetricCryptoKey(Utils.fromB64ToArray(key).buffer);\r\n }\r\n\r\n return key == null ? null : this.key;\r\n }\r\n\r\n getKeyHash(): Promise {\r\n if (this.keyHash != null) {\r\n return Promise.resolve(this.keyHash);\r\n }\r\n\r\n return this.storageService.get(Keys.keyHash);\r\n }\r\n\r\n @sequentialize(() => 'getEncKey')\r\n async getEncKey(): Promise {\r\n if (this.encKey != null) {\r\n return this.encKey;\r\n }\r\n\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n if (encKey == null) {\r\n return null;\r\n }\r\n\r\n const key = await this.getKey();\r\n if (key == null) {\r\n return null;\r\n }\r\n\r\n let decEncKey: ArrayBuffer;\r\n const encKeyCipher = new CipherString(encKey);\r\n if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_B64) {\r\n decEncKey = await this.decryptToBytes(encKeyCipher, key);\r\n } else if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_HmacSha256_B64) {\r\n const newKey = await this.stretchKey(key);\r\n decEncKey = await this.decryptToBytes(encKeyCipher, newKey);\r\n } else {\r\n throw new Error('Unsupported encKey type.');\r\n }\r\n\r\n if (decEncKey == null) {\r\n return null;\r\n }\r\n this.encKey = new SymmetricCryptoKey(decEncKey);\r\n return this.encKey;\r\n }\r\n\r\n async getPublicKey(): Promise {\r\n if (this.publicKey != null) {\r\n return this.publicKey;\r\n }\r\n\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n return null;\r\n }\r\n\r\n this.publicKey = await this.cryptoFunctionService.rsaExtractPublicKey(privateKey);\r\n return this.publicKey;\r\n }\r\n\r\n async getPrivateKey(): Promise {\r\n if (this.privateKey != null) {\r\n return this.privateKey;\r\n }\r\n\r\n const encPrivateKey = await this.storageService.get(Keys.encPrivateKey);\r\n if (encPrivateKey == null) {\r\n return null;\r\n }\r\n\r\n this.privateKey = await this.decryptToBytes(new CipherString(encPrivateKey), null);\r\n return this.privateKey;\r\n }\r\n\r\n async getFingerprint(userId: string, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey === null) {\r\n throw new Error('No public key available.');\r\n }\r\n const keyFingerprint = await this.cryptoFunctionService.hash(publicKey, 'sha256');\r\n const userFingerprint = await this.hkdfExpand(keyFingerprint, Utils.fromUtf8ToArray(userId), 32);\r\n return this.hashPhrase(userFingerprint.buffer);\r\n }\r\n\r\n @sequentialize(() => 'getOrgKeys')\r\n async getOrgKeys(): Promise> {\r\n if (this.orgKeys != null && this.orgKeys.size > 0) {\r\n return this.orgKeys;\r\n }\r\n\r\n const encOrgKeys = await this.storageService.get(Keys.encOrgKeys);\r\n if (encOrgKeys == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys: Map = new Map();\r\n let setKey = false;\r\n\r\n for (const orgId in encOrgKeys) {\r\n if (!encOrgKeys.hasOwnProperty(orgId)) {\r\n continue;\r\n }\r\n\r\n const decValue = await this.rsaDecrypt(encOrgKeys[orgId]);\r\n orgKeys.set(orgId, new SymmetricCryptoKey(decValue));\r\n setKey = true;\r\n }\r\n\r\n if (setKey) {\r\n this.orgKeys = orgKeys;\r\n }\r\n\r\n return this.orgKeys;\r\n }\r\n\r\n async getOrgKey(orgId: string): Promise {\r\n if (orgId == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys = await this.getOrgKeys();\r\n if (orgKeys == null || !orgKeys.has(orgId)) {\r\n return null;\r\n }\r\n\r\n return orgKeys.get(orgId);\r\n }\r\n\r\n async hasKey(): Promise {\r\n return (await this.getKey()) != null;\r\n }\r\n\r\n async hasEncKey(): Promise {\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n return encKey != null;\r\n }\r\n\r\n clearKey(): Promise {\r\n this.key = this.legacyEtmKey = null;\r\n return this.secureStorageService.remove(Keys.key);\r\n }\r\n\r\n clearKeyHash(): Promise {\r\n this.keyHash = null;\r\n return this.storageService.remove(Keys.keyHash);\r\n }\r\n\r\n clearEncKey(memoryOnly?: boolean): Promise {\r\n this.encKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encKey);\r\n }\r\n\r\n clearKeyPair(memoryOnly?: boolean): Promise {\r\n this.privateKey = null;\r\n this.publicKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encPrivateKey);\r\n }\r\n\r\n clearOrgKeys(memoryOnly?: boolean): Promise {\r\n this.orgKeys = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encOrgKeys);\r\n }\r\n\r\n clearPinProtectedKey(): Promise {\r\n return this.storageService.remove(ConstantsService.pinProtectedKey);\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 this.clearPinProtectedKey(),\r\n ]);\r\n }\r\n\r\n async toggleKey(): Promise {\r\n const key = await this.getKey();\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null || option === 0) {\r\n // if we have a lock option set, clear the key\r\n await this.clearKey();\r\n this.key = key;\r\n return;\r\n }\r\n\r\n await this.setKey(key);\r\n }\r\n\r\n async makeKey(password: string, salt: string, kdf: KdfType, kdfIterations: number):\r\n Promise {\r\n let key: ArrayBuffer = null;\r\n if (kdf == null || kdf === KdfType.PBKDF2_SHA256) {\r\n if (kdfIterations == null) {\r\n kdfIterations = 5000;\r\n } else if (kdfIterations < 5000) {\r\n throw new Error('PBKDF2 iteration minimum is 5000.');\r\n }\r\n key = await this.cryptoFunctionService.pbkdf2(password, salt, 'sha256', kdfIterations);\r\n } else {\r\n throw new Error('Unknown Kdf.');\r\n }\r\n return new SymmetricCryptoKey(key);\r\n }\r\n\r\n async makeShareKey(): Promise<[CipherString, SymmetricCryptoKey]> {\r\n const shareKey = await this.cryptoFunctionService.randomBytes(64);\r\n const publicKey = await this.getPublicKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey);\r\n return [encShareKey, new SymmetricCryptoKey(shareKey)];\r\n }\r\n\r\n async makeKeyPair(key?: SymmetricCryptoKey): Promise<[string, CipherString]> {\r\n const keyPair = await this.cryptoFunctionService.rsaGenerateKeyPair(2048);\r\n const publicB64 = Utils.fromBufferToB64(keyPair[0]);\r\n const privateEnc = await this.encrypt(keyPair[1], key);\r\n return [publicB64, privateEnc];\r\n }\r\n\r\n async makePinKey(pin: string, salt: string, kdf: KdfType, kdfIterations: number): Promise {\r\n const pinKey = await this.makeKey(pin, salt, kdf, kdfIterations);\r\n return await this.stretchKey(pinKey);\r\n }\r\n\r\n async hashPassword(password: string, key: SymmetricCryptoKey): Promise {\r\n if (key == null) {\r\n key = await this.getKey();\r\n }\r\n if (password == null || key == null) {\r\n throw new Error('Invalid parameters.');\r\n }\r\n\r\n const hash = await this.cryptoFunctionService.pbkdf2(key.key, password, 'sha256', 1);\r\n return Utils.fromBufferToB64(hash);\r\n }\r\n\r\n async makeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const theKey = await this.getKeyForEncryption(key);\r\n const encKey = await this.cryptoFunctionService.randomBytes(64);\r\n return this.buildEncKey(theKey, encKey);\r\n }\r\n\r\n async remakeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const encKey = await this.getEncKey();\r\n return this.buildEncKey(key, encKey.key);\r\n }\r\n\r\n async encrypt(plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n if (plainValue == null) {\r\n return Promise.resolve(null);\r\n }\r\n\r\n let plainBuf: ArrayBuffer;\r\n if (typeof (plainValue) === 'string') {\r\n plainBuf = Utils.fromUtf8ToArray(plainValue).buffer;\r\n } else {\r\n plainBuf = plainValue;\r\n }\r\n\r\n const encObj = await this.aesEncrypt(plainBuf, key);\r\n const iv = Utils.fromBufferToB64(encObj.iv);\r\n const data = Utils.fromBufferToB64(encObj.data);\r\n const mac = encObj.mac != null ? Utils.fromBufferToB64(encObj.mac) : null;\r\n return new CipherString(encObj.key.encType, iv, data, mac);\r\n }\r\n\r\n async encryptToBytes(plainValue: ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n const encValue = await this.aesEncrypt(plainValue, key);\r\n let macLen = 0;\r\n if (encValue.mac != null) {\r\n macLen = encValue.mac.byteLength;\r\n }\r\n\r\n const encBytes = new Uint8Array(1 + encValue.iv.byteLength + macLen + encValue.data.byteLength);\r\n encBytes.set([encValue.key.encType]);\r\n encBytes.set(new Uint8Array(encValue.iv), 1);\r\n if (encValue.mac != null) {\r\n encBytes.set(new Uint8Array(encValue.mac), 1 + encValue.iv.byteLength);\r\n }\r\n\r\n encBytes.set(new Uint8Array(encValue.data), 1 + encValue.iv.byteLength + macLen);\r\n return encBytes.buffer;\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey == null) {\r\n throw new Error('Public key unavailable.');\r\n }\r\n\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n return new CipherString(EncryptionType.Rsa2048_OaepSha1_B64, Utils.fromBufferToB64(encBytes));\r\n }\r\n\r\n async decryptToBytes(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n const iv = Utils.fromB64ToArray(cipherString.iv).buffer;\r\n const data = Utils.fromB64ToArray(cipherString.data).buffer;\r\n const mac = cipherString.mac ? Utils.fromB64ToArray(cipherString.mac).buffer : null;\r\n const decipher = await this.aesDecryptToBytes(cipherString.encryptionType, data, iv, mac, key);\r\n if (decipher == null) {\r\n return null;\r\n }\r\n\r\n return decipher;\r\n }\r\n\r\n async decryptToUtf8(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n return await this.aesDecryptToUtf8(cipherString.encryptionType, cipherString.data,\r\n cipherString.iv, cipherString.mac, key);\r\n }\r\n\r\n async decryptFromBytes(encBuf: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n if (encBuf == null) {\r\n throw new Error('no encBuf.');\r\n }\r\n\r\n const encBytes = new Uint8Array(encBuf);\r\n const encType = encBytes[0];\r\n let ctBytes: Uint8Array = null;\r\n let ivBytes: Uint8Array = null;\r\n let macBytes: Uint8Array = null;\r\n\r\n switch (encType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encBytes.length <= 49) { // 1 + 16 + 32 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n macBytes = encBytes.slice(17, 49);\r\n ctBytes = encBytes.slice(49);\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encBytes.length <= 17) { // 1 + 16 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n ctBytes = encBytes.slice(17);\r\n break;\r\n default:\r\n return null;\r\n }\r\n\r\n return await this.aesDecryptToBytes(encType, ctBytes.buffer, ivBytes.buffer,\r\n macBytes != null ? macBytes.buffer : null, key);\r\n }\r\n\r\n // EFForg/OpenWireless\r\n // ref https://github.com/EFForg/OpenWireless/blob/master/app/js/diceware.js\r\n async randomNumber(min: number, max: number): Promise {\r\n let rval = 0;\r\n const range = max - min + 1;\r\n const bitsNeeded = Math.ceil(Math.log2(range));\r\n if (bitsNeeded > 53) {\r\n throw new Error('We cannot generate numbers larger than 53 bits.');\r\n }\r\n\r\n const bytesNeeded = Math.ceil(bitsNeeded / 8);\r\n const mask = Math.pow(2, bitsNeeded) - 1;\r\n // 7776 -> (2^13 = 8192) -1 == 8191 or 0x00001111 11111111\r\n\r\n // Fill a byte array with N random numbers\r\n const byteArray = new Uint8Array(await this.cryptoFunctionService.randomBytes(bytesNeeded));\r\n\r\n let p = (bytesNeeded - 1) * 8;\r\n for (let i = 0; i < bytesNeeded; i++) {\r\n rval += byteArray[i] * Math.pow(2, p);\r\n p -= 8;\r\n }\r\n\r\n // Use & to apply the mask and reduce the number of recursive lookups\r\n // tslint:disable-next-line\r\n rval = rval & mask;\r\n\r\n if (rval >= range) {\r\n // Integer out of acceptable range\r\n return this.randomNumber(min, max);\r\n }\r\n\r\n // Return an integer that falls within the range\r\n return min + rval;\r\n }\r\n\r\n // Helpers\r\n\r\n private async aesEncrypt(data: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const obj = new EncryptedObject();\r\n obj.key = await this.getKeyForEncryption(key);\r\n obj.iv = await this.cryptoFunctionService.randomBytes(16);\r\n obj.data = await this.cryptoFunctionService.aesEncrypt(data, obj.iv, obj.key.encKey);\r\n\r\n if (obj.key.macKey != null) {\r\n const macData = new Uint8Array(obj.iv.byteLength + obj.data.byteLength);\r\n macData.set(new Uint8Array(obj.iv), 0);\r\n macData.set(new Uint8Array(obj.data), obj.iv.byteLength);\r\n obj.mac = await this.cryptoFunctionService.hmac(macData.buffer, obj.key.macKey, 'sha256');\r\n }\r\n\r\n return obj;\r\n }\r\n\r\n private async aesDecryptToUtf8(encType: EncryptionType, data: string, iv: string, mac: string,\r\n key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n // tslint:disable-next-line\r\n console.error('mac required.');\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n // tslint:disable-next-line\r\n console.error('encType unavailable.');\r\n return null;\r\n }\r\n\r\n const fastParams = this.cryptoFunctionService.aesDecryptFastParameters(data, iv, mac, theKey);\r\n if (fastParams.macKey != null && fastParams.mac != null) {\r\n const computedMac = await this.cryptoFunctionService.hmacFast(fastParams.macData,\r\n fastParams.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compareFast(fastParams.mac, computedMac);\r\n if (!macsEqual) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return this.cryptoFunctionService.aesDecryptFast(fastParams);\r\n }\r\n\r\n private async aesDecryptToBytes(encType: EncryptionType, data: ArrayBuffer, iv: ArrayBuffer,\r\n mac: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n return null;\r\n }\r\n\r\n if (theKey.macKey != null && mac != null) {\r\n const macData = new Uint8Array(iv.byteLength + data.byteLength);\r\n macData.set(new Uint8Array(iv), 0);\r\n macData.set(new Uint8Array(data), iv.byteLength);\r\n const computedMac = await this.cryptoFunctionService.hmac(macData.buffer, theKey.macKey, 'sha256');\r\n if (computedMac === null) {\r\n return null;\r\n }\r\n\r\n const macsMatch = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsMatch) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return await this.cryptoFunctionService.aesDecrypt(data, iv, theKey.encKey);\r\n }\r\n\r\n private async rsaDecrypt(encValue: string): Promise {\r\n const headerPieces = encValue.split('.');\r\n let encType: EncryptionType = null;\r\n let encPieces: string[];\r\n\r\n if (headerPieces.length === 1) {\r\n encType = EncryptionType.Rsa2048_OaepSha256_B64;\r\n encPieces = [headerPieces[0]];\r\n } else if (headerPieces.length === 2) {\r\n try {\r\n encType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) { }\r\n }\r\n\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n // HmacSha256 types are deprecated\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n if (encPieces == null || encPieces.length <= 0) {\r\n throw new Error('encPieces unavailable.');\r\n }\r\n\r\n const data = Utils.fromB64ToArray(encPieces[0]).buffer;\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n throw new Error('No private key.');\r\n }\r\n\r\n let alg: 'sha1' | 'sha256' = 'sha1';\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n alg = 'sha256';\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n return this.cryptoFunctionService.rsaDecrypt(data, privateKey, alg);\r\n }\r\n\r\n private async getKeyForEncryption(key?: SymmetricCryptoKey): Promise {\r\n if (key != null) {\r\n return key;\r\n }\r\n\r\n const encKey = await this.getEncKey();\r\n if (encKey != null) {\r\n return encKey;\r\n }\r\n\r\n return await this.getKey();\r\n }\r\n\r\n private resolveLegacyKey(encType: EncryptionType, key: SymmetricCryptoKey): SymmetricCryptoKey {\r\n if (encType === EncryptionType.AesCbc128_HmacSha256_B64 &&\r\n key.encType === EncryptionType.AesCbc256_B64) {\r\n // Old encrypt-then-mac scheme, make a new key\r\n if (this.legacyEtmKey == null) {\r\n this.legacyEtmKey = new SymmetricCryptoKey(key.key, EncryptionType.AesCbc128_HmacSha256_B64);\r\n }\r\n return this.legacyEtmKey;\r\n }\r\n\r\n return key;\r\n }\r\n\r\n private async stretchKey(key: SymmetricCryptoKey): Promise {\r\n const newKey = new Uint8Array(64);\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('enc'), 32));\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('mac'), 32), 32);\r\n return new SymmetricCryptoKey(newKey.buffer);\r\n }\r\n\r\n // ref: https://tools.ietf.org/html/rfc5869\r\n private async hkdfExpand(prk: ArrayBuffer, info: Uint8Array, size: number) {\r\n const hashLen = 32; // sha256\r\n const okm = new Uint8Array(size);\r\n let previousT = new Uint8Array(0);\r\n const n = Math.ceil(size / hashLen);\r\n for (let i = 0; i < n; i++) {\r\n const t = new Uint8Array(previousT.length + info.length + 1);\r\n t.set(previousT);\r\n t.set(info, previousT.length);\r\n t.set([i + 1], t.length - 1);\r\n previousT = new Uint8Array(await this.cryptoFunctionService.hmac(t.buffer, prk, 'sha256'));\r\n okm.set(previousT, i * hashLen);\r\n }\r\n return okm;\r\n }\r\n\r\n private async hashPhrase(hash: ArrayBuffer, minimumEntropy: number = 64) {\r\n const entropyPerWord = Math.log(EEFLongWordList.length) / Math.log(2);\r\n let numWords = Math.ceil(minimumEntropy / entropyPerWord);\r\n\r\n const hashArr = Array.from(new Uint8Array(hash));\r\n const entropyAvailable = hashArr.length * 4;\r\n if (numWords * entropyPerWord > entropyAvailable) {\r\n throw new Error('Output entropy of hash function is too small');\r\n }\r\n\r\n const phrase: string[] = [];\r\n let hashNumber = bigInt.fromArray(hashArr, 256);\r\n while (numWords--) {\r\n const remainder = hashNumber.mod(EEFLongWordList.length);\r\n hashNumber = hashNumber.divide(EEFLongWordList.length);\r\n phrase.push(EEFLongWordList[remainder as any]);\r\n }\r\n return phrase;\r\n }\r\n\r\n private async buildEncKey(key: SymmetricCryptoKey, encKey: ArrayBuffer = null)\r\n : Promise<[SymmetricCryptoKey, CipherString]> {\r\n let encKeyEnc: CipherString = null;\r\n if (key.key.byteLength === 32) {\r\n const newKey = await this.stretchKey(key);\r\n encKeyEnc = await this.encrypt(encKey, newKey);\r\n } else if (key.key.byteLength === 64) {\r\n encKeyEnc = await this.encrypt(encKey, key);\r\n } else {\r\n throw new Error('Invalid key size.');\r\n }\r\n return [new SymmetricCryptoKey(encKey), encKeyEnc];\r\n }\r\n}\r\n","// EFF's Long Wordlist from https://www.eff.org/dice\r\nexport const EEFLongWordList = [\r\n 'abacus',\r\n 'abdomen',\r\n 'abdominal',\r\n 'abide',\r\n 'abiding',\r\n 'ability',\r\n 'ablaze',\r\n 'able',\r\n 'abnormal',\r\n 'abrasion',\r\n 'abrasive',\r\n 'abreast',\r\n 'abridge',\r\n 'abroad',\r\n 'abruptly',\r\n 'absence',\r\n 'absentee',\r\n 'absently',\r\n 'absinthe',\r\n 'absolute',\r\n 'absolve',\r\n 'abstain',\r\n 'abstract',\r\n 'absurd',\r\n 'accent',\r\n 'acclaim',\r\n 'acclimate',\r\n 'accompany',\r\n 'account',\r\n 'accuracy',\r\n 'accurate',\r\n 'accustom',\r\n 'acetone',\r\n 'achiness',\r\n 'aching',\r\n 'acid',\r\n 'acorn',\r\n 'acquaint',\r\n 'acquire',\r\n 'acre',\r\n 'acrobat',\r\n 'acronym',\r\n 'acting',\r\n 'action',\r\n 'activate',\r\n 'activator',\r\n 'active',\r\n 'activism',\r\n 'activist',\r\n 'activity',\r\n 'actress',\r\n 'acts',\r\n 'acutely',\r\n 'acuteness',\r\n 'aeration',\r\n 'aerobics',\r\n 'aerosol',\r\n 'aerospace',\r\n 'afar',\r\n 'affair',\r\n 'affected',\r\n 'affecting',\r\n 'affection',\r\n 'affidavit',\r\n 'affiliate',\r\n 'affirm',\r\n 'affix',\r\n 'afflicted',\r\n 'affluent',\r\n 'afford',\r\n 'affront',\r\n 'aflame',\r\n 'afloat',\r\n 'aflutter',\r\n 'afoot',\r\n 'afraid',\r\n 'afterglow',\r\n 'afterlife',\r\n 'aftermath',\r\n 'aftermost',\r\n 'afternoon',\r\n 'aged',\r\n 'ageless',\r\n 'agency',\r\n 'agenda',\r\n 'agent',\r\n 'aggregate',\r\n 'aghast',\r\n 'agile',\r\n 'agility',\r\n 'aging',\r\n 'agnostic',\r\n 'agonize',\r\n 'agonizing',\r\n 'agony',\r\n 'agreeable',\r\n 'agreeably',\r\n 'agreed',\r\n 'agreeing',\r\n 'agreement',\r\n 'aground',\r\n 'ahead',\r\n 'ahoy',\r\n 'aide',\r\n 'aids',\r\n 'aim',\r\n 'ajar',\r\n 'alabaster',\r\n 'alarm',\r\n 'albatross',\r\n 'album',\r\n 'alfalfa',\r\n 'algebra',\r\n 'algorithm',\r\n 'alias',\r\n 'alibi',\r\n 'alienable',\r\n 'alienate',\r\n 'aliens',\r\n 'alike',\r\n 'alive',\r\n 'alkaline',\r\n 'alkalize',\r\n 'almanac',\r\n 'almighty',\r\n 'almost',\r\n 'aloe',\r\n 'aloft',\r\n 'aloha',\r\n 'alone',\r\n 'alongside',\r\n 'aloof',\r\n 'alphabet',\r\n 'alright',\r\n 'although',\r\n 'altitude',\r\n 'alto',\r\n 'aluminum',\r\n 'alumni',\r\n 'always',\r\n 'amaretto',\r\n 'amaze',\r\n 'amazingly',\r\n 'amber',\r\n 'ambiance',\r\n 'ambiguity',\r\n 'ambiguous',\r\n 'ambition',\r\n 'ambitious',\r\n 'ambulance',\r\n 'ambush',\r\n 'amendable',\r\n 'amendment',\r\n 'amends',\r\n 'amenity',\r\n 'amiable',\r\n 'amicably',\r\n 'amid',\r\n 'amigo',\r\n 'amino',\r\n 'amiss',\r\n 'ammonia',\r\n 'ammonium',\r\n 'amnesty',\r\n 'amniotic',\r\n 'among',\r\n 'amount',\r\n 'amperage',\r\n 'ample',\r\n 'amplifier',\r\n 'amplify',\r\n 'amply',\r\n 'amuck',\r\n 'amulet',\r\n 'amusable',\r\n 'amused',\r\n 'amusement',\r\n 'amuser',\r\n 'amusing',\r\n 'anaconda',\r\n 'anaerobic',\r\n 'anagram',\r\n 'anatomist',\r\n 'anatomy',\r\n 'anchor',\r\n 'anchovy',\r\n 'ancient',\r\n 'android',\r\n 'anemia',\r\n 'anemic',\r\n 'aneurism',\r\n 'anew',\r\n 'angelfish',\r\n 'angelic',\r\n 'anger',\r\n 'angled',\r\n 'angler',\r\n 'angles',\r\n 'angling',\r\n 'angrily',\r\n 'angriness',\r\n 'anguished',\r\n 'angular',\r\n 'animal',\r\n 'animate',\r\n 'animating',\r\n 'animation',\r\n 'animator',\r\n 'anime',\r\n 'animosity',\r\n 'ankle',\r\n 'annex',\r\n 'annotate',\r\n 'announcer',\r\n 'annoying',\r\n 'annually',\r\n 'annuity',\r\n 'anointer',\r\n 'another',\r\n 'answering',\r\n 'antacid',\r\n 'antarctic',\r\n 'anteater',\r\n 'antelope',\r\n 'antennae',\r\n 'anthem',\r\n 'anthill',\r\n 'anthology',\r\n 'antibody',\r\n 'antics',\r\n 'antidote',\r\n 'antihero',\r\n 'antiquely',\r\n 'antiques',\r\n 'antiquity',\r\n 'antirust',\r\n 'antitoxic',\r\n 'antitrust',\r\n 'antiviral',\r\n 'antivirus',\r\n 'antler',\r\n 'antonym',\r\n 'antsy',\r\n 'anvil',\r\n 'anybody',\r\n 'anyhow',\r\n 'anymore',\r\n 'anyone',\r\n 'anyplace',\r\n 'anything',\r\n 'anytime',\r\n 'anyway',\r\n 'anywhere',\r\n 'aorta',\r\n 'apache',\r\n 'apostle',\r\n 'appealing',\r\n 'appear',\r\n 'appease',\r\n 'appeasing',\r\n 'appendage',\r\n 'appendix',\r\n 'appetite',\r\n 'appetizer',\r\n 'applaud',\r\n 'applause',\r\n 'apple',\r\n 'appliance',\r\n 'applicant',\r\n 'applied',\r\n 'apply',\r\n 'appointee',\r\n 'appraisal',\r\n 'appraiser',\r\n 'apprehend',\r\n 'approach',\r\n 'approval',\r\n 'approve',\r\n 'apricot',\r\n 'april',\r\n 'apron',\r\n 'aptitude',\r\n 'aptly',\r\n 'aqua',\r\n 'aqueduct',\r\n 'arbitrary',\r\n 'arbitrate',\r\n 'ardently',\r\n 'area',\r\n 'arena',\r\n 'arguable',\r\n 'arguably',\r\n 'argue',\r\n 'arise',\r\n 'armadillo',\r\n 'armband',\r\n 'armchair',\r\n 'armed',\r\n 'armful',\r\n 'armhole',\r\n 'arming',\r\n 'armless',\r\n 'armoire',\r\n 'armored',\r\n 'armory',\r\n 'armrest',\r\n 'army',\r\n 'aroma',\r\n 'arose',\r\n 'around',\r\n 'arousal',\r\n 'arrange',\r\n 'array',\r\n 'arrest',\r\n 'arrival',\r\n 'arrive',\r\n 'arrogance',\r\n 'arrogant',\r\n 'arson',\r\n 'art',\r\n 'ascend',\r\n 'ascension',\r\n 'ascent',\r\n 'ascertain',\r\n 'ashamed',\r\n 'ashen',\r\n 'ashes',\r\n 'ashy',\r\n 'aside',\r\n 'askew',\r\n 'asleep',\r\n 'asparagus',\r\n 'aspect',\r\n 'aspirate',\r\n 'aspire',\r\n 'aspirin',\r\n 'astonish',\r\n 'astound',\r\n 'astride',\r\n 'astrology',\r\n 'astronaut',\r\n 'astronomy',\r\n 'astute',\r\n 'atlantic',\r\n 'atlas',\r\n 'atom',\r\n 'atonable',\r\n 'atop',\r\n 'atrium',\r\n 'atrocious',\r\n 'atrophy',\r\n 'attach',\r\n 'attain',\r\n 'attempt',\r\n 'attendant',\r\n 'attendee',\r\n 'attention',\r\n 'attentive',\r\n 'attest',\r\n 'attic',\r\n 'attire',\r\n 'attitude',\r\n 'attractor',\r\n 'attribute',\r\n 'atypical',\r\n 'auction',\r\n 'audacious',\r\n 'audacity',\r\n 'audible',\r\n 'audibly',\r\n 'audience',\r\n 'audio',\r\n 'audition',\r\n 'augmented',\r\n 'august',\r\n 'authentic',\r\n 'author',\r\n 'autism',\r\n 'autistic',\r\n 'autograph',\r\n 'automaker',\r\n 'automated',\r\n 'automatic',\r\n 'autopilot',\r\n 'available',\r\n 'avalanche',\r\n 'avatar',\r\n 'avenge',\r\n 'avenging',\r\n 'avenue',\r\n 'average',\r\n 'aversion',\r\n 'avert',\r\n 'aviation',\r\n 'aviator',\r\n 'avid',\r\n 'avoid',\r\n 'await',\r\n 'awaken',\r\n 'award',\r\n 'aware',\r\n 'awhile',\r\n 'awkward',\r\n 'awning',\r\n 'awoke',\r\n 'awry',\r\n 'axis',\r\n 'babble',\r\n 'babbling',\r\n 'babied',\r\n 'baboon',\r\n 'backache',\r\n 'backboard',\r\n 'backboned',\r\n 'backdrop',\r\n 'backed',\r\n 'backer',\r\n 'backfield',\r\n 'backfire',\r\n 'backhand',\r\n 'backing',\r\n 'backlands',\r\n 'backlash',\r\n 'backless',\r\n 'backlight',\r\n 'backlit',\r\n 'backlog',\r\n 'backpack',\r\n 'backpedal',\r\n 'backrest',\r\n 'backroom',\r\n 'backshift',\r\n 'backside',\r\n 'backslid',\r\n 'backspace',\r\n 'backspin',\r\n 'backstab',\r\n 'backstage',\r\n 'backtalk',\r\n 'backtrack',\r\n 'backup',\r\n 'backward',\r\n 'backwash',\r\n 'backwater',\r\n 'backyard',\r\n 'bacon',\r\n 'bacteria',\r\n 'bacterium',\r\n 'badass',\r\n 'badge',\r\n 'badland',\r\n 'badly',\r\n 'badness',\r\n 'baffle',\r\n 'baffling',\r\n 'bagel',\r\n 'bagful',\r\n 'baggage',\r\n 'bagged',\r\n 'baggie',\r\n 'bagginess',\r\n 'bagging',\r\n 'baggy',\r\n 'bagpipe',\r\n 'baguette',\r\n 'baked',\r\n 'bakery',\r\n 'bakeshop',\r\n 'baking',\r\n 'balance',\r\n 'balancing',\r\n 'balcony',\r\n 'balmy',\r\n 'balsamic',\r\n 'bamboo',\r\n 'banana',\r\n 'banish',\r\n 'banister',\r\n 'banjo',\r\n 'bankable',\r\n 'bankbook',\r\n 'banked',\r\n 'banker',\r\n 'banking',\r\n 'banknote',\r\n 'bankroll',\r\n 'banner',\r\n 'bannister',\r\n 'banshee',\r\n 'banter',\r\n 'barbecue',\r\n 'barbed',\r\n 'barbell',\r\n 'barber',\r\n 'barcode',\r\n 'barge',\r\n 'bargraph',\r\n 'barista',\r\n 'baritone',\r\n 'barley',\r\n 'barmaid',\r\n 'barman',\r\n 'barn',\r\n 'barometer',\r\n 'barrack',\r\n 'barracuda',\r\n 'barrel',\r\n 'barrette',\r\n 'barricade',\r\n 'barrier',\r\n 'barstool',\r\n 'bartender',\r\n 'barterer',\r\n 'bash',\r\n 'basically',\r\n 'basics',\r\n 'basil',\r\n 'basin',\r\n 'basis',\r\n 'basket',\r\n 'batboy',\r\n 'batch',\r\n 'bath',\r\n 'baton',\r\n 'bats',\r\n 'battalion',\r\n 'battered',\r\n 'battering',\r\n 'battery',\r\n 'batting',\r\n 'battle',\r\n 'bauble',\r\n 'bazooka',\r\n 'blabber',\r\n 'bladder',\r\n 'blade',\r\n 'blah',\r\n 'blame',\r\n 'blaming',\r\n 'blanching',\r\n 'blandness',\r\n 'blank',\r\n 'blaspheme',\r\n 'blasphemy',\r\n 'blast',\r\n 'blatancy',\r\n 'blatantly',\r\n 'blazer',\r\n 'blazing',\r\n 'bleach',\r\n 'bleak',\r\n 'bleep',\r\n 'blemish',\r\n 'blend',\r\n 'bless',\r\n 'blighted',\r\n 'blimp',\r\n 'bling',\r\n 'blinked',\r\n 'blinker',\r\n 'blinking',\r\n 'blinks',\r\n 'blip',\r\n 'blissful',\r\n 'blitz',\r\n 'blizzard',\r\n 'bloated',\r\n 'bloating',\r\n 'blob',\r\n 'blog',\r\n 'bloomers',\r\n 'blooming',\r\n 'blooper',\r\n 'blot',\r\n 'blouse',\r\n 'blubber',\r\n 'bluff',\r\n 'bluish',\r\n 'blunderer',\r\n 'blunt',\r\n 'blurb',\r\n 'blurred',\r\n 'blurry',\r\n 'blurt',\r\n 'blush',\r\n 'blustery',\r\n 'boaster',\r\n 'boastful',\r\n 'boasting',\r\n 'boat',\r\n 'bobbed',\r\n 'bobbing',\r\n 'bobble',\r\n 'bobcat',\r\n 'bobsled',\r\n 'bobtail',\r\n 'bodacious',\r\n 'body',\r\n 'bogged',\r\n 'boggle',\r\n 'bogus',\r\n 'boil',\r\n 'bok',\r\n 'bolster',\r\n 'bolt',\r\n 'bonanza',\r\n 'bonded',\r\n 'bonding',\r\n 'bondless',\r\n 'boned',\r\n 'bonehead',\r\n 'boneless',\r\n 'bonelike',\r\n 'boney',\r\n 'bonfire',\r\n 'bonnet',\r\n 'bonsai',\r\n 'bonus',\r\n 'bony',\r\n 'boogeyman',\r\n 'boogieman',\r\n 'book',\r\n 'boondocks',\r\n 'booted',\r\n 'booth',\r\n 'bootie',\r\n 'booting',\r\n 'bootlace',\r\n 'bootleg',\r\n 'boots',\r\n 'boozy',\r\n 'borax',\r\n 'boring',\r\n 'borough',\r\n 'borrower',\r\n 'borrowing',\r\n 'boss',\r\n 'botanical',\r\n 'botanist',\r\n 'botany',\r\n 'botch',\r\n 'both',\r\n 'bottle',\r\n 'bottling',\r\n 'bottom',\r\n 'bounce',\r\n 'bouncing',\r\n 'bouncy',\r\n 'bounding',\r\n 'boundless',\r\n 'bountiful',\r\n 'bovine',\r\n 'boxcar',\r\n 'boxer',\r\n 'boxing',\r\n 'boxlike',\r\n 'boxy',\r\n 'breach',\r\n 'breath',\r\n 'breeches',\r\n 'breeching',\r\n 'breeder',\r\n 'breeding',\r\n 'breeze',\r\n 'breezy',\r\n 'brethren',\r\n 'brewery',\r\n 'brewing',\r\n 'briar',\r\n 'bribe',\r\n 'brick',\r\n 'bride',\r\n 'bridged',\r\n 'brigade',\r\n 'bright',\r\n 'brilliant',\r\n 'brim',\r\n 'bring',\r\n 'brink',\r\n 'brisket',\r\n 'briskly',\r\n 'briskness',\r\n 'bristle',\r\n 'brittle',\r\n 'broadband',\r\n 'broadcast',\r\n 'broaden',\r\n 'broadly',\r\n 'broadness',\r\n 'broadside',\r\n 'broadways',\r\n 'broiler',\r\n 'broiling',\r\n 'broken',\r\n 'broker',\r\n 'bronchial',\r\n 'bronco',\r\n 'bronze',\r\n 'bronzing',\r\n 'brook',\r\n 'broom',\r\n 'brought',\r\n 'browbeat',\r\n 'brownnose',\r\n 'browse',\r\n 'browsing',\r\n 'bruising',\r\n 'brunch',\r\n 'brunette',\r\n 'brunt',\r\n 'brush',\r\n 'brussels',\r\n 'brute',\r\n 'brutishly',\r\n 'bubble',\r\n 'bubbling',\r\n 'bubbly',\r\n 'buccaneer',\r\n 'bucked',\r\n 'bucket',\r\n 'buckle',\r\n 'buckshot',\r\n 'buckskin',\r\n 'bucktooth',\r\n 'buckwheat',\r\n 'buddhism',\r\n 'buddhist',\r\n 'budding',\r\n 'buddy',\r\n 'budget',\r\n 'buffalo',\r\n 'buffed',\r\n 'buffer',\r\n 'buffing',\r\n 'buffoon',\r\n 'buggy',\r\n 'bulb',\r\n 'bulge',\r\n 'bulginess',\r\n 'bulgur',\r\n 'bulk',\r\n 'bulldog',\r\n 'bulldozer',\r\n 'bullfight',\r\n 'bullfrog',\r\n 'bullhorn',\r\n 'bullion',\r\n 'bullish',\r\n 'bullpen',\r\n 'bullring',\r\n 'bullseye',\r\n 'bullwhip',\r\n 'bully',\r\n 'bunch',\r\n 'bundle',\r\n 'bungee',\r\n 'bunion',\r\n 'bunkbed',\r\n 'bunkhouse',\r\n 'bunkmate',\r\n 'bunny',\r\n 'bunt',\r\n 'busboy',\r\n 'bush',\r\n 'busily',\r\n 'busload',\r\n 'bust',\r\n 'busybody',\r\n 'buzz',\r\n 'cabana',\r\n 'cabbage',\r\n 'cabbie',\r\n 'cabdriver',\r\n 'cable',\r\n 'caboose',\r\n 'cache',\r\n 'cackle',\r\n 'cacti',\r\n 'cactus',\r\n 'caddie',\r\n 'caddy',\r\n 'cadet',\r\n 'cadillac',\r\n 'cadmium',\r\n 'cage',\r\n 'cahoots',\r\n 'cake',\r\n 'calamari',\r\n 'calamity',\r\n 'calcium',\r\n 'calculate',\r\n 'calculus',\r\n 'caliber',\r\n 'calibrate',\r\n 'calm',\r\n 'caloric',\r\n 'calorie',\r\n 'calzone',\r\n 'camcorder',\r\n 'cameo',\r\n 'camera',\r\n 'camisole',\r\n 'camper',\r\n 'campfire',\r\n 'camping',\r\n 'campsite',\r\n 'campus',\r\n 'canal',\r\n 'canary',\r\n 'cancel',\r\n 'candied',\r\n 'candle',\r\n 'candy',\r\n 'cane',\r\n 'canine',\r\n 'canister',\r\n 'cannabis',\r\n 'canned',\r\n 'canning',\r\n 'cannon',\r\n 'cannot',\r\n 'canola',\r\n 'canon',\r\n 'canopener',\r\n 'canopy',\r\n 'canteen',\r\n 'canyon',\r\n 'capable',\r\n 'capably',\r\n 'capacity',\r\n 'cape',\r\n 'capillary',\r\n 'capital',\r\n 'capitol',\r\n 'capped',\r\n 'capricorn',\r\n 'capsize',\r\n 'capsule',\r\n 'caption',\r\n 'captivate',\r\n 'captive',\r\n 'captivity',\r\n 'capture',\r\n 'caramel',\r\n 'carat',\r\n 'caravan',\r\n 'carbon',\r\n 'cardboard',\r\n 'carded',\r\n 'cardiac',\r\n 'cardigan',\r\n 'cardinal',\r\n 'cardstock',\r\n 'carefully',\r\n 'caregiver',\r\n 'careless',\r\n 'caress',\r\n 'caretaker',\r\n 'cargo',\r\n 'caring',\r\n 'carless',\r\n 'carload',\r\n 'carmaker',\r\n 'carnage',\r\n 'carnation',\r\n 'carnival',\r\n 'carnivore',\r\n 'carol',\r\n 'carpenter',\r\n 'carpentry',\r\n 'carpool',\r\n 'carport',\r\n 'carried',\r\n 'carrot',\r\n 'carrousel',\r\n 'carry',\r\n 'cartel',\r\n 'cartload',\r\n 'carton',\r\n 'cartoon',\r\n 'cartridge',\r\n 'cartwheel',\r\n 'carve',\r\n 'carving',\r\n 'carwash',\r\n 'cascade',\r\n 'case',\r\n 'cash',\r\n 'casing',\r\n 'casino',\r\n 'casket',\r\n 'cassette',\r\n 'casually',\r\n 'casualty',\r\n 'catacomb',\r\n 'catalog',\r\n 'catalyst',\r\n 'catalyze',\r\n 'catapult',\r\n 'cataract',\r\n 'catatonic',\r\n 'catcall',\r\n 'catchable',\r\n 'catcher',\r\n 'catching',\r\n 'catchy',\r\n 'caterer',\r\n 'catering',\r\n 'catfight',\r\n 'catfish',\r\n 'cathedral',\r\n 'cathouse',\r\n 'catlike',\r\n 'catnap',\r\n 'catnip',\r\n 'catsup',\r\n 'cattail',\r\n 'cattishly',\r\n 'cattle',\r\n 'catty',\r\n 'catwalk',\r\n 'caucasian',\r\n 'caucus',\r\n 'causal',\r\n 'causation',\r\n 'cause',\r\n 'causing',\r\n 'cauterize',\r\n 'caution',\r\n 'cautious',\r\n 'cavalier',\r\n 'cavalry',\r\n 'caviar',\r\n 'cavity',\r\n 'cedar',\r\n 'celery',\r\n 'celestial',\r\n 'celibacy',\r\n 'celibate',\r\n 'celtic',\r\n 'cement',\r\n 'census',\r\n 'ceramics',\r\n 'ceremony',\r\n 'certainly',\r\n 'certainty',\r\n 'certified',\r\n 'certify',\r\n 'cesarean',\r\n 'cesspool',\r\n 'chafe',\r\n 'chaffing',\r\n 'chain',\r\n 'chair',\r\n 'chalice',\r\n 'challenge',\r\n 'chamber',\r\n 'chamomile',\r\n 'champion',\r\n 'chance',\r\n 'change',\r\n 'channel',\r\n 'chant',\r\n 'chaos',\r\n 'chaperone',\r\n 'chaplain',\r\n 'chapped',\r\n 'chaps',\r\n 'chapter',\r\n 'character',\r\n 'charbroil',\r\n 'charcoal',\r\n 'charger',\r\n 'charging',\r\n 'chariot',\r\n 'charity',\r\n 'charm',\r\n 'charred',\r\n 'charter',\r\n 'charting',\r\n 'chase',\r\n 'chasing',\r\n 'chaste',\r\n 'chastise',\r\n 'chastity',\r\n 'chatroom',\r\n 'chatter',\r\n 'chatting',\r\n 'chatty',\r\n 'cheating',\r\n 'cheddar',\r\n 'cheek',\r\n 'cheer',\r\n 'cheese',\r\n 'cheesy',\r\n 'chef',\r\n 'chemicals',\r\n 'chemist',\r\n 'chemo',\r\n 'cherisher',\r\n 'cherub',\r\n 'chess',\r\n 'chest',\r\n 'chevron',\r\n 'chevy',\r\n 'chewable',\r\n 'chewer',\r\n 'chewing',\r\n 'chewy',\r\n 'chief',\r\n 'chihuahua',\r\n 'childcare',\r\n 'childhood',\r\n 'childish',\r\n 'childless',\r\n 'childlike',\r\n 'chili',\r\n 'chill',\r\n 'chimp',\r\n 'chip',\r\n 'chirping',\r\n 'chirpy',\r\n 'chitchat',\r\n 'chivalry',\r\n 'chive',\r\n 'chloride',\r\n 'chlorine',\r\n 'choice',\r\n 'chokehold',\r\n 'choking',\r\n 'chomp',\r\n 'chooser',\r\n 'choosing',\r\n 'choosy',\r\n 'chop',\r\n 'chosen',\r\n 'chowder',\r\n 'chowtime',\r\n 'chrome',\r\n 'chubby',\r\n 'chuck',\r\n 'chug',\r\n 'chummy',\r\n 'chump',\r\n 'chunk',\r\n 'churn',\r\n 'chute',\r\n 'cider',\r\n 'cilantro',\r\n 'cinch',\r\n 'cinema',\r\n 'cinnamon',\r\n 'circle',\r\n 'circling',\r\n 'circular',\r\n 'circulate',\r\n 'circus',\r\n 'citable',\r\n 'citadel',\r\n 'citation',\r\n 'citizen',\r\n 'citric',\r\n 'citrus',\r\n 'city',\r\n 'civic',\r\n 'civil',\r\n 'clad',\r\n 'claim',\r\n 'clambake',\r\n 'clammy',\r\n 'clamor',\r\n 'clamp',\r\n 'clamshell',\r\n 'clang',\r\n 'clanking',\r\n 'clapped',\r\n 'clapper',\r\n 'clapping',\r\n 'clarify',\r\n 'clarinet',\r\n 'clarity',\r\n 'clash',\r\n 'clasp',\r\n 'class',\r\n 'clatter',\r\n 'clause',\r\n 'clavicle',\r\n 'claw',\r\n 'clay',\r\n 'clean',\r\n 'clear',\r\n 'cleat',\r\n 'cleaver',\r\n 'cleft',\r\n 'clench',\r\n 'clergyman',\r\n 'clerical',\r\n 'clerk',\r\n 'clever',\r\n 'clicker',\r\n 'client',\r\n 'climate',\r\n 'climatic',\r\n 'cling',\r\n 'clinic',\r\n 'clinking',\r\n 'clip',\r\n 'clique',\r\n 'cloak',\r\n 'clobber',\r\n 'clock',\r\n 'clone',\r\n 'cloning',\r\n 'closable',\r\n 'closure',\r\n 'clothes',\r\n 'clothing',\r\n 'cloud',\r\n 'clover',\r\n 'clubbed',\r\n 'clubbing',\r\n 'clubhouse',\r\n 'clump',\r\n 'clumsily',\r\n 'clumsy',\r\n 'clunky',\r\n 'clustered',\r\n 'clutch',\r\n 'clutter',\r\n 'coach',\r\n 'coagulant',\r\n 'coastal',\r\n 'coaster',\r\n 'coasting',\r\n 'coastland',\r\n 'coastline',\r\n 'coat',\r\n 'coauthor',\r\n 'cobalt',\r\n 'cobbler',\r\n 'cobweb',\r\n 'cocoa',\r\n 'coconut',\r\n 'cod',\r\n 'coeditor',\r\n 'coerce',\r\n 'coexist',\r\n 'coffee',\r\n 'cofounder',\r\n 'cognition',\r\n 'cognitive',\r\n 'cogwheel',\r\n 'coherence',\r\n 'coherent',\r\n 'cohesive',\r\n 'coil',\r\n 'coke',\r\n 'cola',\r\n 'cold',\r\n 'coleslaw',\r\n 'coliseum',\r\n 'collage',\r\n 'collapse',\r\n 'collar',\r\n 'collected',\r\n 'collector',\r\n 'collide',\r\n 'collie',\r\n 'collision',\r\n 'colonial',\r\n 'colonist',\r\n 'colonize',\r\n 'colony',\r\n 'colossal',\r\n 'colt',\r\n 'coma',\r\n 'come',\r\n 'comfort',\r\n 'comfy',\r\n 'comic',\r\n 'coming',\r\n 'comma',\r\n 'commence',\r\n 'commend',\r\n 'comment',\r\n 'commerce',\r\n 'commode',\r\n 'commodity',\r\n 'commodore',\r\n 'common',\r\n 'commotion',\r\n 'commute',\r\n 'commuting',\r\n 'compacted',\r\n 'compacter',\r\n 'compactly',\r\n 'compactor',\r\n 'companion',\r\n 'company',\r\n 'compare',\r\n 'compel',\r\n 'compile',\r\n 'comply',\r\n 'component',\r\n 'composed',\r\n 'composer',\r\n 'composite',\r\n 'compost',\r\n 'composure',\r\n 'compound',\r\n 'compress',\r\n 'comprised',\r\n 'computer',\r\n 'computing',\r\n 'comrade',\r\n 'concave',\r\n 'conceal',\r\n 'conceded',\r\n 'concept',\r\n 'concerned',\r\n 'concert',\r\n 'conch',\r\n 'concierge',\r\n 'concise',\r\n 'conclude',\r\n 'concrete',\r\n 'concur',\r\n 'condense',\r\n 'condiment',\r\n 'condition',\r\n 'condone',\r\n 'conducive',\r\n 'conductor',\r\n 'conduit',\r\n 'cone',\r\n 'confess',\r\n 'confetti',\r\n 'confidant',\r\n 'confident',\r\n 'confider',\r\n 'confiding',\r\n 'configure',\r\n 'confined',\r\n 'confining',\r\n 'confirm',\r\n 'conflict',\r\n 'conform',\r\n 'confound',\r\n 'confront',\r\n 'confused',\r\n 'confusing',\r\n 'confusion',\r\n 'congenial',\r\n 'congested',\r\n 'congrats',\r\n 'congress',\r\n 'conical',\r\n 'conjoined',\r\n 'conjure',\r\n 'conjuror',\r\n 'connected',\r\n 'connector',\r\n 'consensus',\r\n 'consent',\r\n 'console',\r\n 'consoling',\r\n 'consonant',\r\n 'constable',\r\n 'constant',\r\n 'constrain',\r\n 'constrict',\r\n 'construct',\r\n 'consult',\r\n 'consumer',\r\n 'consuming',\r\n 'contact',\r\n 'container',\r\n 'contempt',\r\n 'contend',\r\n 'contented',\r\n 'contently',\r\n 'contents',\r\n 'contest',\r\n 'context',\r\n 'contort',\r\n 'contour',\r\n 'contrite',\r\n 'control',\r\n 'contusion',\r\n 'convene',\r\n 'convent',\r\n 'copartner',\r\n 'cope',\r\n 'copied',\r\n 'copier',\r\n 'copilot',\r\n 'coping',\r\n 'copious',\r\n 'copper',\r\n 'copy',\r\n 'coral',\r\n 'cork',\r\n 'cornball',\r\n 'cornbread',\r\n 'corncob',\r\n 'cornea',\r\n 'corned',\r\n 'corner',\r\n 'cornfield',\r\n 'cornflake',\r\n 'cornhusk',\r\n 'cornmeal',\r\n 'cornstalk',\r\n 'corny',\r\n 'coronary',\r\n 'coroner',\r\n 'corporal',\r\n 'corporate',\r\n 'corral',\r\n 'correct',\r\n 'corridor',\r\n 'corrode',\r\n 'corroding',\r\n 'corrosive',\r\n 'corsage',\r\n 'corset',\r\n 'cortex',\r\n 'cosigner',\r\n 'cosmetics',\r\n 'cosmic',\r\n 'cosmos',\r\n 'cosponsor',\r\n 'cost',\r\n 'cottage',\r\n 'cotton',\r\n 'couch',\r\n 'cough',\r\n 'could',\r\n 'countable',\r\n 'countdown',\r\n 'counting',\r\n 'countless',\r\n 'country',\r\n 'county',\r\n 'courier',\r\n 'covenant',\r\n 'cover',\r\n 'coveted',\r\n 'coveting',\r\n 'coyness',\r\n 'cozily',\r\n 'coziness',\r\n 'cozy',\r\n 'crabbing',\r\n 'crabgrass',\r\n 'crablike',\r\n 'crabmeat',\r\n 'cradle',\r\n 'cradling',\r\n 'crafter',\r\n 'craftily',\r\n 'craftsman',\r\n 'craftwork',\r\n 'crafty',\r\n 'cramp',\r\n 'cranberry',\r\n 'crane',\r\n 'cranial',\r\n 'cranium',\r\n 'crank',\r\n 'crate',\r\n 'crave',\r\n 'craving',\r\n 'crawfish',\r\n 'crawlers',\r\n 'crawling',\r\n 'crayfish',\r\n 'crayon',\r\n 'crazed',\r\n 'crazily',\r\n 'craziness',\r\n 'crazy',\r\n 'creamed',\r\n 'creamer',\r\n 'creamlike',\r\n 'crease',\r\n 'creasing',\r\n 'creatable',\r\n 'create',\r\n 'creation',\r\n 'creative',\r\n 'creature',\r\n 'credible',\r\n 'credibly',\r\n 'credit',\r\n 'creed',\r\n 'creme',\r\n 'creole',\r\n 'crepe',\r\n 'crept',\r\n 'crescent',\r\n 'crested',\r\n 'cresting',\r\n 'crestless',\r\n 'crevice',\r\n 'crewless',\r\n 'crewman',\r\n 'crewmate',\r\n 'crib',\r\n 'cricket',\r\n 'cried',\r\n 'crier',\r\n 'crimp',\r\n 'crimson',\r\n 'cringe',\r\n 'cringing',\r\n 'crinkle',\r\n 'crinkly',\r\n 'crisped',\r\n 'crisping',\r\n 'crisply',\r\n 'crispness',\r\n 'crispy',\r\n 'criteria',\r\n 'critter',\r\n 'croak',\r\n 'crock',\r\n 'crook',\r\n 'croon',\r\n 'crop',\r\n 'cross',\r\n 'crouch',\r\n 'crouton',\r\n 'crowbar',\r\n 'crowd',\r\n 'crown',\r\n 'crucial',\r\n 'crudely',\r\n 'crudeness',\r\n 'cruelly',\r\n 'cruelness',\r\n 'cruelty',\r\n 'crumb',\r\n 'crummiest',\r\n 'crummy',\r\n 'crumpet',\r\n 'crumpled',\r\n 'cruncher',\r\n 'crunching',\r\n 'crunchy',\r\n 'crusader',\r\n 'crushable',\r\n 'crushed',\r\n 'crusher',\r\n 'crushing',\r\n 'crust',\r\n 'crux',\r\n 'crying',\r\n 'cryptic',\r\n 'crystal',\r\n 'cubbyhole',\r\n 'cube',\r\n 'cubical',\r\n 'cubicle',\r\n 'cucumber',\r\n 'cuddle',\r\n 'cuddly',\r\n 'cufflink',\r\n 'culinary',\r\n 'culminate',\r\n 'culpable',\r\n 'culprit',\r\n 'cultivate',\r\n 'cultural',\r\n 'culture',\r\n 'cupbearer',\r\n 'cupcake',\r\n 'cupid',\r\n 'cupped',\r\n 'cupping',\r\n 'curable',\r\n 'curator',\r\n 'curdle',\r\n 'cure',\r\n 'curfew',\r\n 'curing',\r\n 'curled',\r\n 'curler',\r\n 'curliness',\r\n 'curling',\r\n 'curly',\r\n 'curry',\r\n 'curse',\r\n 'cursive',\r\n 'cursor',\r\n 'curtain',\r\n 'curtly',\r\n 'curtsy',\r\n 'curvature',\r\n 'curve',\r\n 'curvy',\r\n 'cushy',\r\n 'cusp',\r\n 'cussed',\r\n 'custard',\r\n 'custodian',\r\n 'custody',\r\n 'customary',\r\n 'customer',\r\n 'customize',\r\n 'customs',\r\n 'cut',\r\n 'cycle',\r\n 'cyclic',\r\n 'cycling',\r\n 'cyclist',\r\n 'cylinder',\r\n 'cymbal',\r\n 'cytoplasm',\r\n 'cytoplast',\r\n 'dab',\r\n 'dad',\r\n 'daffodil',\r\n 'dagger',\r\n 'daily',\r\n 'daintily',\r\n 'dainty',\r\n 'dairy',\r\n 'daisy',\r\n 'dallying',\r\n 'dance',\r\n 'dancing',\r\n 'dandelion',\r\n 'dander',\r\n 'dandruff',\r\n 'dandy',\r\n 'danger',\r\n 'dangle',\r\n 'dangling',\r\n 'daredevil',\r\n 'dares',\r\n 'daringly',\r\n 'darkened',\r\n 'darkening',\r\n 'darkish',\r\n 'darkness',\r\n 'darkroom',\r\n 'darling',\r\n 'darn',\r\n 'dart',\r\n 'darwinism',\r\n 'dash',\r\n 'dastardly',\r\n 'data',\r\n 'datebook',\r\n 'dating',\r\n 'daughter',\r\n 'daunting',\r\n 'dawdler',\r\n 'dawn',\r\n 'daybed',\r\n 'daybreak',\r\n 'daycare',\r\n 'daydream',\r\n 'daylight',\r\n 'daylong',\r\n 'dayroom',\r\n 'daytime',\r\n 'dazzler',\r\n 'dazzling',\r\n 'deacon',\r\n 'deafening',\r\n 'deafness',\r\n 'dealer',\r\n 'dealing',\r\n 'dealmaker',\r\n 'dealt',\r\n 'dean',\r\n 'debatable',\r\n 'debate',\r\n 'debating',\r\n 'debit',\r\n 'debrief',\r\n 'debtless',\r\n 'debtor',\r\n 'debug',\r\n 'debunk',\r\n 'decade',\r\n 'decaf',\r\n 'decal',\r\n 'decathlon',\r\n 'decay',\r\n 'deceased',\r\n 'deceit',\r\n 'deceiver',\r\n 'deceiving',\r\n 'december',\r\n 'decency',\r\n 'decent',\r\n 'deception',\r\n 'deceptive',\r\n 'decibel',\r\n 'decidable',\r\n 'decimal',\r\n 'decimeter',\r\n 'decipher',\r\n 'deck',\r\n 'declared',\r\n 'decline',\r\n 'decode',\r\n 'decompose',\r\n 'decorated',\r\n 'decorator',\r\n 'decoy',\r\n 'decrease',\r\n 'decree',\r\n 'dedicate',\r\n 'dedicator',\r\n 'deduce',\r\n 'deduct',\r\n 'deed',\r\n 'deem',\r\n 'deepen',\r\n 'deeply',\r\n 'deepness',\r\n 'deface',\r\n 'defacing',\r\n 'defame',\r\n 'default',\r\n 'defeat',\r\n 'defection',\r\n 'defective',\r\n 'defendant',\r\n 'defender',\r\n 'defense',\r\n 'defensive',\r\n 'deferral',\r\n 'deferred',\r\n 'defiance',\r\n 'defiant',\r\n 'defile',\r\n 'defiling',\r\n 'define',\r\n 'definite',\r\n 'deflate',\r\n 'deflation',\r\n 'deflator',\r\n 'deflected',\r\n 'deflector',\r\n 'defog',\r\n 'deforest',\r\n 'defraud',\r\n 'defrost',\r\n 'deftly',\r\n 'defuse',\r\n 'defy',\r\n 'degraded',\r\n 'degrading',\r\n 'degrease',\r\n 'degree',\r\n 'dehydrate',\r\n 'deity',\r\n 'dejected',\r\n 'delay',\r\n 'delegate',\r\n 'delegator',\r\n 'delete',\r\n 'deletion',\r\n 'delicacy',\r\n 'delicate',\r\n 'delicious',\r\n 'delighted',\r\n 'delirious',\r\n 'delirium',\r\n 'deliverer',\r\n 'delivery',\r\n 'delouse',\r\n 'delta',\r\n 'deluge',\r\n 'delusion',\r\n 'deluxe',\r\n 'demanding',\r\n 'demeaning',\r\n 'demeanor',\r\n 'demise',\r\n 'democracy',\r\n 'democrat',\r\n 'demote',\r\n 'demotion',\r\n 'demystify',\r\n 'denatured',\r\n 'deniable',\r\n 'denial',\r\n 'denim',\r\n 'denote',\r\n 'dense',\r\n 'density',\r\n 'dental',\r\n 'dentist',\r\n 'denture',\r\n 'deny',\r\n 'deodorant',\r\n 'deodorize',\r\n 'departed',\r\n 'departure',\r\n 'depict',\r\n 'deplete',\r\n 'depletion',\r\n 'deplored',\r\n 'deploy',\r\n 'deport',\r\n 'depose',\r\n 'depraved',\r\n 'depravity',\r\n 'deprecate',\r\n 'depress',\r\n 'deprive',\r\n 'depth',\r\n 'deputize',\r\n 'deputy',\r\n 'derail',\r\n 'deranged',\r\n 'derby',\r\n 'derived',\r\n 'desecrate',\r\n 'deserve',\r\n 'deserving',\r\n 'designate',\r\n 'designed',\r\n 'designer',\r\n 'designing',\r\n 'deskbound',\r\n 'desktop',\r\n 'deskwork',\r\n 'desolate',\r\n 'despair',\r\n 'despise',\r\n 'despite',\r\n 'destiny',\r\n 'destitute',\r\n 'destruct',\r\n 'detached',\r\n 'detail',\r\n 'detection',\r\n 'detective',\r\n 'detector',\r\n 'detention',\r\n 'detergent',\r\n 'detest',\r\n 'detonate',\r\n 'detonator',\r\n 'detoxify',\r\n 'detract',\r\n 'deuce',\r\n 'devalue',\r\n 'deviancy',\r\n 'deviant',\r\n 'deviate',\r\n 'deviation',\r\n 'deviator',\r\n 'device',\r\n 'devious',\r\n 'devotedly',\r\n 'devotee',\r\n 'devotion',\r\n 'devourer',\r\n 'devouring',\r\n 'devoutly',\r\n 'dexterity',\r\n 'dexterous',\r\n 'diabetes',\r\n 'diabetic',\r\n 'diabolic',\r\n 'diagnoses',\r\n 'diagnosis',\r\n 'diagram',\r\n 'dial',\r\n 'diameter',\r\n 'diaper',\r\n 'diaphragm',\r\n 'diary',\r\n 'dice',\r\n 'dicing',\r\n 'dictate',\r\n 'dictation',\r\n 'dictator',\r\n 'difficult',\r\n 'diffused',\r\n 'diffuser',\r\n 'diffusion',\r\n 'diffusive',\r\n 'dig',\r\n 'dilation',\r\n 'diligence',\r\n 'diligent',\r\n 'dill',\r\n 'dilute',\r\n 'dime',\r\n 'diminish',\r\n 'dimly',\r\n 'dimmed',\r\n 'dimmer',\r\n 'dimness',\r\n 'dimple',\r\n 'diner',\r\n 'dingbat',\r\n 'dinghy',\r\n 'dinginess',\r\n 'dingo',\r\n 'dingy',\r\n 'dining',\r\n 'dinner',\r\n 'diocese',\r\n 'dioxide',\r\n 'diploma',\r\n 'dipped',\r\n 'dipper',\r\n 'dipping',\r\n 'directed',\r\n 'direction',\r\n 'directive',\r\n 'directly',\r\n 'directory',\r\n 'direness',\r\n 'dirtiness',\r\n 'disabled',\r\n 'disagree',\r\n 'disallow',\r\n 'disarm',\r\n 'disarray',\r\n 'disaster',\r\n 'disband',\r\n 'disbelief',\r\n 'disburse',\r\n 'discard',\r\n 'discern',\r\n 'discharge',\r\n 'disclose',\r\n 'discolor',\r\n 'discount',\r\n 'discourse',\r\n 'discover',\r\n 'discuss',\r\n 'disdain',\r\n 'disengage',\r\n 'disfigure',\r\n 'disgrace',\r\n 'dish',\r\n 'disinfect',\r\n 'disjoin',\r\n 'disk',\r\n 'dislike',\r\n 'disliking',\r\n 'dislocate',\r\n 'dislodge',\r\n 'disloyal',\r\n 'dismantle',\r\n 'dismay',\r\n 'dismiss',\r\n 'dismount',\r\n 'disobey',\r\n 'disorder',\r\n 'disown',\r\n 'disparate',\r\n 'disparity',\r\n 'dispatch',\r\n 'dispense',\r\n 'dispersal',\r\n 'dispersed',\r\n 'disperser',\r\n 'displace',\r\n 'display',\r\n 'displease',\r\n 'disposal',\r\n 'dispose',\r\n 'disprove',\r\n 'dispute',\r\n 'disregard',\r\n 'disrupt',\r\n 'dissuade',\r\n 'distance',\r\n 'distant',\r\n 'distaste',\r\n 'distill',\r\n 'distinct',\r\n 'distort',\r\n 'distract',\r\n 'distress',\r\n 'district',\r\n 'distrust',\r\n 'ditch',\r\n 'ditto',\r\n 'ditzy',\r\n 'dividable',\r\n 'divided',\r\n 'dividend',\r\n 'dividers',\r\n 'dividing',\r\n 'divinely',\r\n 'diving',\r\n 'divinity',\r\n 'divisible',\r\n 'divisibly',\r\n 'division',\r\n 'divisive',\r\n 'divorcee',\r\n 'dizziness',\r\n 'dizzy',\r\n 'doable',\r\n 'docile',\r\n 'dock',\r\n 'doctrine',\r\n 'document',\r\n 'dodge',\r\n 'dodgy',\r\n 'doily',\r\n 'doing',\r\n 'dole',\r\n 'dollar',\r\n 'dollhouse',\r\n 'dollop',\r\n 'dolly',\r\n 'dolphin',\r\n 'domain',\r\n 'domelike',\r\n 'domestic',\r\n 'dominion',\r\n 'dominoes',\r\n 'donated',\r\n 'donation',\r\n 'donator',\r\n 'donor',\r\n 'donut',\r\n 'doodle',\r\n 'doorbell',\r\n 'doorframe',\r\n 'doorknob',\r\n 'doorman',\r\n 'doormat',\r\n 'doornail',\r\n 'doorpost',\r\n 'doorstep',\r\n 'doorstop',\r\n 'doorway',\r\n 'doozy',\r\n 'dork',\r\n 'dormitory',\r\n 'dorsal',\r\n 'dosage',\r\n 'dose',\r\n 'dotted',\r\n 'doubling',\r\n 'douche',\r\n 'dove',\r\n 'down',\r\n 'dowry',\r\n 'doze',\r\n 'drab',\r\n 'dragging',\r\n 'dragonfly',\r\n 'dragonish',\r\n 'dragster',\r\n 'drainable',\r\n 'drainage',\r\n 'drained',\r\n 'drainer',\r\n 'drainpipe',\r\n 'dramatic',\r\n 'dramatize',\r\n 'drank',\r\n 'drapery',\r\n 'drastic',\r\n 'draw',\r\n 'dreaded',\r\n 'dreadful',\r\n 'dreadlock',\r\n 'dreamboat',\r\n 'dreamily',\r\n 'dreamland',\r\n 'dreamless',\r\n 'dreamlike',\r\n 'dreamt',\r\n 'dreamy',\r\n 'drearily',\r\n 'dreary',\r\n 'drench',\r\n 'dress',\r\n 'drew',\r\n 'dribble',\r\n 'dried',\r\n 'drier',\r\n 'drift',\r\n 'driller',\r\n 'drilling',\r\n 'drinkable',\r\n 'drinking',\r\n 'dripping',\r\n 'drippy',\r\n 'drivable',\r\n 'driven',\r\n 'driver',\r\n 'driveway',\r\n 'driving',\r\n 'drizzle',\r\n 'drizzly',\r\n 'drone',\r\n 'drool',\r\n 'droop',\r\n 'drop-down',\r\n 'dropbox',\r\n 'dropkick',\r\n 'droplet',\r\n 'dropout',\r\n 'dropper',\r\n 'drove',\r\n 'drown',\r\n 'drowsily',\r\n 'drudge',\r\n 'drum',\r\n 'dry',\r\n 'dubbed',\r\n 'dubiously',\r\n 'duchess',\r\n 'duckbill',\r\n 'ducking',\r\n 'duckling',\r\n 'ducktail',\r\n 'ducky',\r\n 'duct',\r\n 'dude',\r\n 'duffel',\r\n 'dugout',\r\n 'duh',\r\n 'duke',\r\n 'duller',\r\n 'dullness',\r\n 'duly',\r\n 'dumping',\r\n 'dumpling',\r\n 'dumpster',\r\n 'duo',\r\n 'dupe',\r\n 'duplex',\r\n 'duplicate',\r\n 'duplicity',\r\n 'durable',\r\n 'durably',\r\n 'duration',\r\n 'duress',\r\n 'during',\r\n 'dusk',\r\n 'dust',\r\n 'dutiful',\r\n 'duty',\r\n 'duvet',\r\n 'dwarf',\r\n 'dweeb',\r\n 'dwelled',\r\n 'dweller',\r\n 'dwelling',\r\n 'dwindle',\r\n 'dwindling',\r\n 'dynamic',\r\n 'dynamite',\r\n 'dynasty',\r\n 'dyslexia',\r\n 'dyslexic',\r\n 'each',\r\n 'eagle',\r\n 'earache',\r\n 'eardrum',\r\n 'earflap',\r\n 'earful',\r\n 'earlobe',\r\n 'early',\r\n 'earmark',\r\n 'earmuff',\r\n 'earphone',\r\n 'earpiece',\r\n 'earplugs',\r\n 'earring',\r\n 'earshot',\r\n 'earthen',\r\n 'earthlike',\r\n 'earthling',\r\n 'earthly',\r\n 'earthworm',\r\n 'earthy',\r\n 'earwig',\r\n 'easeful',\r\n 'easel',\r\n 'easiest',\r\n 'easily',\r\n 'easiness',\r\n 'easing',\r\n 'eastbound',\r\n 'eastcoast',\r\n 'easter',\r\n 'eastward',\r\n 'eatable',\r\n 'eaten',\r\n 'eatery',\r\n 'eating',\r\n 'eats',\r\n 'ebay',\r\n 'ebony',\r\n 'ebook',\r\n 'ecard',\r\n 'eccentric',\r\n 'echo',\r\n 'eclair',\r\n 'eclipse',\r\n 'ecologist',\r\n 'ecology',\r\n 'economic',\r\n 'economist',\r\n 'economy',\r\n 'ecosphere',\r\n 'ecosystem',\r\n 'edge',\r\n 'edginess',\r\n 'edging',\r\n 'edgy',\r\n 'edition',\r\n 'editor',\r\n 'educated',\r\n 'education',\r\n 'educator',\r\n 'eel',\r\n 'effective',\r\n 'effects',\r\n 'efficient',\r\n 'effort',\r\n 'eggbeater',\r\n 'egging',\r\n 'eggnog',\r\n 'eggplant',\r\n 'eggshell',\r\n 'egomaniac',\r\n 'egotism',\r\n 'egotistic',\r\n 'either',\r\n 'eject',\r\n 'elaborate',\r\n 'elastic',\r\n 'elated',\r\n 'elbow',\r\n 'eldercare',\r\n 'elderly',\r\n 'eldest',\r\n 'electable',\r\n 'election',\r\n 'elective',\r\n 'elephant',\r\n 'elevate',\r\n 'elevating',\r\n 'elevation',\r\n 'elevator',\r\n 'eleven',\r\n 'elf',\r\n 'eligible',\r\n 'eligibly',\r\n 'eliminate',\r\n 'elite',\r\n 'elitism',\r\n 'elixir',\r\n 'elk',\r\n 'ellipse',\r\n 'elliptic',\r\n 'elm',\r\n 'elongated',\r\n 'elope',\r\n 'eloquence',\r\n 'eloquent',\r\n 'elsewhere',\r\n 'elude',\r\n 'elusive',\r\n 'elves',\r\n 'email',\r\n 'embargo',\r\n 'embark',\r\n 'embassy',\r\n 'embattled',\r\n 'embellish',\r\n 'ember',\r\n 'embezzle',\r\n 'emblaze',\r\n 'emblem',\r\n 'embody',\r\n 'embolism',\r\n 'emboss',\r\n 'embroider',\r\n 'emcee',\r\n 'emerald',\r\n 'emergency',\r\n 'emission',\r\n 'emit',\r\n 'emote',\r\n 'emoticon',\r\n 'emotion',\r\n 'empathic',\r\n 'empathy',\r\n 'emperor',\r\n 'emphases',\r\n 'emphasis',\r\n 'emphasize',\r\n 'emphatic',\r\n 'empirical',\r\n 'employed',\r\n 'employee',\r\n 'employer',\r\n 'emporium',\r\n 'empower',\r\n 'emptier',\r\n 'emptiness',\r\n 'empty',\r\n 'emu',\r\n 'enable',\r\n 'enactment',\r\n 'enamel',\r\n 'enchanted',\r\n 'enchilada',\r\n 'encircle',\r\n 'enclose',\r\n 'enclosure',\r\n 'encode',\r\n 'encore',\r\n 'encounter',\r\n 'encourage',\r\n 'encroach',\r\n 'encrust',\r\n 'encrypt',\r\n 'endanger',\r\n 'endeared',\r\n 'endearing',\r\n 'ended',\r\n 'ending',\r\n 'endless',\r\n 'endnote',\r\n 'endocrine',\r\n 'endorphin',\r\n 'endorse',\r\n 'endowment',\r\n 'endpoint',\r\n 'endurable',\r\n 'endurance',\r\n 'enduring',\r\n 'energetic',\r\n 'energize',\r\n 'energy',\r\n 'enforced',\r\n 'enforcer',\r\n 'engaged',\r\n 'engaging',\r\n 'engine',\r\n 'engorge',\r\n 'engraved',\r\n 'engraver',\r\n 'engraving',\r\n 'engross',\r\n 'engulf',\r\n 'enhance',\r\n 'enigmatic',\r\n 'enjoyable',\r\n 'enjoyably',\r\n 'enjoyer',\r\n 'enjoying',\r\n 'enjoyment',\r\n 'enlarged',\r\n 'enlarging',\r\n 'enlighten',\r\n 'enlisted',\r\n 'enquirer',\r\n 'enrage',\r\n 'enrich',\r\n 'enroll',\r\n 'enslave',\r\n 'ensnare',\r\n 'ensure',\r\n 'entail',\r\n 'entangled',\r\n 'entering',\r\n 'entertain',\r\n 'enticing',\r\n 'entire',\r\n 'entitle',\r\n 'entity',\r\n 'entomb',\r\n 'entourage',\r\n 'entrap',\r\n 'entree',\r\n 'entrench',\r\n 'entrust',\r\n 'entryway',\r\n 'entwine',\r\n 'enunciate',\r\n 'envelope',\r\n 'enviable',\r\n 'enviably',\r\n 'envious',\r\n 'envision',\r\n 'envoy',\r\n 'envy',\r\n 'enzyme',\r\n 'epic',\r\n 'epidemic',\r\n 'epidermal',\r\n 'epidermis',\r\n 'epidural',\r\n 'epilepsy',\r\n 'epileptic',\r\n 'epilogue',\r\n 'epiphany',\r\n 'episode',\r\n 'equal',\r\n 'equate',\r\n 'equation',\r\n 'equator',\r\n 'equinox',\r\n 'equipment',\r\n 'equity',\r\n 'equivocal',\r\n 'eradicate',\r\n 'erasable',\r\n 'erased',\r\n 'eraser',\r\n 'erasure',\r\n 'ergonomic',\r\n 'errand',\r\n 'errant',\r\n 'erratic',\r\n 'error',\r\n 'erupt',\r\n 'escalate',\r\n 'escalator',\r\n 'escapable',\r\n 'escapade',\r\n 'escapist',\r\n 'escargot',\r\n 'eskimo',\r\n 'esophagus',\r\n 'espionage',\r\n 'espresso',\r\n 'esquire',\r\n 'essay',\r\n 'essence',\r\n 'essential',\r\n 'establish',\r\n 'estate',\r\n 'esteemed',\r\n 'estimate',\r\n 'estimator',\r\n 'estranged',\r\n 'estrogen',\r\n 'etching',\r\n 'eternal',\r\n 'eternity',\r\n 'ethanol',\r\n 'ether',\r\n 'ethically',\r\n 'ethics',\r\n 'euphemism',\r\n 'evacuate',\r\n 'evacuee',\r\n 'evade',\r\n 'evaluate',\r\n 'evaluator',\r\n 'evaporate',\r\n 'evasion',\r\n 'evasive',\r\n 'even',\r\n 'everglade',\r\n 'evergreen',\r\n 'everybody',\r\n 'everyday',\r\n 'everyone',\r\n 'evict',\r\n 'evidence',\r\n 'evident',\r\n 'evil',\r\n 'evoke',\r\n 'evolution',\r\n 'evolve',\r\n 'exact',\r\n 'exalted',\r\n 'example',\r\n 'excavate',\r\n 'excavator',\r\n 'exceeding',\r\n 'exception',\r\n 'excess',\r\n 'exchange',\r\n 'excitable',\r\n 'exciting',\r\n 'exclaim',\r\n 'exclude',\r\n 'excluding',\r\n 'exclusion',\r\n 'exclusive',\r\n 'excretion',\r\n 'excretory',\r\n 'excursion',\r\n 'excusable',\r\n 'excusably',\r\n 'excuse',\r\n 'exemplary',\r\n 'exemplify',\r\n 'exemption',\r\n 'exerciser',\r\n 'exert',\r\n 'exes',\r\n 'exfoliate',\r\n 'exhale',\r\n 'exhaust',\r\n 'exhume',\r\n 'exile',\r\n 'existing',\r\n 'exit',\r\n 'exodus',\r\n 'exonerate',\r\n 'exorcism',\r\n 'exorcist',\r\n 'expand',\r\n 'expanse',\r\n 'expansion',\r\n 'expansive',\r\n 'expectant',\r\n 'expedited',\r\n 'expediter',\r\n 'expel',\r\n 'expend',\r\n 'expenses',\r\n 'expensive',\r\n 'expert',\r\n 'expire',\r\n 'expiring',\r\n 'explain',\r\n 'expletive',\r\n 'explicit',\r\n 'explode',\r\n 'exploit',\r\n 'explore',\r\n 'exploring',\r\n 'exponent',\r\n 'exporter',\r\n 'exposable',\r\n 'expose',\r\n 'exposure',\r\n 'express',\r\n 'expulsion',\r\n 'exquisite',\r\n 'extended',\r\n 'extending',\r\n 'extent',\r\n 'extenuate',\r\n 'exterior',\r\n 'external',\r\n 'extinct',\r\n 'extortion',\r\n 'extradite',\r\n 'extras',\r\n 'extrovert',\r\n 'extrude',\r\n 'extruding',\r\n 'exuberant',\r\n 'fable',\r\n 'fabric',\r\n 'fabulous',\r\n 'facebook',\r\n 'facecloth',\r\n 'facedown',\r\n 'faceless',\r\n 'facelift',\r\n 'faceplate',\r\n 'faceted',\r\n 'facial',\r\n 'facility',\r\n 'facing',\r\n 'facsimile',\r\n 'faction',\r\n 'factoid',\r\n 'factor',\r\n 'factsheet',\r\n 'factual',\r\n 'faculty',\r\n 'fade',\r\n 'fading',\r\n 'failing',\r\n 'falcon',\r\n 'fall',\r\n 'false',\r\n 'falsify',\r\n 'fame',\r\n 'familiar',\r\n 'family',\r\n 'famine',\r\n 'famished',\r\n 'fanatic',\r\n 'fancied',\r\n 'fanciness',\r\n 'fancy',\r\n 'fanfare',\r\n 'fang',\r\n 'fanning',\r\n 'fantasize',\r\n 'fantastic',\r\n 'fantasy',\r\n 'fascism',\r\n 'fastball',\r\n 'faster',\r\n 'fasting',\r\n 'fastness',\r\n 'faucet',\r\n 'favorable',\r\n 'favorably',\r\n 'favored',\r\n 'favoring',\r\n 'favorite',\r\n 'fax',\r\n 'feast',\r\n 'federal',\r\n 'fedora',\r\n 'feeble',\r\n 'feed',\r\n 'feel',\r\n 'feisty',\r\n 'feline',\r\n 'felt-tip',\r\n 'feminine',\r\n 'feminism',\r\n 'feminist',\r\n 'feminize',\r\n 'femur',\r\n 'fence',\r\n 'fencing',\r\n 'fender',\r\n 'ferment',\r\n 'fernlike',\r\n 'ferocious',\r\n 'ferocity',\r\n 'ferret',\r\n 'ferris',\r\n 'ferry',\r\n 'fervor',\r\n 'fester',\r\n 'festival',\r\n 'festive',\r\n 'festivity',\r\n 'fetal',\r\n 'fetch',\r\n 'fever',\r\n 'fiber',\r\n 'fiction',\r\n 'fiddle',\r\n 'fiddling',\r\n 'fidelity',\r\n 'fidgeting',\r\n 'fidgety',\r\n 'fifteen',\r\n 'fifth',\r\n 'fiftieth',\r\n 'fifty',\r\n 'figment',\r\n 'figure',\r\n 'figurine',\r\n 'filing',\r\n 'filled',\r\n 'filler',\r\n 'filling',\r\n 'film',\r\n 'filter',\r\n 'filth',\r\n 'filtrate',\r\n 'finale',\r\n 'finalist',\r\n 'finalize',\r\n 'finally',\r\n 'finance',\r\n 'financial',\r\n 'finch',\r\n 'fineness',\r\n 'finer',\r\n 'finicky',\r\n 'finished',\r\n 'finisher',\r\n 'finishing',\r\n 'finite',\r\n 'finless',\r\n 'finlike',\r\n 'fiscally',\r\n 'fit',\r\n 'five',\r\n 'flaccid',\r\n 'flagman',\r\n 'flagpole',\r\n 'flagship',\r\n 'flagstick',\r\n 'flagstone',\r\n 'flail',\r\n 'flakily',\r\n 'flaky',\r\n 'flame',\r\n 'flammable',\r\n 'flanked',\r\n 'flanking',\r\n 'flannels',\r\n 'flap',\r\n 'flaring',\r\n 'flashback',\r\n 'flashbulb',\r\n 'flashcard',\r\n 'flashily',\r\n 'flashing',\r\n 'flashy',\r\n 'flask',\r\n 'flatbed',\r\n 'flatfoot',\r\n 'flatly',\r\n 'flatness',\r\n 'flatten',\r\n 'flattered',\r\n 'flatterer',\r\n 'flattery',\r\n 'flattop',\r\n 'flatware',\r\n 'flatworm',\r\n 'flavored',\r\n 'flavorful',\r\n 'flavoring',\r\n 'flaxseed',\r\n 'fled',\r\n 'fleshed',\r\n 'fleshy',\r\n 'flick',\r\n 'flier',\r\n 'flight',\r\n 'flinch',\r\n 'fling',\r\n 'flint',\r\n 'flip',\r\n 'flirt',\r\n 'float',\r\n 'flock',\r\n 'flogging',\r\n 'flop',\r\n 'floral',\r\n 'florist',\r\n 'floss',\r\n 'flounder',\r\n 'flyable',\r\n 'flyaway',\r\n 'flyer',\r\n 'flying',\r\n 'flyover',\r\n 'flypaper',\r\n 'foam',\r\n 'foe',\r\n 'fog',\r\n 'foil',\r\n 'folic',\r\n 'folk',\r\n 'follicle',\r\n 'follow',\r\n 'fondling',\r\n 'fondly',\r\n 'fondness',\r\n 'fondue',\r\n 'font',\r\n 'food',\r\n 'fool',\r\n 'footage',\r\n 'football',\r\n 'footbath',\r\n 'footboard',\r\n 'footer',\r\n 'footgear',\r\n 'foothill',\r\n 'foothold',\r\n 'footing',\r\n 'footless',\r\n 'footman',\r\n 'footnote',\r\n 'footpad',\r\n 'footpath',\r\n 'footprint',\r\n 'footrest',\r\n 'footsie',\r\n 'footsore',\r\n 'footwear',\r\n 'footwork',\r\n 'fossil',\r\n 'foster',\r\n 'founder',\r\n 'founding',\r\n 'fountain',\r\n 'fox',\r\n 'foyer',\r\n 'fraction',\r\n 'fracture',\r\n 'fragile',\r\n 'fragility',\r\n 'fragment',\r\n 'fragrance',\r\n 'fragrant',\r\n 'frail',\r\n 'frame',\r\n 'framing',\r\n 'frantic',\r\n 'fraternal',\r\n 'frayed',\r\n 'fraying',\r\n 'frays',\r\n 'freckled',\r\n 'freckles',\r\n 'freebase',\r\n 'freebee',\r\n 'freebie',\r\n 'freedom',\r\n 'freefall',\r\n 'freehand',\r\n 'freeing',\r\n 'freeload',\r\n 'freely',\r\n 'freemason',\r\n 'freeness',\r\n 'freestyle',\r\n 'freeware',\r\n 'freeway',\r\n 'freewill',\r\n 'freezable',\r\n 'freezing',\r\n 'freight',\r\n 'french',\r\n 'frenzied',\r\n 'frenzy',\r\n 'frequency',\r\n 'frequent',\r\n 'fresh',\r\n 'fretful',\r\n 'fretted',\r\n 'friction',\r\n 'friday',\r\n 'fridge',\r\n 'fried',\r\n 'friend',\r\n 'frighten',\r\n 'frightful',\r\n 'frigidity',\r\n 'frigidly',\r\n 'frill',\r\n 'fringe',\r\n 'frisbee',\r\n 'frisk',\r\n 'fritter',\r\n 'frivolous',\r\n 'frolic',\r\n 'from',\r\n 'front',\r\n 'frostbite',\r\n 'frosted',\r\n 'frostily',\r\n 'frosting',\r\n 'frostlike',\r\n 'frosty',\r\n 'froth',\r\n 'frown',\r\n 'frozen',\r\n 'fructose',\r\n 'frugality',\r\n 'frugally',\r\n 'fruit',\r\n 'frustrate',\r\n 'frying',\r\n 'gab',\r\n 'gaffe',\r\n 'gag',\r\n 'gainfully',\r\n 'gaining',\r\n 'gains',\r\n 'gala',\r\n 'gallantly',\r\n 'galleria',\r\n 'gallery',\r\n 'galley',\r\n 'gallon',\r\n 'gallows',\r\n 'gallstone',\r\n 'galore',\r\n 'galvanize',\r\n 'gambling',\r\n 'game',\r\n 'gaming',\r\n 'gamma',\r\n 'gander',\r\n 'gangly',\r\n 'gangrene',\r\n 'gangway',\r\n 'gap',\r\n 'garage',\r\n 'garbage',\r\n 'garden',\r\n 'gargle',\r\n 'garland',\r\n 'garlic',\r\n 'garment',\r\n 'garnet',\r\n 'garnish',\r\n 'garter',\r\n 'gas',\r\n 'gatherer',\r\n 'gathering',\r\n 'gating',\r\n 'gauging',\r\n 'gauntlet',\r\n 'gauze',\r\n 'gave',\r\n 'gawk',\r\n 'gazing',\r\n 'gear',\r\n 'gecko',\r\n 'geek',\r\n 'geiger',\r\n 'gem',\r\n 'gender',\r\n 'generic',\r\n 'generous',\r\n 'genetics',\r\n 'genre',\r\n 'gentile',\r\n 'gentleman',\r\n 'gently',\r\n 'gents',\r\n 'geography',\r\n 'geologic',\r\n 'geologist',\r\n 'geology',\r\n 'geometric',\r\n 'geometry',\r\n 'geranium',\r\n 'gerbil',\r\n 'geriatric',\r\n 'germicide',\r\n 'germinate',\r\n 'germless',\r\n 'germproof',\r\n 'gestate',\r\n 'gestation',\r\n 'gesture',\r\n 'getaway',\r\n 'getting',\r\n 'getup',\r\n 'giant',\r\n 'gibberish',\r\n 'giblet',\r\n 'giddily',\r\n 'giddiness',\r\n 'giddy',\r\n 'gift',\r\n 'gigabyte',\r\n 'gigahertz',\r\n 'gigantic',\r\n 'giggle',\r\n 'giggling',\r\n 'giggly',\r\n 'gigolo',\r\n 'gilled',\r\n 'gills',\r\n 'gimmick',\r\n 'girdle',\r\n 'giveaway',\r\n 'given',\r\n 'giver',\r\n 'giving',\r\n 'gizmo',\r\n 'gizzard',\r\n 'glacial',\r\n 'glacier',\r\n 'glade',\r\n 'gladiator',\r\n 'gladly',\r\n 'glamorous',\r\n 'glamour',\r\n 'glance',\r\n 'glancing',\r\n 'glandular',\r\n 'glare',\r\n 'glaring',\r\n 'glass',\r\n 'glaucoma',\r\n 'glazing',\r\n 'gleaming',\r\n 'gleeful',\r\n 'glider',\r\n 'gliding',\r\n 'glimmer',\r\n 'glimpse',\r\n 'glisten',\r\n 'glitch',\r\n 'glitter',\r\n 'glitzy',\r\n 'gloater',\r\n 'gloating',\r\n 'gloomily',\r\n 'gloomy',\r\n 'glorified',\r\n 'glorifier',\r\n 'glorify',\r\n 'glorious',\r\n 'glory',\r\n 'gloss',\r\n 'glove',\r\n 'glowing',\r\n 'glowworm',\r\n 'glucose',\r\n 'glue',\r\n 'gluten',\r\n 'glutinous',\r\n 'glutton',\r\n 'gnarly',\r\n 'gnat',\r\n 'goal',\r\n 'goatskin',\r\n 'goes',\r\n 'goggles',\r\n 'going',\r\n 'goldfish',\r\n 'goldmine',\r\n 'goldsmith',\r\n 'golf',\r\n 'goliath',\r\n 'gonad',\r\n 'gondola',\r\n 'gone',\r\n 'gong',\r\n 'good',\r\n 'gooey',\r\n 'goofball',\r\n 'goofiness',\r\n 'goofy',\r\n 'google',\r\n 'goon',\r\n 'gopher',\r\n 'gore',\r\n 'gorged',\r\n 'gorgeous',\r\n 'gory',\r\n 'gosling',\r\n 'gossip',\r\n 'gothic',\r\n 'gotten',\r\n 'gout',\r\n 'gown',\r\n 'grab',\r\n 'graceful',\r\n 'graceless',\r\n 'gracious',\r\n 'gradation',\r\n 'graded',\r\n 'grader',\r\n 'gradient',\r\n 'grading',\r\n 'gradually',\r\n 'graduate',\r\n 'graffiti',\r\n 'grafted',\r\n 'grafting',\r\n 'grain',\r\n 'granddad',\r\n 'grandkid',\r\n 'grandly',\r\n 'grandma',\r\n 'grandpa',\r\n 'grandson',\r\n 'granite',\r\n 'granny',\r\n 'granola',\r\n 'grant',\r\n 'granular',\r\n 'grape',\r\n 'graph',\r\n 'grapple',\r\n 'grappling',\r\n 'grasp',\r\n 'grass',\r\n 'gratified',\r\n 'gratify',\r\n 'grating',\r\n 'gratitude',\r\n 'gratuity',\r\n 'gravel',\r\n 'graveness',\r\n 'graves',\r\n 'graveyard',\r\n 'gravitate',\r\n 'gravity',\r\n 'gravy',\r\n 'gray',\r\n 'grazing',\r\n 'greasily',\r\n 'greedily',\r\n 'greedless',\r\n 'greedy',\r\n 'green',\r\n 'greeter',\r\n 'greeting',\r\n 'grew',\r\n 'greyhound',\r\n 'grid',\r\n 'grief',\r\n 'grievance',\r\n 'grieving',\r\n 'grievous',\r\n 'grill',\r\n 'grimace',\r\n 'grimacing',\r\n 'grime',\r\n 'griminess',\r\n 'grimy',\r\n 'grinch',\r\n 'grinning',\r\n 'grip',\r\n 'gristle',\r\n 'grit',\r\n 'groggily',\r\n 'groggy',\r\n 'groin',\r\n 'groom',\r\n 'groove',\r\n 'grooving',\r\n 'groovy',\r\n 'grope',\r\n 'ground',\r\n 'grouped',\r\n 'grout',\r\n 'grove',\r\n 'grower',\r\n 'growing',\r\n 'growl',\r\n 'grub',\r\n 'grudge',\r\n 'grudging',\r\n 'grueling',\r\n 'gruffly',\r\n 'grumble',\r\n 'grumbling',\r\n 'grumbly',\r\n 'grumpily',\r\n 'grunge',\r\n 'grunt',\r\n 'guacamole',\r\n 'guidable',\r\n 'guidance',\r\n 'guide',\r\n 'guiding',\r\n 'guileless',\r\n 'guise',\r\n 'gulf',\r\n 'gullible',\r\n 'gully',\r\n 'gulp',\r\n 'gumball',\r\n 'gumdrop',\r\n 'gumminess',\r\n 'gumming',\r\n 'gummy',\r\n 'gurgle',\r\n 'gurgling',\r\n 'guru',\r\n 'gush',\r\n 'gusto',\r\n 'gusty',\r\n 'gutless',\r\n 'guts',\r\n 'gutter',\r\n 'guy',\r\n 'guzzler',\r\n 'gyration',\r\n 'habitable',\r\n 'habitant',\r\n 'habitat',\r\n 'habitual',\r\n 'hacked',\r\n 'hacker',\r\n 'hacking',\r\n 'hacksaw',\r\n 'had',\r\n 'haggler',\r\n 'haiku',\r\n 'half',\r\n 'halogen',\r\n 'halt',\r\n 'halved',\r\n 'halves',\r\n 'hamburger',\r\n 'hamlet',\r\n 'hammock',\r\n 'hamper',\r\n 'hamster',\r\n 'hamstring',\r\n 'handbag',\r\n 'handball',\r\n 'handbook',\r\n 'handbrake',\r\n 'handcart',\r\n 'handclap',\r\n 'handclasp',\r\n 'handcraft',\r\n 'handcuff',\r\n 'handed',\r\n 'handful',\r\n 'handgrip',\r\n 'handgun',\r\n 'handheld',\r\n 'handiness',\r\n 'handiwork',\r\n 'handlebar',\r\n 'handled',\r\n 'handler',\r\n 'handling',\r\n 'handmade',\r\n 'handoff',\r\n 'handpick',\r\n 'handprint',\r\n 'handrail',\r\n 'handsaw',\r\n 'handset',\r\n 'handsfree',\r\n 'handshake',\r\n 'handstand',\r\n 'handwash',\r\n 'handwork',\r\n 'handwoven',\r\n 'handwrite',\r\n 'handyman',\r\n 'hangnail',\r\n 'hangout',\r\n 'hangover',\r\n 'hangup',\r\n 'hankering',\r\n 'hankie',\r\n 'hanky',\r\n 'haphazard',\r\n 'happening',\r\n 'happier',\r\n 'happiest',\r\n 'happily',\r\n 'happiness',\r\n 'happy',\r\n 'harbor',\r\n 'hardcopy',\r\n 'hardcore',\r\n 'hardcover',\r\n 'harddisk',\r\n 'hardened',\r\n 'hardener',\r\n 'hardening',\r\n 'hardhat',\r\n 'hardhead',\r\n 'hardiness',\r\n 'hardly',\r\n 'hardness',\r\n 'hardship',\r\n 'hardware',\r\n 'hardwired',\r\n 'hardwood',\r\n 'hardy',\r\n 'harmful',\r\n 'harmless',\r\n 'harmonica',\r\n 'harmonics',\r\n 'harmonize',\r\n 'harmony',\r\n 'harness',\r\n 'harpist',\r\n 'harsh',\r\n 'harvest',\r\n 'hash',\r\n 'hassle',\r\n 'haste',\r\n 'hastily',\r\n 'hastiness',\r\n 'hasty',\r\n 'hatbox',\r\n 'hatchback',\r\n 'hatchery',\r\n 'hatchet',\r\n 'hatching',\r\n 'hatchling',\r\n 'hate',\r\n 'hatless',\r\n 'hatred',\r\n 'haunt',\r\n 'haven',\r\n 'hazard',\r\n 'hazelnut',\r\n 'hazily',\r\n 'haziness',\r\n 'hazing',\r\n 'hazy',\r\n 'headache',\r\n 'headband',\r\n 'headboard',\r\n 'headcount',\r\n 'headdress',\r\n 'headed',\r\n 'header',\r\n 'headfirst',\r\n 'headgear',\r\n 'heading',\r\n 'headlamp',\r\n 'headless',\r\n 'headlock',\r\n 'headphone',\r\n 'headpiece',\r\n 'headrest',\r\n 'headroom',\r\n 'headscarf',\r\n 'headset',\r\n 'headsman',\r\n 'headstand',\r\n 'headstone',\r\n 'headway',\r\n 'headwear',\r\n 'heap',\r\n 'heat',\r\n 'heave',\r\n 'heavily',\r\n 'heaviness',\r\n 'heaving',\r\n 'hedge',\r\n 'hedging',\r\n 'heftiness',\r\n 'hefty',\r\n 'helium',\r\n 'helmet',\r\n 'helper',\r\n 'helpful',\r\n 'helping',\r\n 'helpless',\r\n 'helpline',\r\n 'hemlock',\r\n 'hemstitch',\r\n 'hence',\r\n 'henchman',\r\n 'henna',\r\n 'herald',\r\n 'herbal',\r\n 'herbicide',\r\n 'herbs',\r\n 'heritage',\r\n 'hermit',\r\n 'heroics',\r\n 'heroism',\r\n 'herring',\r\n 'herself',\r\n 'hertz',\r\n 'hesitancy',\r\n 'hesitant',\r\n 'hesitate',\r\n 'hexagon',\r\n 'hexagram',\r\n 'hubcap',\r\n 'huddle',\r\n 'huddling',\r\n 'huff',\r\n 'hug',\r\n 'hula',\r\n 'hulk',\r\n 'hull',\r\n 'human',\r\n 'humble',\r\n 'humbling',\r\n 'humbly',\r\n 'humid',\r\n 'humiliate',\r\n 'humility',\r\n 'humming',\r\n 'hummus',\r\n 'humongous',\r\n 'humorist',\r\n 'humorless',\r\n 'humorous',\r\n 'humpback',\r\n 'humped',\r\n 'humvee',\r\n 'hunchback',\r\n 'hundredth',\r\n 'hunger',\r\n 'hungrily',\r\n 'hungry',\r\n 'hunk',\r\n 'hunter',\r\n 'hunting',\r\n 'huntress',\r\n 'huntsman',\r\n 'hurdle',\r\n 'hurled',\r\n 'hurler',\r\n 'hurling',\r\n 'hurray',\r\n 'hurricane',\r\n 'hurried',\r\n 'hurry',\r\n 'hurt',\r\n 'husband',\r\n 'hush',\r\n 'husked',\r\n 'huskiness',\r\n 'hut',\r\n 'hybrid',\r\n 'hydrant',\r\n 'hydrated',\r\n 'hydration',\r\n 'hydrogen',\r\n 'hydroxide',\r\n 'hyperlink',\r\n 'hypertext',\r\n 'hyphen',\r\n 'hypnoses',\r\n 'hypnosis',\r\n 'hypnotic',\r\n 'hypnotism',\r\n 'hypnotist',\r\n 'hypnotize',\r\n 'hypocrisy',\r\n 'hypocrite',\r\n 'ibuprofen',\r\n 'ice',\r\n 'iciness',\r\n 'icing',\r\n 'icky',\r\n 'icon',\r\n 'icy',\r\n 'idealism',\r\n 'idealist',\r\n 'idealize',\r\n 'ideally',\r\n 'idealness',\r\n 'identical',\r\n 'identify',\r\n 'identity',\r\n 'ideology',\r\n 'idiocy',\r\n 'idiom',\r\n 'idly',\r\n 'igloo',\r\n 'ignition',\r\n 'ignore',\r\n 'iguana',\r\n 'illicitly',\r\n 'illusion',\r\n 'illusive',\r\n 'image',\r\n 'imaginary',\r\n 'imagines',\r\n 'imaging',\r\n 'imbecile',\r\n 'imitate',\r\n 'imitation',\r\n 'immature',\r\n 'immerse',\r\n 'immersion',\r\n 'imminent',\r\n 'immobile',\r\n 'immodest',\r\n 'immorally',\r\n 'immortal',\r\n 'immovable',\r\n 'immovably',\r\n 'immunity',\r\n 'immunize',\r\n 'impaired',\r\n 'impale',\r\n 'impart',\r\n 'impatient',\r\n 'impeach',\r\n 'impeding',\r\n 'impending',\r\n 'imperfect',\r\n 'imperial',\r\n 'impish',\r\n 'implant',\r\n 'implement',\r\n 'implicate',\r\n 'implicit',\r\n 'implode',\r\n 'implosion',\r\n 'implosive',\r\n 'imply',\r\n 'impolite',\r\n 'important',\r\n 'importer',\r\n 'impose',\r\n 'imposing',\r\n 'impotence',\r\n 'impotency',\r\n 'impotent',\r\n 'impound',\r\n 'imprecise',\r\n 'imprint',\r\n 'imprison',\r\n 'impromptu',\r\n 'improper',\r\n 'improve',\r\n 'improving',\r\n 'improvise',\r\n 'imprudent',\r\n 'impulse',\r\n 'impulsive',\r\n 'impure',\r\n 'impurity',\r\n 'iodine',\r\n 'iodize',\r\n 'ion',\r\n 'ipad',\r\n 'iphone',\r\n 'ipod',\r\n 'irate',\r\n 'irk',\r\n 'iron',\r\n 'irregular',\r\n 'irrigate',\r\n 'irritable',\r\n 'irritably',\r\n 'irritant',\r\n 'irritate',\r\n 'islamic',\r\n 'islamist',\r\n 'isolated',\r\n 'isolating',\r\n 'isolation',\r\n 'isotope',\r\n 'issue',\r\n 'issuing',\r\n 'italicize',\r\n 'italics',\r\n 'item',\r\n 'itinerary',\r\n 'itunes',\r\n 'ivory',\r\n 'ivy',\r\n 'jab',\r\n 'jackal',\r\n 'jacket',\r\n 'jackknife',\r\n 'jackpot',\r\n 'jailbird',\r\n 'jailbreak',\r\n 'jailer',\r\n 'jailhouse',\r\n 'jalapeno',\r\n 'jam',\r\n 'janitor',\r\n 'january',\r\n 'jargon',\r\n 'jarring',\r\n 'jasmine',\r\n 'jaundice',\r\n 'jaunt',\r\n 'java',\r\n 'jawed',\r\n 'jawless',\r\n 'jawline',\r\n 'jaws',\r\n 'jaybird',\r\n 'jaywalker',\r\n 'jazz',\r\n 'jeep',\r\n 'jeeringly',\r\n 'jellied',\r\n 'jelly',\r\n 'jersey',\r\n 'jester',\r\n 'jet',\r\n 'jiffy',\r\n 'jigsaw',\r\n 'jimmy',\r\n 'jingle',\r\n 'jingling',\r\n 'jinx',\r\n 'jitters',\r\n 'jittery',\r\n 'job',\r\n 'jockey',\r\n 'jockstrap',\r\n 'jogger',\r\n 'jogging',\r\n 'john',\r\n 'joining',\r\n 'jokester',\r\n 'jokingly',\r\n 'jolliness',\r\n 'jolly',\r\n 'jolt',\r\n 'jot',\r\n 'jovial',\r\n 'joyfully',\r\n 'joylessly',\r\n 'joyous',\r\n 'joyride',\r\n 'joystick',\r\n 'jubilance',\r\n 'jubilant',\r\n 'judge',\r\n 'judgingly',\r\n 'judicial',\r\n 'judiciary',\r\n 'judo',\r\n 'juggle',\r\n 'juggling',\r\n 'jugular',\r\n 'juice',\r\n 'juiciness',\r\n 'juicy',\r\n 'jujitsu',\r\n 'jukebox',\r\n 'july',\r\n 'jumble',\r\n 'jumbo',\r\n 'jump',\r\n 'junction',\r\n 'juncture',\r\n 'june',\r\n 'junior',\r\n 'juniper',\r\n 'junkie',\r\n 'junkman',\r\n 'junkyard',\r\n 'jurist',\r\n 'juror',\r\n 'jury',\r\n 'justice',\r\n 'justifier',\r\n 'justify',\r\n 'justly',\r\n 'justness',\r\n 'juvenile',\r\n 'kabob',\r\n 'kangaroo',\r\n 'karaoke',\r\n 'karate',\r\n 'karma',\r\n 'kebab',\r\n 'keenly',\r\n 'keenness',\r\n 'keep',\r\n 'keg',\r\n 'kelp',\r\n 'kennel',\r\n 'kept',\r\n 'kerchief',\r\n 'kerosene',\r\n 'kettle',\r\n 'kick',\r\n 'kiln',\r\n 'kilobyte',\r\n 'kilogram',\r\n 'kilometer',\r\n 'kilowatt',\r\n 'kilt',\r\n 'kimono',\r\n 'kindle',\r\n 'kindling',\r\n 'kindly',\r\n 'kindness',\r\n 'kindred',\r\n 'kinetic',\r\n 'kinfolk',\r\n 'king',\r\n 'kinship',\r\n 'kinsman',\r\n 'kinswoman',\r\n 'kissable',\r\n 'kisser',\r\n 'kissing',\r\n 'kitchen',\r\n 'kite',\r\n 'kitten',\r\n 'kitty',\r\n 'kiwi',\r\n 'kleenex',\r\n 'knapsack',\r\n 'knee',\r\n 'knelt',\r\n 'knickers',\r\n 'knoll',\r\n 'koala',\r\n 'kooky',\r\n 'kosher',\r\n 'krypton',\r\n 'kudos',\r\n 'kung',\r\n 'labored',\r\n 'laborer',\r\n 'laboring',\r\n 'laborious',\r\n 'labrador',\r\n 'ladder',\r\n 'ladies',\r\n 'ladle',\r\n 'ladybug',\r\n 'ladylike',\r\n 'lagged',\r\n 'lagging',\r\n 'lagoon',\r\n 'lair',\r\n 'lake',\r\n 'lance',\r\n 'landed',\r\n 'landfall',\r\n 'landfill',\r\n 'landing',\r\n 'landlady',\r\n 'landless',\r\n 'landline',\r\n 'landlord',\r\n 'landmark',\r\n 'landmass',\r\n 'landmine',\r\n 'landowner',\r\n 'landscape',\r\n 'landside',\r\n 'landslide',\r\n 'language',\r\n 'lankiness',\r\n 'lanky',\r\n 'lantern',\r\n 'lapdog',\r\n 'lapel',\r\n 'lapped',\r\n 'lapping',\r\n 'laptop',\r\n 'lard',\r\n 'large',\r\n 'lark',\r\n 'lash',\r\n 'lasso',\r\n 'last',\r\n 'latch',\r\n 'late',\r\n 'lather',\r\n 'latitude',\r\n 'latrine',\r\n 'latter',\r\n 'latticed',\r\n 'launch',\r\n 'launder',\r\n 'laundry',\r\n 'laurel',\r\n 'lavender',\r\n 'lavish',\r\n 'laxative',\r\n 'lazily',\r\n 'laziness',\r\n 'lazy',\r\n 'lecturer',\r\n 'left',\r\n 'legacy',\r\n 'legal',\r\n 'legend',\r\n 'legged',\r\n 'leggings',\r\n 'legible',\r\n 'legibly',\r\n 'legislate',\r\n 'lego',\r\n 'legroom',\r\n 'legume',\r\n 'legwarmer',\r\n 'legwork',\r\n 'lemon',\r\n 'lend',\r\n 'length',\r\n 'lens',\r\n 'lent',\r\n 'leotard',\r\n 'lesser',\r\n 'letdown',\r\n 'lethargic',\r\n 'lethargy',\r\n 'letter',\r\n 'lettuce',\r\n 'level',\r\n 'leverage',\r\n 'levers',\r\n 'levitate',\r\n 'levitator',\r\n 'liability',\r\n 'liable',\r\n 'liberty',\r\n 'librarian',\r\n 'library',\r\n 'licking',\r\n 'licorice',\r\n 'lid',\r\n 'life',\r\n 'lifter',\r\n 'lifting',\r\n 'liftoff',\r\n 'ligament',\r\n 'likely',\r\n 'likeness',\r\n 'likewise',\r\n 'liking',\r\n 'lilac',\r\n 'lilly',\r\n 'lily',\r\n 'limb',\r\n 'limeade',\r\n 'limelight',\r\n 'limes',\r\n 'limit',\r\n 'limping',\r\n 'limpness',\r\n 'line',\r\n 'lingo',\r\n 'linguini',\r\n 'linguist',\r\n 'lining',\r\n 'linked',\r\n 'linoleum',\r\n 'linseed',\r\n 'lint',\r\n 'lion',\r\n 'lip',\r\n 'liquefy',\r\n 'liqueur',\r\n 'liquid',\r\n 'lisp',\r\n 'list',\r\n 'litigate',\r\n 'litigator',\r\n 'litmus',\r\n 'litter',\r\n 'little',\r\n 'livable',\r\n 'lived',\r\n 'lively',\r\n 'liver',\r\n 'livestock',\r\n 'lividly',\r\n 'living',\r\n 'lizard',\r\n 'lubricant',\r\n 'lubricate',\r\n 'lucid',\r\n 'luckily',\r\n 'luckiness',\r\n 'luckless',\r\n 'lucrative',\r\n 'ludicrous',\r\n 'lugged',\r\n 'lukewarm',\r\n 'lullaby',\r\n 'lumber',\r\n 'luminance',\r\n 'luminous',\r\n 'lumpiness',\r\n 'lumping',\r\n 'lumpish',\r\n 'lunacy',\r\n 'lunar',\r\n 'lunchbox',\r\n 'luncheon',\r\n 'lunchroom',\r\n 'lunchtime',\r\n 'lung',\r\n 'lurch',\r\n 'lure',\r\n 'luridness',\r\n 'lurk',\r\n 'lushly',\r\n 'lushness',\r\n 'luster',\r\n 'lustfully',\r\n 'lustily',\r\n 'lustiness',\r\n 'lustrous',\r\n 'lusty',\r\n 'luxurious',\r\n 'luxury',\r\n 'lying',\r\n 'lyrically',\r\n 'lyricism',\r\n 'lyricist',\r\n 'lyrics',\r\n 'macarena',\r\n 'macaroni',\r\n 'macaw',\r\n 'mace',\r\n 'machine',\r\n 'machinist',\r\n 'magazine',\r\n 'magenta',\r\n 'maggot',\r\n 'magical',\r\n 'magician',\r\n 'magma',\r\n 'magnesium',\r\n 'magnetic',\r\n 'magnetism',\r\n 'magnetize',\r\n 'magnifier',\r\n 'magnify',\r\n 'magnitude',\r\n 'magnolia',\r\n 'mahogany',\r\n 'maimed',\r\n 'majestic',\r\n 'majesty',\r\n 'majorette',\r\n 'majority',\r\n 'makeover',\r\n 'maker',\r\n 'makeshift',\r\n 'making',\r\n 'malformed',\r\n 'malt',\r\n 'mama',\r\n 'mammal',\r\n 'mammary',\r\n 'mammogram',\r\n 'manager',\r\n 'managing',\r\n 'manatee',\r\n 'mandarin',\r\n 'mandate',\r\n 'mandatory',\r\n 'mandolin',\r\n 'manger',\r\n 'mangle',\r\n 'mango',\r\n 'mangy',\r\n 'manhandle',\r\n 'manhole',\r\n 'manhood',\r\n 'manhunt',\r\n 'manicotti',\r\n 'manicure',\r\n 'manifesto',\r\n 'manila',\r\n 'mankind',\r\n 'manlike',\r\n 'manliness',\r\n 'manly',\r\n 'manmade',\r\n 'manned',\r\n 'mannish',\r\n 'manor',\r\n 'manpower',\r\n 'mantis',\r\n 'mantra',\r\n 'manual',\r\n 'many',\r\n 'map',\r\n 'marathon',\r\n 'marauding',\r\n 'marbled',\r\n 'marbles',\r\n 'marbling',\r\n 'march',\r\n 'mardi',\r\n 'margarine',\r\n 'margarita',\r\n 'margin',\r\n 'marigold',\r\n 'marina',\r\n 'marine',\r\n 'marital',\r\n 'maritime',\r\n 'marlin',\r\n 'marmalade',\r\n 'maroon',\r\n 'married',\r\n 'marrow',\r\n 'marry',\r\n 'marshland',\r\n 'marshy',\r\n 'marsupial',\r\n 'marvelous',\r\n 'marxism',\r\n 'mascot',\r\n 'masculine',\r\n 'mashed',\r\n 'mashing',\r\n 'massager',\r\n 'masses',\r\n 'massive',\r\n 'mastiff',\r\n 'matador',\r\n 'matchbook',\r\n 'matchbox',\r\n 'matcher',\r\n 'matching',\r\n 'matchless',\r\n 'material',\r\n 'maternal',\r\n 'maternity',\r\n 'math',\r\n 'mating',\r\n 'matriarch',\r\n 'matrimony',\r\n 'matrix',\r\n 'matron',\r\n 'matted',\r\n 'matter',\r\n 'maturely',\r\n 'maturing',\r\n 'maturity',\r\n 'mauve',\r\n 'maverick',\r\n 'maximize',\r\n 'maximum',\r\n 'maybe',\r\n 'mayday',\r\n 'mayflower',\r\n 'moaner',\r\n 'moaning',\r\n 'mobile',\r\n 'mobility',\r\n 'mobilize',\r\n 'mobster',\r\n 'mocha',\r\n 'mocker',\r\n 'mockup',\r\n 'modified',\r\n 'modify',\r\n 'modular',\r\n 'modulator',\r\n 'module',\r\n 'moisten',\r\n 'moistness',\r\n 'moisture',\r\n 'molar',\r\n 'molasses',\r\n 'mold',\r\n 'molecular',\r\n 'molecule',\r\n 'molehill',\r\n 'mollusk',\r\n 'mom',\r\n 'monastery',\r\n 'monday',\r\n 'monetary',\r\n 'monetize',\r\n 'moneybags',\r\n 'moneyless',\r\n 'moneywise',\r\n 'mongoose',\r\n 'mongrel',\r\n 'monitor',\r\n 'monkhood',\r\n 'monogamy',\r\n 'monogram',\r\n 'monologue',\r\n 'monopoly',\r\n 'monorail',\r\n 'monotone',\r\n 'monotype',\r\n 'monoxide',\r\n 'monsieur',\r\n 'monsoon',\r\n 'monstrous',\r\n 'monthly',\r\n 'monument',\r\n 'moocher',\r\n 'moodiness',\r\n 'moody',\r\n 'mooing',\r\n 'moonbeam',\r\n 'mooned',\r\n 'moonlight',\r\n 'moonlike',\r\n 'moonlit',\r\n 'moonrise',\r\n 'moonscape',\r\n 'moonshine',\r\n 'moonstone',\r\n 'moonwalk',\r\n 'mop',\r\n 'morale',\r\n 'morality',\r\n 'morally',\r\n 'morbidity',\r\n 'morbidly',\r\n 'morphine',\r\n 'morphing',\r\n 'morse',\r\n 'mortality',\r\n 'mortally',\r\n 'mortician',\r\n 'mortified',\r\n 'mortify',\r\n 'mortuary',\r\n 'mosaic',\r\n 'mossy',\r\n 'most',\r\n 'mothball',\r\n 'mothproof',\r\n 'motion',\r\n 'motivate',\r\n 'motivator',\r\n 'motive',\r\n 'motocross',\r\n 'motor',\r\n 'motto',\r\n 'mountable',\r\n 'mountain',\r\n 'mounted',\r\n 'mounting',\r\n 'mourner',\r\n 'mournful',\r\n 'mouse',\r\n 'mousiness',\r\n 'moustache',\r\n 'mousy',\r\n 'mouth',\r\n 'movable',\r\n 'move',\r\n 'movie',\r\n 'moving',\r\n 'mower',\r\n 'mowing',\r\n 'much',\r\n 'muck',\r\n 'mud',\r\n 'mug',\r\n 'mulberry',\r\n 'mulch',\r\n 'mule',\r\n 'mulled',\r\n 'mullets',\r\n 'multiple',\r\n 'multiply',\r\n 'multitask',\r\n 'multitude',\r\n 'mumble',\r\n 'mumbling',\r\n 'mumbo',\r\n 'mummified',\r\n 'mummify',\r\n 'mummy',\r\n 'mumps',\r\n 'munchkin',\r\n 'mundane',\r\n 'municipal',\r\n 'muppet',\r\n 'mural',\r\n 'murkiness',\r\n 'murky',\r\n 'murmuring',\r\n 'muscular',\r\n 'museum',\r\n 'mushily',\r\n 'mushiness',\r\n 'mushroom',\r\n 'mushy',\r\n 'music',\r\n 'musket',\r\n 'muskiness',\r\n 'musky',\r\n 'mustang',\r\n 'mustard',\r\n 'muster',\r\n 'mustiness',\r\n 'musty',\r\n 'mutable',\r\n 'mutate',\r\n 'mutation',\r\n 'mute',\r\n 'mutilated',\r\n 'mutilator',\r\n 'mutiny',\r\n 'mutt',\r\n 'mutual',\r\n 'muzzle',\r\n 'myself',\r\n 'myspace',\r\n 'mystified',\r\n 'mystify',\r\n 'myth',\r\n 'nacho',\r\n 'nag',\r\n 'nail',\r\n 'name',\r\n 'naming',\r\n 'nanny',\r\n 'nanometer',\r\n 'nape',\r\n 'napkin',\r\n 'napped',\r\n 'napping',\r\n 'nappy',\r\n 'narrow',\r\n 'nastily',\r\n 'nastiness',\r\n 'national',\r\n 'native',\r\n 'nativity',\r\n 'natural',\r\n 'nature',\r\n 'naturist',\r\n 'nautical',\r\n 'navigate',\r\n 'navigator',\r\n 'navy',\r\n 'nearby',\r\n 'nearest',\r\n 'nearly',\r\n 'nearness',\r\n 'neatly',\r\n 'neatness',\r\n 'nebula',\r\n 'nebulizer',\r\n 'nectar',\r\n 'negate',\r\n 'negation',\r\n 'negative',\r\n 'neglector',\r\n 'negligee',\r\n 'negligent',\r\n 'negotiate',\r\n 'nemeses',\r\n 'nemesis',\r\n 'neon',\r\n 'nephew',\r\n 'nerd',\r\n 'nervous',\r\n 'nervy',\r\n 'nest',\r\n 'net',\r\n 'neurology',\r\n 'neuron',\r\n 'neurosis',\r\n 'neurotic',\r\n 'neuter',\r\n 'neutron',\r\n 'never',\r\n 'next',\r\n 'nibble',\r\n 'nickname',\r\n 'nicotine',\r\n 'niece',\r\n 'nifty',\r\n 'nimble',\r\n 'nimbly',\r\n 'nineteen',\r\n 'ninetieth',\r\n 'ninja',\r\n 'nintendo',\r\n 'ninth',\r\n 'nuclear',\r\n 'nuclei',\r\n 'nucleus',\r\n 'nugget',\r\n 'nullify',\r\n 'number',\r\n 'numbing',\r\n 'numbly',\r\n 'numbness',\r\n 'numeral',\r\n 'numerate',\r\n 'numerator',\r\n 'numeric',\r\n 'numerous',\r\n 'nuptials',\r\n 'nursery',\r\n 'nursing',\r\n 'nurture',\r\n 'nutcase',\r\n 'nutlike',\r\n 'nutmeg',\r\n 'nutrient',\r\n 'nutshell',\r\n 'nuttiness',\r\n 'nutty',\r\n 'nuzzle',\r\n 'nylon',\r\n 'oaf',\r\n 'oak',\r\n 'oasis',\r\n 'oat',\r\n 'obedience',\r\n 'obedient',\r\n 'obituary',\r\n 'object',\r\n 'obligate',\r\n 'obliged',\r\n 'oblivion',\r\n 'oblivious',\r\n 'oblong',\r\n 'obnoxious',\r\n 'oboe',\r\n 'obscure',\r\n 'obscurity',\r\n 'observant',\r\n 'observer',\r\n 'observing',\r\n 'obsessed',\r\n 'obsession',\r\n 'obsessive',\r\n 'obsolete',\r\n 'obstacle',\r\n 'obstinate',\r\n 'obstruct',\r\n 'obtain',\r\n 'obtrusive',\r\n 'obtuse',\r\n 'obvious',\r\n 'occultist',\r\n 'occupancy',\r\n 'occupant',\r\n 'occupier',\r\n 'occupy',\r\n 'ocean',\r\n 'ocelot',\r\n 'octagon',\r\n 'octane',\r\n 'october',\r\n 'octopus',\r\n 'ogle',\r\n 'oil',\r\n 'oink',\r\n 'ointment',\r\n 'okay',\r\n 'old',\r\n 'olive',\r\n 'olympics',\r\n 'omega',\r\n 'omen',\r\n 'ominous',\r\n 'omission',\r\n 'omit',\r\n 'omnivore',\r\n 'onboard',\r\n 'oncoming',\r\n 'ongoing',\r\n 'onion',\r\n 'online',\r\n 'onlooker',\r\n 'only',\r\n 'onscreen',\r\n 'onset',\r\n 'onshore',\r\n 'onslaught',\r\n 'onstage',\r\n 'onto',\r\n 'onward',\r\n 'onyx',\r\n 'oops',\r\n 'ooze',\r\n 'oozy',\r\n 'opacity',\r\n 'opal',\r\n 'open',\r\n 'operable',\r\n 'operate',\r\n 'operating',\r\n 'operation',\r\n 'operative',\r\n 'operator',\r\n 'opium',\r\n 'opossum',\r\n 'opponent',\r\n 'oppose',\r\n 'opposing',\r\n 'opposite',\r\n 'oppressed',\r\n 'oppressor',\r\n 'opt',\r\n 'opulently',\r\n 'osmosis',\r\n 'other',\r\n 'otter',\r\n 'ouch',\r\n 'ought',\r\n 'ounce',\r\n 'outage',\r\n 'outback',\r\n 'outbid',\r\n 'outboard',\r\n 'outbound',\r\n 'outbreak',\r\n 'outburst',\r\n 'outcast',\r\n 'outclass',\r\n 'outcome',\r\n 'outdated',\r\n 'outdoors',\r\n 'outer',\r\n 'outfield',\r\n 'outfit',\r\n 'outflank',\r\n 'outgoing',\r\n 'outgrow',\r\n 'outhouse',\r\n 'outing',\r\n 'outlast',\r\n 'outlet',\r\n 'outline',\r\n 'outlook',\r\n 'outlying',\r\n 'outmatch',\r\n 'outmost',\r\n 'outnumber',\r\n 'outplayed',\r\n 'outpost',\r\n 'outpour',\r\n 'output',\r\n 'outrage',\r\n 'outrank',\r\n 'outreach',\r\n 'outright',\r\n 'outscore',\r\n 'outsell',\r\n 'outshine',\r\n 'outshoot',\r\n 'outsider',\r\n 'outskirts',\r\n 'outsmart',\r\n 'outsource',\r\n 'outspoken',\r\n 'outtakes',\r\n 'outthink',\r\n 'outward',\r\n 'outweigh',\r\n 'outwit',\r\n 'oval',\r\n 'ovary',\r\n 'oven',\r\n 'overact',\r\n 'overall',\r\n 'overarch',\r\n 'overbid',\r\n 'overbill',\r\n 'overbite',\r\n 'overblown',\r\n 'overboard',\r\n 'overbook',\r\n 'overbuilt',\r\n 'overcast',\r\n 'overcoat',\r\n 'overcome',\r\n 'overcook',\r\n 'overcrowd',\r\n 'overdraft',\r\n 'overdrawn',\r\n 'overdress',\r\n 'overdrive',\r\n 'overdue',\r\n 'overeager',\r\n 'overeater',\r\n 'overexert',\r\n 'overfed',\r\n 'overfeed',\r\n 'overfill',\r\n 'overflow',\r\n 'overfull',\r\n 'overgrown',\r\n 'overhand',\r\n 'overhang',\r\n 'overhaul',\r\n 'overhead',\r\n 'overhear',\r\n 'overheat',\r\n 'overhung',\r\n 'overjoyed',\r\n 'overkill',\r\n 'overlabor',\r\n 'overlaid',\r\n 'overlap',\r\n 'overlay',\r\n 'overload',\r\n 'overlook',\r\n 'overlord',\r\n 'overlying',\r\n 'overnight',\r\n 'overpass',\r\n 'overpay',\r\n 'overplant',\r\n 'overplay',\r\n 'overpower',\r\n 'overprice',\r\n 'overrate',\r\n 'overreach',\r\n 'overreact',\r\n 'override',\r\n 'overripe',\r\n 'overrule',\r\n 'overrun',\r\n 'overshoot',\r\n 'overshot',\r\n 'oversight',\r\n 'oversized',\r\n 'oversleep',\r\n 'oversold',\r\n 'overspend',\r\n 'overstate',\r\n 'overstay',\r\n 'overstep',\r\n 'overstock',\r\n 'overstuff',\r\n 'oversweet',\r\n 'overtake',\r\n 'overthrow',\r\n 'overtime',\r\n 'overtly',\r\n 'overtone',\r\n 'overture',\r\n 'overturn',\r\n 'overuse',\r\n 'overvalue',\r\n 'overview',\r\n 'overwrite',\r\n 'owl',\r\n 'oxford',\r\n 'oxidant',\r\n 'oxidation',\r\n 'oxidize',\r\n 'oxidizing',\r\n 'oxygen',\r\n 'oxymoron',\r\n 'oyster',\r\n 'ozone',\r\n 'paced',\r\n 'pacemaker',\r\n 'pacific',\r\n 'pacifier',\r\n 'pacifism',\r\n 'pacifist',\r\n 'pacify',\r\n 'padded',\r\n 'padding',\r\n 'paddle',\r\n 'paddling',\r\n 'padlock',\r\n 'pagan',\r\n 'pager',\r\n 'paging',\r\n 'pajamas',\r\n 'palace',\r\n 'palatable',\r\n 'palm',\r\n 'palpable',\r\n 'palpitate',\r\n 'paltry',\r\n 'pampered',\r\n 'pamperer',\r\n 'pampers',\r\n 'pamphlet',\r\n 'panama',\r\n 'pancake',\r\n 'pancreas',\r\n 'panda',\r\n 'pandemic',\r\n 'pang',\r\n 'panhandle',\r\n 'panic',\r\n 'panning',\r\n 'panorama',\r\n 'panoramic',\r\n 'panther',\r\n 'pantomime',\r\n 'pantry',\r\n 'pants',\r\n 'pantyhose',\r\n 'paparazzi',\r\n 'papaya',\r\n 'paper',\r\n 'paprika',\r\n 'papyrus',\r\n 'parabola',\r\n 'parachute',\r\n 'parade',\r\n 'paradox',\r\n 'paragraph',\r\n 'parakeet',\r\n 'paralegal',\r\n 'paralyses',\r\n 'paralysis',\r\n 'paralyze',\r\n 'paramedic',\r\n 'parameter',\r\n 'paramount',\r\n 'parasail',\r\n 'parasite',\r\n 'parasitic',\r\n 'parcel',\r\n 'parched',\r\n 'parchment',\r\n 'pardon',\r\n 'parish',\r\n 'parka',\r\n 'parking',\r\n 'parkway',\r\n 'parlor',\r\n 'parmesan',\r\n 'parole',\r\n 'parrot',\r\n 'parsley',\r\n 'parsnip',\r\n 'partake',\r\n 'parted',\r\n 'parting',\r\n 'partition',\r\n 'partly',\r\n 'partner',\r\n 'partridge',\r\n 'party',\r\n 'passable',\r\n 'passably',\r\n 'passage',\r\n 'passcode',\r\n 'passenger',\r\n 'passerby',\r\n 'passing',\r\n 'passion',\r\n 'passive',\r\n 'passivism',\r\n 'passover',\r\n 'passport',\r\n 'password',\r\n 'pasta',\r\n 'pasted',\r\n 'pastel',\r\n 'pastime',\r\n 'pastor',\r\n 'pastrami',\r\n 'pasture',\r\n 'pasty',\r\n 'patchwork',\r\n 'patchy',\r\n 'paternal',\r\n 'paternity',\r\n 'path',\r\n 'patience',\r\n 'patient',\r\n 'patio',\r\n 'patriarch',\r\n 'patriot',\r\n 'patrol',\r\n 'patronage',\r\n 'patronize',\r\n 'pauper',\r\n 'pavement',\r\n 'paver',\r\n 'pavestone',\r\n 'pavilion',\r\n 'paving',\r\n 'pawing',\r\n 'payable',\r\n 'payback',\r\n 'paycheck',\r\n 'payday',\r\n 'payee',\r\n 'payer',\r\n 'paying',\r\n 'payment',\r\n 'payphone',\r\n 'payroll',\r\n 'pebble',\r\n 'pebbly',\r\n 'pecan',\r\n 'pectin',\r\n 'peculiar',\r\n 'peddling',\r\n 'pediatric',\r\n 'pedicure',\r\n 'pedigree',\r\n 'pedometer',\r\n 'pegboard',\r\n 'pelican',\r\n 'pellet',\r\n 'pelt',\r\n 'pelvis',\r\n 'penalize',\r\n 'penalty',\r\n 'pencil',\r\n 'pendant',\r\n 'pending',\r\n 'penholder',\r\n 'penknife',\r\n 'pennant',\r\n 'penniless',\r\n 'penny',\r\n 'penpal',\r\n 'pension',\r\n 'pentagon',\r\n 'pentagram',\r\n 'pep',\r\n 'perceive',\r\n 'percent',\r\n 'perch',\r\n 'percolate',\r\n 'perennial',\r\n 'perfected',\r\n 'perfectly',\r\n 'perfume',\r\n 'periscope',\r\n 'perish',\r\n 'perjurer',\r\n 'perjury',\r\n 'perkiness',\r\n 'perky',\r\n 'perm',\r\n 'peroxide',\r\n 'perpetual',\r\n 'perplexed',\r\n 'persecute',\r\n 'persevere',\r\n 'persuaded',\r\n 'persuader',\r\n 'pesky',\r\n 'peso',\r\n 'pessimism',\r\n 'pessimist',\r\n 'pester',\r\n 'pesticide',\r\n 'petal',\r\n 'petite',\r\n 'petition',\r\n 'petri',\r\n 'petroleum',\r\n 'petted',\r\n 'petticoat',\r\n 'pettiness',\r\n 'petty',\r\n 'petunia',\r\n 'phantom',\r\n 'phobia',\r\n 'phoenix',\r\n 'phonebook',\r\n 'phoney',\r\n 'phonics',\r\n 'phoniness',\r\n 'phony',\r\n 'phosphate',\r\n 'photo',\r\n 'phrase',\r\n 'phrasing',\r\n 'placard',\r\n 'placate',\r\n 'placidly',\r\n 'plank',\r\n 'planner',\r\n 'plant',\r\n 'plasma',\r\n 'plaster',\r\n 'plastic',\r\n 'plated',\r\n 'platform',\r\n 'plating',\r\n 'platinum',\r\n 'platonic',\r\n 'platter',\r\n 'platypus',\r\n 'plausible',\r\n 'plausibly',\r\n 'playable',\r\n 'playback',\r\n 'player',\r\n 'playful',\r\n 'playgroup',\r\n 'playhouse',\r\n 'playing',\r\n 'playlist',\r\n 'playmaker',\r\n 'playmate',\r\n 'playoff',\r\n 'playpen',\r\n 'playroom',\r\n 'playset',\r\n 'plaything',\r\n 'playtime',\r\n 'plaza',\r\n 'pleading',\r\n 'pleat',\r\n 'pledge',\r\n 'plentiful',\r\n 'plenty',\r\n 'plethora',\r\n 'plexiglas',\r\n 'pliable',\r\n 'plod',\r\n 'plop',\r\n 'plot',\r\n 'plow',\r\n 'ploy',\r\n 'pluck',\r\n 'plug',\r\n 'plunder',\r\n 'plunging',\r\n 'plural',\r\n 'plus',\r\n 'plutonium',\r\n 'plywood',\r\n 'poach',\r\n 'pod',\r\n 'poem',\r\n 'poet',\r\n 'pogo',\r\n 'pointed',\r\n 'pointer',\r\n 'pointing',\r\n 'pointless',\r\n 'pointy',\r\n 'poise',\r\n 'poison',\r\n 'poker',\r\n 'poking',\r\n 'polar',\r\n 'police',\r\n 'policy',\r\n 'polio',\r\n 'polish',\r\n 'politely',\r\n 'polka',\r\n 'polo',\r\n 'polyester',\r\n 'polygon',\r\n 'polygraph',\r\n 'polymer',\r\n 'poncho',\r\n 'pond',\r\n 'pony',\r\n 'popcorn',\r\n 'pope',\r\n 'poplar',\r\n 'popper',\r\n 'poppy',\r\n 'popsicle',\r\n 'populace',\r\n 'popular',\r\n 'populate',\r\n 'porcupine',\r\n 'pork',\r\n 'porous',\r\n 'porridge',\r\n 'portable',\r\n 'portal',\r\n 'portfolio',\r\n 'porthole',\r\n 'portion',\r\n 'portly',\r\n 'portside',\r\n 'poser',\r\n 'posh',\r\n 'posing',\r\n 'possible',\r\n 'possibly',\r\n 'possum',\r\n 'postage',\r\n 'postal',\r\n 'postbox',\r\n 'postcard',\r\n 'posted',\r\n 'poster',\r\n 'posting',\r\n 'postnasal',\r\n 'posture',\r\n 'postwar',\r\n 'pouch',\r\n 'pounce',\r\n 'pouncing',\r\n 'pound',\r\n 'pouring',\r\n 'pout',\r\n 'powdered',\r\n 'powdering',\r\n 'powdery',\r\n 'power',\r\n 'powwow',\r\n 'pox',\r\n 'praising',\r\n 'prance',\r\n 'prancing',\r\n 'pranker',\r\n 'prankish',\r\n 'prankster',\r\n 'prayer',\r\n 'praying',\r\n 'preacher',\r\n 'preaching',\r\n 'preachy',\r\n 'preamble',\r\n 'precinct',\r\n 'precise',\r\n 'precision',\r\n 'precook',\r\n 'precut',\r\n 'predator',\r\n 'predefine',\r\n 'predict',\r\n 'preface',\r\n 'prefix',\r\n 'preflight',\r\n 'preformed',\r\n 'pregame',\r\n 'pregnancy',\r\n 'pregnant',\r\n 'preheated',\r\n 'prelaunch',\r\n 'prelaw',\r\n 'prelude',\r\n 'premiere',\r\n 'premises',\r\n 'premium',\r\n 'prenatal',\r\n 'preoccupy',\r\n 'preorder',\r\n 'prepaid',\r\n 'prepay',\r\n 'preplan',\r\n 'preppy',\r\n 'preschool',\r\n 'prescribe',\r\n 'preseason',\r\n 'preset',\r\n 'preshow',\r\n 'president',\r\n 'presoak',\r\n 'press',\r\n 'presume',\r\n 'presuming',\r\n 'preteen',\r\n 'pretended',\r\n 'pretender',\r\n 'pretense',\r\n 'pretext',\r\n 'pretty',\r\n 'pretzel',\r\n 'prevail',\r\n 'prevalent',\r\n 'prevent',\r\n 'preview',\r\n 'previous',\r\n 'prewar',\r\n 'prewashed',\r\n 'prideful',\r\n 'pried',\r\n 'primal',\r\n 'primarily',\r\n 'primary',\r\n 'primate',\r\n 'primer',\r\n 'primp',\r\n 'princess',\r\n 'print',\r\n 'prior',\r\n 'prism',\r\n 'prison',\r\n 'prissy',\r\n 'pristine',\r\n 'privacy',\r\n 'private',\r\n 'privatize',\r\n 'prize',\r\n 'proactive',\r\n 'probable',\r\n 'probably',\r\n 'probation',\r\n 'probe',\r\n 'probing',\r\n 'probiotic',\r\n 'problem',\r\n 'procedure',\r\n 'process',\r\n 'proclaim',\r\n 'procreate',\r\n 'procurer',\r\n 'prodigal',\r\n 'prodigy',\r\n 'produce',\r\n 'product',\r\n 'profane',\r\n 'profanity',\r\n 'professed',\r\n 'professor',\r\n 'profile',\r\n 'profound',\r\n 'profusely',\r\n 'progeny',\r\n 'prognosis',\r\n 'program',\r\n 'progress',\r\n 'projector',\r\n 'prologue',\r\n 'prolonged',\r\n 'promenade',\r\n 'prominent',\r\n 'promoter',\r\n 'promotion',\r\n 'prompter',\r\n 'promptly',\r\n 'prone',\r\n 'prong',\r\n 'pronounce',\r\n 'pronto',\r\n 'proofing',\r\n 'proofread',\r\n 'proofs',\r\n 'propeller',\r\n 'properly',\r\n 'property',\r\n 'proponent',\r\n 'proposal',\r\n 'propose',\r\n 'props',\r\n 'prorate',\r\n 'protector',\r\n 'protegee',\r\n 'proton',\r\n 'prototype',\r\n 'protozoan',\r\n 'protract',\r\n 'protrude',\r\n 'proud',\r\n 'provable',\r\n 'proved',\r\n 'proven',\r\n 'provided',\r\n 'provider',\r\n 'providing',\r\n 'province',\r\n 'proving',\r\n 'provoke',\r\n 'provoking',\r\n 'provolone',\r\n 'prowess',\r\n 'prowler',\r\n 'prowling',\r\n 'proximity',\r\n 'proxy',\r\n 'prozac',\r\n 'prude',\r\n 'prudishly',\r\n 'prune',\r\n 'pruning',\r\n 'pry',\r\n 'psychic',\r\n 'public',\r\n 'publisher',\r\n 'pucker',\r\n 'pueblo',\r\n 'pug',\r\n 'pull',\r\n 'pulmonary',\r\n 'pulp',\r\n 'pulsate',\r\n 'pulse',\r\n 'pulverize',\r\n 'puma',\r\n 'pumice',\r\n 'pummel',\r\n 'punch',\r\n 'punctual',\r\n 'punctuate',\r\n 'punctured',\r\n 'pungent',\r\n 'punisher',\r\n 'punk',\r\n 'pupil',\r\n 'puppet',\r\n 'puppy',\r\n 'purchase',\r\n 'pureblood',\r\n 'purebred',\r\n 'purely',\r\n 'pureness',\r\n 'purgatory',\r\n 'purge',\r\n 'purging',\r\n 'purifier',\r\n 'purify',\r\n 'purist',\r\n 'puritan',\r\n 'purity',\r\n 'purple',\r\n 'purplish',\r\n 'purposely',\r\n 'purr',\r\n 'purse',\r\n 'pursuable',\r\n 'pursuant',\r\n 'pursuit',\r\n 'purveyor',\r\n 'pushcart',\r\n 'pushchair',\r\n 'pusher',\r\n 'pushiness',\r\n 'pushing',\r\n 'pushover',\r\n 'pushpin',\r\n 'pushup',\r\n 'pushy',\r\n 'putdown',\r\n 'putt',\r\n 'puzzle',\r\n 'puzzling',\r\n 'pyramid',\r\n 'pyromania',\r\n 'python',\r\n 'quack',\r\n 'quadrant',\r\n 'quail',\r\n 'quaintly',\r\n 'quake',\r\n 'quaking',\r\n 'qualified',\r\n 'qualifier',\r\n 'qualify',\r\n 'quality',\r\n 'qualm',\r\n 'quantum',\r\n 'quarrel',\r\n 'quarry',\r\n 'quartered',\r\n 'quarterly',\r\n 'quarters',\r\n 'quartet',\r\n 'quench',\r\n 'query',\r\n 'quicken',\r\n 'quickly',\r\n 'quickness',\r\n 'quicksand',\r\n 'quickstep',\r\n 'quiet',\r\n 'quill',\r\n 'quilt',\r\n 'quintet',\r\n 'quintuple',\r\n 'quirk',\r\n 'quit',\r\n 'quiver',\r\n 'quizzical',\r\n 'quotable',\r\n 'quotation',\r\n 'quote',\r\n 'rabid',\r\n 'race',\r\n 'racing',\r\n 'racism',\r\n 'rack',\r\n 'racoon',\r\n 'radar',\r\n 'radial',\r\n 'radiance',\r\n 'radiantly',\r\n 'radiated',\r\n 'radiation',\r\n 'radiator',\r\n 'radio',\r\n 'radish',\r\n 'raffle',\r\n 'raft',\r\n 'rage',\r\n 'ragged',\r\n 'raging',\r\n 'ragweed',\r\n 'raider',\r\n 'railcar',\r\n 'railing',\r\n 'railroad',\r\n 'railway',\r\n 'raisin',\r\n 'rake',\r\n 'raking',\r\n 'rally',\r\n 'ramble',\r\n 'rambling',\r\n 'ramp',\r\n 'ramrod',\r\n 'ranch',\r\n 'rancidity',\r\n 'random',\r\n 'ranged',\r\n 'ranger',\r\n 'ranging',\r\n 'ranked',\r\n 'ranking',\r\n 'ransack',\r\n 'ranting',\r\n 'rants',\r\n 'rare',\r\n 'rarity',\r\n 'rascal',\r\n 'rash',\r\n 'rasping',\r\n 'ravage',\r\n 'raven',\r\n 'ravine',\r\n 'raving',\r\n 'ravioli',\r\n 'ravishing',\r\n 'reabsorb',\r\n 'reach',\r\n 'reacquire',\r\n 'reaction',\r\n 'reactive',\r\n 'reactor',\r\n 'reaffirm',\r\n 'ream',\r\n 'reanalyze',\r\n 'reappear',\r\n 'reapply',\r\n 'reappoint',\r\n 'reapprove',\r\n 'rearrange',\r\n 'rearview',\r\n 'reason',\r\n 'reassign',\r\n 'reassure',\r\n 'reattach',\r\n 'reawake',\r\n 'rebalance',\r\n 'rebate',\r\n 'rebel',\r\n 'rebirth',\r\n 'reboot',\r\n 'reborn',\r\n 'rebound',\r\n 'rebuff',\r\n 'rebuild',\r\n 'rebuilt',\r\n 'reburial',\r\n 'rebuttal',\r\n 'recall',\r\n 'recant',\r\n 'recapture',\r\n 'recast',\r\n 'recede',\r\n 'recent',\r\n 'recess',\r\n 'recharger',\r\n 'recipient',\r\n 'recital',\r\n 'recite',\r\n 'reckless',\r\n 'reclaim',\r\n 'recliner',\r\n 'reclining',\r\n 'recluse',\r\n 'reclusive',\r\n 'recognize',\r\n 'recoil',\r\n 'recollect',\r\n 'recolor',\r\n 'reconcile',\r\n 'reconfirm',\r\n 'reconvene',\r\n 'recopy',\r\n 'record',\r\n 'recount',\r\n 'recoup',\r\n 'recovery',\r\n 'recreate',\r\n 'rectal',\r\n 'rectangle',\r\n 'rectified',\r\n 'rectify',\r\n 'recycled',\r\n 'recycler',\r\n 'recycling',\r\n 'reemerge',\r\n 'reenact',\r\n 'reenter',\r\n 'reentry',\r\n 'reexamine',\r\n 'referable',\r\n 'referee',\r\n 'reference',\r\n 'refill',\r\n 'refinance',\r\n 'refined',\r\n 'refinery',\r\n 'refining',\r\n 'refinish',\r\n 'reflected',\r\n 'reflector',\r\n 'reflex',\r\n 'reflux',\r\n 'refocus',\r\n 'refold',\r\n 'reforest',\r\n 'reformat',\r\n 'reformed',\r\n 'reformer',\r\n 'reformist',\r\n 'refract',\r\n 'refrain',\r\n 'refreeze',\r\n 'refresh',\r\n 'refried',\r\n 'refueling',\r\n 'refund',\r\n 'refurbish',\r\n 'refurnish',\r\n 'refusal',\r\n 'refuse',\r\n 'refusing',\r\n 'refutable',\r\n 'refute',\r\n 'regain',\r\n 'regalia',\r\n 'regally',\r\n 'reggae',\r\n 'regime',\r\n 'region',\r\n 'register',\r\n 'registrar',\r\n 'registry',\r\n 'regress',\r\n 'regretful',\r\n 'regroup',\r\n 'regular',\r\n 'regulate',\r\n 'regulator',\r\n 'rehab',\r\n 'reheat',\r\n 'rehire',\r\n 'rehydrate',\r\n 'reimburse',\r\n 'reissue',\r\n 'reiterate',\r\n 'rejoice',\r\n 'rejoicing',\r\n 'rejoin',\r\n 'rekindle',\r\n 'relapse',\r\n 'relapsing',\r\n 'relatable',\r\n 'related',\r\n 'relation',\r\n 'relative',\r\n 'relax',\r\n 'relay',\r\n 'relearn',\r\n 'release',\r\n 'relenting',\r\n 'reliable',\r\n 'reliably',\r\n 'reliance',\r\n 'reliant',\r\n 'relic',\r\n 'relieve',\r\n 'relieving',\r\n 'relight',\r\n 'relish',\r\n 'relive',\r\n 'reload',\r\n 'relocate',\r\n 'relock',\r\n 'reluctant',\r\n 'rely',\r\n 'remake',\r\n 'remark',\r\n 'remarry',\r\n 'rematch',\r\n 'remedial',\r\n 'remedy',\r\n 'remember',\r\n 'reminder',\r\n 'remindful',\r\n 'remission',\r\n 'remix',\r\n 'remnant',\r\n 'remodeler',\r\n 'remold',\r\n 'remorse',\r\n 'remote',\r\n 'removable',\r\n 'removal',\r\n 'removed',\r\n 'remover',\r\n 'removing',\r\n 'rename',\r\n 'renderer',\r\n 'rendering',\r\n 'rendition',\r\n 'renegade',\r\n 'renewable',\r\n 'renewably',\r\n 'renewal',\r\n 'renewed',\r\n 'renounce',\r\n 'renovate',\r\n 'renovator',\r\n 'rentable',\r\n 'rental',\r\n 'rented',\r\n 'renter',\r\n 'reoccupy',\r\n 'reoccur',\r\n 'reopen',\r\n 'reorder',\r\n 'repackage',\r\n 'repacking',\r\n 'repaint',\r\n 'repair',\r\n 'repave',\r\n 'repaying',\r\n 'repayment',\r\n 'repeal',\r\n 'repeated',\r\n 'repeater',\r\n 'repent',\r\n 'rephrase',\r\n 'replace',\r\n 'replay',\r\n 'replica',\r\n 'reply',\r\n 'reporter',\r\n 'repose',\r\n 'repossess',\r\n 'repost',\r\n 'repressed',\r\n 'reprimand',\r\n 'reprint',\r\n 'reprise',\r\n 'reproach',\r\n 'reprocess',\r\n 'reproduce',\r\n 'reprogram',\r\n 'reps',\r\n 'reptile',\r\n 'reptilian',\r\n 'repugnant',\r\n 'repulsion',\r\n 'repulsive',\r\n 'repurpose',\r\n 'reputable',\r\n 'reputably',\r\n 'request',\r\n 'require',\r\n 'requisite',\r\n 'reroute',\r\n 'rerun',\r\n 'resale',\r\n 'resample',\r\n 'rescuer',\r\n 'reseal',\r\n 'research',\r\n 'reselect',\r\n 'reseller',\r\n 'resemble',\r\n 'resend',\r\n 'resent',\r\n 'reset',\r\n 'reshape',\r\n 'reshoot',\r\n 'reshuffle',\r\n 'residence',\r\n 'residency',\r\n 'resident',\r\n 'residual',\r\n 'residue',\r\n 'resigned',\r\n 'resilient',\r\n 'resistant',\r\n 'resisting',\r\n 'resize',\r\n 'resolute',\r\n 'resolved',\r\n 'resonant',\r\n 'resonate',\r\n 'resort',\r\n 'resource',\r\n 'respect',\r\n 'resubmit',\r\n 'result',\r\n 'resume',\r\n 'resupply',\r\n 'resurface',\r\n 'resurrect',\r\n 'retail',\r\n 'retainer',\r\n 'retaining',\r\n 'retake',\r\n 'retaliate',\r\n 'retention',\r\n 'rethink',\r\n 'retinal',\r\n 'retired',\r\n 'retiree',\r\n 'retiring',\r\n 'retold',\r\n 'retool',\r\n 'retorted',\r\n 'retouch',\r\n 'retrace',\r\n 'retract',\r\n 'retrain',\r\n 'retread',\r\n 'retreat',\r\n 'retrial',\r\n 'retrieval',\r\n 'retriever',\r\n 'retry',\r\n 'return',\r\n 'retying',\r\n 'retype',\r\n 'reunion',\r\n 'reunite',\r\n 'reusable',\r\n 'reuse',\r\n 'reveal',\r\n 'reveler',\r\n 'revenge',\r\n 'revenue',\r\n 'reverb',\r\n 'revered',\r\n 'reverence',\r\n 'reverend',\r\n 'reversal',\r\n 'reverse',\r\n 'reversing',\r\n 'reversion',\r\n 'revert',\r\n 'revisable',\r\n 'revise',\r\n 'revision',\r\n 'revisit',\r\n 'revivable',\r\n 'revival',\r\n 'reviver',\r\n 'reviving',\r\n 'revocable',\r\n 'revoke',\r\n 'revolt',\r\n 'revolver',\r\n 'revolving',\r\n 'reward',\r\n 'rewash',\r\n 'rewind',\r\n 'rewire',\r\n 'reword',\r\n 'rework',\r\n 'rewrap',\r\n 'rewrite',\r\n 'rhyme',\r\n 'ribbon',\r\n 'ribcage',\r\n 'rice',\r\n 'riches',\r\n 'richly',\r\n 'richness',\r\n 'rickety',\r\n 'ricotta',\r\n 'riddance',\r\n 'ridden',\r\n 'ride',\r\n 'riding',\r\n 'rifling',\r\n 'rift',\r\n 'rigging',\r\n 'rigid',\r\n 'rigor',\r\n 'rimless',\r\n 'rimmed',\r\n 'rind',\r\n 'rink',\r\n 'rinse',\r\n 'rinsing',\r\n 'riot',\r\n 'ripcord',\r\n 'ripeness',\r\n 'ripening',\r\n 'ripping',\r\n 'ripple',\r\n 'rippling',\r\n 'riptide',\r\n 'rise',\r\n 'rising',\r\n 'risk',\r\n 'risotto',\r\n 'ritalin',\r\n 'ritzy',\r\n 'rival',\r\n 'riverbank',\r\n 'riverbed',\r\n 'riverboat',\r\n 'riverside',\r\n 'riveter',\r\n 'riveting',\r\n 'roamer',\r\n 'roaming',\r\n 'roast',\r\n 'robbing',\r\n 'robe',\r\n 'robin',\r\n 'robotics',\r\n 'robust',\r\n 'rockband',\r\n 'rocker',\r\n 'rocket',\r\n 'rockfish',\r\n 'rockiness',\r\n 'rocking',\r\n 'rocklike',\r\n 'rockslide',\r\n 'rockstar',\r\n 'rocky',\r\n 'rogue',\r\n 'roman',\r\n 'romp',\r\n 'rope',\r\n 'roping',\r\n 'roster',\r\n 'rosy',\r\n 'rotten',\r\n 'rotting',\r\n 'rotunda',\r\n 'roulette',\r\n 'rounding',\r\n 'roundish',\r\n 'roundness',\r\n 'roundup',\r\n 'roundworm',\r\n 'routine',\r\n 'routing',\r\n 'rover',\r\n 'roving',\r\n 'royal',\r\n 'rubbed',\r\n 'rubber',\r\n 'rubbing',\r\n 'rubble',\r\n 'rubdown',\r\n 'ruby',\r\n 'ruckus',\r\n 'rudder',\r\n 'rug',\r\n 'ruined',\r\n 'rule',\r\n 'rumble',\r\n 'rumbling',\r\n 'rummage',\r\n 'rumor',\r\n 'runaround',\r\n 'rundown',\r\n 'runner',\r\n 'running',\r\n 'runny',\r\n 'runt',\r\n 'runway',\r\n 'rupture',\r\n 'rural',\r\n 'ruse',\r\n 'rush',\r\n 'rust',\r\n 'rut',\r\n 'sabbath',\r\n 'sabotage',\r\n 'sacrament',\r\n 'sacred',\r\n 'sacrifice',\r\n 'sadden',\r\n 'saddlebag',\r\n 'saddled',\r\n 'saddling',\r\n 'sadly',\r\n 'sadness',\r\n 'safari',\r\n 'safeguard',\r\n 'safehouse',\r\n 'safely',\r\n 'safeness',\r\n 'saffron',\r\n 'saga',\r\n 'sage',\r\n 'sagging',\r\n 'saggy',\r\n 'said',\r\n 'saint',\r\n 'sake',\r\n 'salad',\r\n 'salami',\r\n 'salaried',\r\n 'salary',\r\n 'saline',\r\n 'salon',\r\n 'saloon',\r\n 'salsa',\r\n 'salt',\r\n 'salutary',\r\n 'salute',\r\n 'salvage',\r\n 'salvaging',\r\n 'salvation',\r\n 'same',\r\n 'sample',\r\n 'sampling',\r\n 'sanction',\r\n 'sanctity',\r\n 'sanctuary',\r\n 'sandal',\r\n 'sandbag',\r\n 'sandbank',\r\n 'sandbar',\r\n 'sandblast',\r\n 'sandbox',\r\n 'sanded',\r\n 'sandfish',\r\n 'sanding',\r\n 'sandlot',\r\n 'sandpaper',\r\n 'sandpit',\r\n 'sandstone',\r\n 'sandstorm',\r\n 'sandworm',\r\n 'sandy',\r\n 'sanitary',\r\n 'sanitizer',\r\n 'sank',\r\n 'santa',\r\n 'sapling',\r\n 'sappiness',\r\n 'sappy',\r\n 'sarcasm',\r\n 'sarcastic',\r\n 'sardine',\r\n 'sash',\r\n 'sasquatch',\r\n 'sassy',\r\n 'satchel',\r\n 'satiable',\r\n 'satin',\r\n 'satirical',\r\n 'satisfied',\r\n 'satisfy',\r\n 'saturate',\r\n 'saturday',\r\n 'sauciness',\r\n 'saucy',\r\n 'sauna',\r\n 'savage',\r\n 'savanna',\r\n 'saved',\r\n 'savings',\r\n 'savior',\r\n 'savor',\r\n 'saxophone',\r\n 'say',\r\n 'scabbed',\r\n 'scabby',\r\n 'scalded',\r\n 'scalding',\r\n 'scale',\r\n 'scaling',\r\n 'scallion',\r\n 'scallop',\r\n 'scalping',\r\n 'scam',\r\n 'scandal',\r\n 'scanner',\r\n 'scanning',\r\n 'scant',\r\n 'scapegoat',\r\n 'scarce',\r\n 'scarcity',\r\n 'scarecrow',\r\n 'scared',\r\n 'scarf',\r\n 'scarily',\r\n 'scariness',\r\n 'scarring',\r\n 'scary',\r\n 'scavenger',\r\n 'scenic',\r\n 'schedule',\r\n 'schematic',\r\n 'scheme',\r\n 'scheming',\r\n 'schilling',\r\n 'schnapps',\r\n 'scholar',\r\n 'science',\r\n 'scientist',\r\n 'scion',\r\n 'scoff',\r\n 'scolding',\r\n 'scone',\r\n 'scoop',\r\n 'scooter',\r\n 'scope',\r\n 'scorch',\r\n 'scorebook',\r\n 'scorecard',\r\n 'scored',\r\n 'scoreless',\r\n 'scorer',\r\n 'scoring',\r\n 'scorn',\r\n 'scorpion',\r\n 'scotch',\r\n 'scoundrel',\r\n 'scoured',\r\n 'scouring',\r\n 'scouting',\r\n 'scouts',\r\n 'scowling',\r\n 'scrabble',\r\n 'scraggly',\r\n 'scrambled',\r\n 'scrambler',\r\n 'scrap',\r\n 'scratch',\r\n 'scrawny',\r\n 'screen',\r\n 'scribble',\r\n 'scribe',\r\n 'scribing',\r\n 'scrimmage',\r\n 'script',\r\n 'scroll',\r\n 'scrooge',\r\n 'scrounger',\r\n 'scrubbed',\r\n 'scrubber',\r\n 'scruffy',\r\n 'scrunch',\r\n 'scrutiny',\r\n 'scuba',\r\n 'scuff',\r\n 'sculptor',\r\n 'sculpture',\r\n 'scurvy',\r\n 'scuttle',\r\n 'secluded',\r\n 'secluding',\r\n 'seclusion',\r\n 'second',\r\n 'secrecy',\r\n 'secret',\r\n 'sectional',\r\n 'sector',\r\n 'secular',\r\n 'securely',\r\n 'security',\r\n 'sedan',\r\n 'sedate',\r\n 'sedation',\r\n 'sedative',\r\n 'sediment',\r\n 'seduce',\r\n 'seducing',\r\n 'segment',\r\n 'seismic',\r\n 'seizing',\r\n 'seldom',\r\n 'selected',\r\n 'selection',\r\n 'selective',\r\n 'selector',\r\n 'self',\r\n 'seltzer',\r\n 'semantic',\r\n 'semester',\r\n 'semicolon',\r\n 'semifinal',\r\n 'seminar',\r\n 'semisoft',\r\n 'semisweet',\r\n 'senate',\r\n 'senator',\r\n 'send',\r\n 'senior',\r\n 'senorita',\r\n 'sensation',\r\n 'sensitive',\r\n 'sensitize',\r\n 'sensually',\r\n 'sensuous',\r\n 'sepia',\r\n 'september',\r\n 'septic',\r\n 'septum',\r\n 'sequel',\r\n 'sequence',\r\n 'sequester',\r\n 'series',\r\n 'sermon',\r\n 'serotonin',\r\n 'serpent',\r\n 'serrated',\r\n 'serve',\r\n 'service',\r\n 'serving',\r\n 'sesame',\r\n 'sessions',\r\n 'setback',\r\n 'setting',\r\n 'settle',\r\n 'settling',\r\n 'setup',\r\n 'sevenfold',\r\n 'seventeen',\r\n 'seventh',\r\n 'seventy',\r\n 'severity',\r\n 'shabby',\r\n 'shack',\r\n 'shaded',\r\n 'shadily',\r\n 'shadiness',\r\n 'shading',\r\n 'shadow',\r\n 'shady',\r\n 'shaft',\r\n 'shakable',\r\n 'shakily',\r\n 'shakiness',\r\n 'shaking',\r\n 'shaky',\r\n 'shale',\r\n 'shallot',\r\n 'shallow',\r\n 'shame',\r\n 'shampoo',\r\n 'shamrock',\r\n 'shank',\r\n 'shanty',\r\n 'shape',\r\n 'shaping',\r\n 'share',\r\n 'sharpener',\r\n 'sharper',\r\n 'sharpie',\r\n 'sharply',\r\n 'sharpness',\r\n 'shawl',\r\n 'sheath',\r\n 'shed',\r\n 'sheep',\r\n 'sheet',\r\n 'shelf',\r\n 'shell',\r\n 'shelter',\r\n 'shelve',\r\n 'shelving',\r\n 'sherry',\r\n 'shield',\r\n 'shifter',\r\n 'shifting',\r\n 'shiftless',\r\n 'shifty',\r\n 'shimmer',\r\n 'shimmy',\r\n 'shindig',\r\n 'shine',\r\n 'shingle',\r\n 'shininess',\r\n 'shining',\r\n 'shiny',\r\n 'ship',\r\n 'shirt',\r\n 'shivering',\r\n 'shock',\r\n 'shone',\r\n 'shoplift',\r\n 'shopper',\r\n 'shopping',\r\n 'shoptalk',\r\n 'shore',\r\n 'shortage',\r\n 'shortcake',\r\n 'shortcut',\r\n 'shorten',\r\n 'shorter',\r\n 'shorthand',\r\n 'shortlist',\r\n 'shortly',\r\n 'shortness',\r\n 'shorts',\r\n 'shortwave',\r\n 'shorty',\r\n 'shout',\r\n 'shove',\r\n 'showbiz',\r\n 'showcase',\r\n 'showdown',\r\n 'shower',\r\n 'showgirl',\r\n 'showing',\r\n 'showman',\r\n 'shown',\r\n 'showoff',\r\n 'showpiece',\r\n 'showplace',\r\n 'showroom',\r\n 'showy',\r\n 'shrank',\r\n 'shrapnel',\r\n 'shredder',\r\n 'shredding',\r\n 'shrewdly',\r\n 'shriek',\r\n 'shrill',\r\n 'shrimp',\r\n 'shrine',\r\n 'shrink',\r\n 'shrivel',\r\n 'shrouded',\r\n 'shrubbery',\r\n 'shrubs',\r\n 'shrug',\r\n 'shrunk',\r\n 'shucking',\r\n 'shudder',\r\n 'shuffle',\r\n 'shuffling',\r\n 'shun',\r\n 'shush',\r\n 'shut',\r\n 'shy',\r\n 'siamese',\r\n 'siberian',\r\n 'sibling',\r\n 'siding',\r\n 'sierra',\r\n 'siesta',\r\n 'sift',\r\n 'sighing',\r\n 'silenced',\r\n 'silencer',\r\n 'silent',\r\n 'silica',\r\n 'silicon',\r\n 'silk',\r\n 'silliness',\r\n 'silly',\r\n 'silo',\r\n 'silt',\r\n 'silver',\r\n 'similarly',\r\n 'simile',\r\n 'simmering',\r\n 'simple',\r\n 'simplify',\r\n 'simply',\r\n 'sincere',\r\n 'sincerity',\r\n 'singer',\r\n 'singing',\r\n 'single',\r\n 'singular',\r\n 'sinister',\r\n 'sinless',\r\n 'sinner',\r\n 'sinuous',\r\n 'sip',\r\n 'siren',\r\n 'sister',\r\n 'sitcom',\r\n 'sitter',\r\n 'sitting',\r\n 'situated',\r\n 'situation',\r\n 'sixfold',\r\n 'sixteen',\r\n 'sixth',\r\n 'sixties',\r\n 'sixtieth',\r\n 'sixtyfold',\r\n 'sizable',\r\n 'sizably',\r\n 'size',\r\n 'sizing',\r\n 'sizzle',\r\n 'sizzling',\r\n 'skater',\r\n 'skating',\r\n 'skedaddle',\r\n 'skeletal',\r\n 'skeleton',\r\n 'skeptic',\r\n 'sketch',\r\n 'skewed',\r\n 'skewer',\r\n 'skid',\r\n 'skied',\r\n 'skier',\r\n 'skies',\r\n 'skiing',\r\n 'skilled',\r\n 'skillet',\r\n 'skillful',\r\n 'skimmed',\r\n 'skimmer',\r\n 'skimming',\r\n 'skimpily',\r\n 'skincare',\r\n 'skinhead',\r\n 'skinless',\r\n 'skinning',\r\n 'skinny',\r\n 'skintight',\r\n 'skipper',\r\n 'skipping',\r\n 'skirmish',\r\n 'skirt',\r\n 'skittle',\r\n 'skydiver',\r\n 'skylight',\r\n 'skyline',\r\n 'skype',\r\n 'skyrocket',\r\n 'skyward',\r\n 'slab',\r\n 'slacked',\r\n 'slacker',\r\n 'slacking',\r\n 'slackness',\r\n 'slacks',\r\n 'slain',\r\n 'slam',\r\n 'slander',\r\n 'slang',\r\n 'slapping',\r\n 'slapstick',\r\n 'slashed',\r\n 'slashing',\r\n 'slate',\r\n 'slather',\r\n 'slaw',\r\n 'sled',\r\n 'sleek',\r\n 'sleep',\r\n 'sleet',\r\n 'sleeve',\r\n 'slept',\r\n 'sliceable',\r\n 'sliced',\r\n 'slicer',\r\n 'slicing',\r\n 'slick',\r\n 'slider',\r\n 'slideshow',\r\n 'sliding',\r\n 'slighted',\r\n 'slighting',\r\n 'slightly',\r\n 'slimness',\r\n 'slimy',\r\n 'slinging',\r\n 'slingshot',\r\n 'slinky',\r\n 'slip',\r\n 'slit',\r\n 'sliver',\r\n 'slobbery',\r\n 'slogan',\r\n 'sloped',\r\n 'sloping',\r\n 'sloppily',\r\n 'sloppy',\r\n 'slot',\r\n 'slouching',\r\n 'slouchy',\r\n 'sludge',\r\n 'slug',\r\n 'slum',\r\n 'slurp',\r\n 'slush',\r\n 'sly',\r\n 'small',\r\n 'smartly',\r\n 'smartness',\r\n 'smasher',\r\n 'smashing',\r\n 'smashup',\r\n 'smell',\r\n 'smelting',\r\n 'smile',\r\n 'smilingly',\r\n 'smirk',\r\n 'smite',\r\n 'smith',\r\n 'smitten',\r\n 'smock',\r\n 'smog',\r\n 'smoked',\r\n 'smokeless',\r\n 'smokiness',\r\n 'smoking',\r\n 'smoky',\r\n 'smolder',\r\n 'smooth',\r\n 'smother',\r\n 'smudge',\r\n 'smudgy',\r\n 'smuggler',\r\n 'smuggling',\r\n 'smugly',\r\n 'smugness',\r\n 'snack',\r\n 'snagged',\r\n 'snaking',\r\n 'snap',\r\n 'snare',\r\n 'snarl',\r\n 'snazzy',\r\n 'sneak',\r\n 'sneer',\r\n 'sneeze',\r\n 'sneezing',\r\n 'snide',\r\n 'sniff',\r\n 'snippet',\r\n 'snipping',\r\n 'snitch',\r\n 'snooper',\r\n 'snooze',\r\n 'snore',\r\n 'snoring',\r\n 'snorkel',\r\n 'snort',\r\n 'snout',\r\n 'snowbird',\r\n 'snowboard',\r\n 'snowbound',\r\n 'snowcap',\r\n 'snowdrift',\r\n 'snowdrop',\r\n 'snowfall',\r\n 'snowfield',\r\n 'snowflake',\r\n 'snowiness',\r\n 'snowless',\r\n 'snowman',\r\n 'snowplow',\r\n 'snowshoe',\r\n 'snowstorm',\r\n 'snowsuit',\r\n 'snowy',\r\n 'snub',\r\n 'snuff',\r\n 'snuggle',\r\n 'snugly',\r\n 'snugness',\r\n 'speak',\r\n 'spearfish',\r\n 'spearhead',\r\n 'spearman',\r\n 'spearmint',\r\n 'species',\r\n 'specimen',\r\n 'specked',\r\n 'speckled',\r\n 'specks',\r\n 'spectacle',\r\n 'spectator',\r\n 'spectrum',\r\n 'speculate',\r\n 'speech',\r\n 'speed',\r\n 'spellbind',\r\n 'speller',\r\n 'spelling',\r\n 'spendable',\r\n 'spender',\r\n 'spending',\r\n 'spent',\r\n 'spew',\r\n 'sphere',\r\n 'spherical',\r\n 'sphinx',\r\n 'spider',\r\n 'spied',\r\n 'spiffy',\r\n 'spill',\r\n 'spilt',\r\n 'spinach',\r\n 'spinal',\r\n 'spindle',\r\n 'spinner',\r\n 'spinning',\r\n 'spinout',\r\n 'spinster',\r\n 'spiny',\r\n 'spiral',\r\n 'spirited',\r\n 'spiritism',\r\n 'spirits',\r\n 'spiritual',\r\n 'splashed',\r\n 'splashing',\r\n 'splashy',\r\n 'splatter',\r\n 'spleen',\r\n 'splendid',\r\n 'splendor',\r\n 'splice',\r\n 'splicing',\r\n 'splinter',\r\n 'splotchy',\r\n 'splurge',\r\n 'spoilage',\r\n 'spoiled',\r\n 'spoiler',\r\n 'spoiling',\r\n 'spoils',\r\n 'spoken',\r\n 'spokesman',\r\n 'sponge',\r\n 'spongy',\r\n 'sponsor',\r\n 'spoof',\r\n 'spookily',\r\n 'spooky',\r\n 'spool',\r\n 'spoon',\r\n 'spore',\r\n 'sporting',\r\n 'sports',\r\n 'sporty',\r\n 'spotless',\r\n 'spotlight',\r\n 'spotted',\r\n 'spotter',\r\n 'spotting',\r\n 'spotty',\r\n 'spousal',\r\n 'spouse',\r\n 'spout',\r\n 'sprain',\r\n 'sprang',\r\n 'sprawl',\r\n 'spray',\r\n 'spree',\r\n 'sprig',\r\n 'spring',\r\n 'sprinkled',\r\n 'sprinkler',\r\n 'sprint',\r\n 'sprite',\r\n 'sprout',\r\n 'spruce',\r\n 'sprung',\r\n 'spry',\r\n 'spud',\r\n 'spur',\r\n 'sputter',\r\n 'spyglass',\r\n 'squabble',\r\n 'squad',\r\n 'squall',\r\n 'squander',\r\n 'squash',\r\n 'squatted',\r\n 'squatter',\r\n 'squatting',\r\n 'squeak',\r\n 'squealer',\r\n 'squealing',\r\n 'squeamish',\r\n 'squeegee',\r\n 'squeeze',\r\n 'squeezing',\r\n 'squid',\r\n 'squiggle',\r\n 'squiggly',\r\n 'squint',\r\n 'squire',\r\n 'squirt',\r\n 'squishier',\r\n 'squishy',\r\n 'stability',\r\n 'stabilize',\r\n 'stable',\r\n 'stack',\r\n 'stadium',\r\n 'staff',\r\n 'stage',\r\n 'staging',\r\n 'stagnant',\r\n 'stagnate',\r\n 'stainable',\r\n 'stained',\r\n 'staining',\r\n 'stainless',\r\n 'stalemate',\r\n 'staleness',\r\n 'stalling',\r\n 'stallion',\r\n 'stamina',\r\n 'stammer',\r\n 'stamp',\r\n 'stand',\r\n 'stank',\r\n 'staple',\r\n 'stapling',\r\n 'starboard',\r\n 'starch',\r\n 'stardom',\r\n 'stardust',\r\n 'starfish',\r\n 'stargazer',\r\n 'staring',\r\n 'stark',\r\n 'starless',\r\n 'starlet',\r\n 'starlight',\r\n 'starlit',\r\n 'starring',\r\n 'starry',\r\n 'starship',\r\n 'starter',\r\n 'starting',\r\n 'startle',\r\n 'startling',\r\n 'startup',\r\n 'starved',\r\n 'starving',\r\n 'stash',\r\n 'state',\r\n 'static',\r\n 'statistic',\r\n 'statue',\r\n 'stature',\r\n 'status',\r\n 'statute',\r\n 'statutory',\r\n 'staunch',\r\n 'stays',\r\n 'steadfast',\r\n 'steadier',\r\n 'steadily',\r\n 'steadying',\r\n 'steam',\r\n 'steed',\r\n 'steep',\r\n 'steerable',\r\n 'steering',\r\n 'steersman',\r\n 'stegosaur',\r\n 'stellar',\r\n 'stem',\r\n 'stench',\r\n 'stencil',\r\n 'step',\r\n 'stereo',\r\n 'sterile',\r\n 'sterility',\r\n 'sterilize',\r\n 'sterling',\r\n 'sternness',\r\n 'sternum',\r\n 'stew',\r\n 'stick',\r\n 'stiffen',\r\n 'stiffly',\r\n 'stiffness',\r\n 'stifle',\r\n 'stifling',\r\n 'stillness',\r\n 'stilt',\r\n 'stimulant',\r\n 'stimulate',\r\n 'stimuli',\r\n 'stimulus',\r\n 'stinger',\r\n 'stingily',\r\n 'stinging',\r\n 'stingray',\r\n 'stingy',\r\n 'stinking',\r\n 'stinky',\r\n 'stipend',\r\n 'stipulate',\r\n 'stir',\r\n 'stitch',\r\n 'stock',\r\n 'stoic',\r\n 'stoke',\r\n 'stole',\r\n 'stomp',\r\n 'stonewall',\r\n 'stoneware',\r\n 'stonework',\r\n 'stoning',\r\n 'stony',\r\n 'stood',\r\n 'stooge',\r\n 'stool',\r\n 'stoop',\r\n 'stoplight',\r\n 'stoppable',\r\n 'stoppage',\r\n 'stopped',\r\n 'stopper',\r\n 'stopping',\r\n 'stopwatch',\r\n 'storable',\r\n 'storage',\r\n 'storeroom',\r\n 'storewide',\r\n 'storm',\r\n 'stout',\r\n 'stove',\r\n 'stowaway',\r\n 'stowing',\r\n 'straddle',\r\n 'straggler',\r\n 'strained',\r\n 'strainer',\r\n 'straining',\r\n 'strangely',\r\n 'stranger',\r\n 'strangle',\r\n 'strategic',\r\n 'strategy',\r\n 'stratus',\r\n 'straw',\r\n 'stray',\r\n 'streak',\r\n 'stream',\r\n 'street',\r\n 'strength',\r\n 'strenuous',\r\n 'strep',\r\n 'stress',\r\n 'stretch',\r\n 'strewn',\r\n 'stricken',\r\n 'strict',\r\n 'stride',\r\n 'strife',\r\n 'strike',\r\n 'striking',\r\n 'strive',\r\n 'striving',\r\n 'strobe',\r\n 'strode',\r\n 'stroller',\r\n 'strongbox',\r\n 'strongly',\r\n 'strongman',\r\n 'struck',\r\n 'structure',\r\n 'strudel',\r\n 'struggle',\r\n 'strum',\r\n 'strung',\r\n 'strut',\r\n 'stubbed',\r\n 'stubble',\r\n 'stubbly',\r\n 'stubborn',\r\n 'stucco',\r\n 'stuck',\r\n 'student',\r\n 'studied',\r\n 'studio',\r\n 'study',\r\n 'stuffed',\r\n 'stuffing',\r\n 'stuffy',\r\n 'stumble',\r\n 'stumbling',\r\n 'stump',\r\n 'stung',\r\n 'stunned',\r\n 'stunner',\r\n 'stunning',\r\n 'stunt',\r\n 'stupor',\r\n 'sturdily',\r\n 'sturdy',\r\n 'styling',\r\n 'stylishly',\r\n 'stylist',\r\n 'stylized',\r\n 'stylus',\r\n 'suave',\r\n 'subarctic',\r\n 'subatomic',\r\n 'subdivide',\r\n 'subdued',\r\n 'subduing',\r\n 'subfloor',\r\n 'subgroup',\r\n 'subheader',\r\n 'subject',\r\n 'sublease',\r\n 'sublet',\r\n 'sublevel',\r\n 'sublime',\r\n 'submarine',\r\n 'submerge',\r\n 'submersed',\r\n 'submitter',\r\n 'subpanel',\r\n 'subpar',\r\n 'subplot',\r\n 'subprime',\r\n 'subscribe',\r\n 'subscript',\r\n 'subsector',\r\n 'subside',\r\n 'subsiding',\r\n 'subsidize',\r\n 'subsidy',\r\n 'subsoil',\r\n 'subsonic',\r\n 'substance',\r\n 'subsystem',\r\n 'subtext',\r\n 'subtitle',\r\n 'subtly',\r\n 'subtotal',\r\n 'subtract',\r\n 'subtype',\r\n 'suburb',\r\n 'subway',\r\n 'subwoofer',\r\n 'subzero',\r\n 'succulent',\r\n 'such',\r\n 'suction',\r\n 'sudden',\r\n 'sudoku',\r\n 'suds',\r\n 'sufferer',\r\n 'suffering',\r\n 'suffice',\r\n 'suffix',\r\n 'suffocate',\r\n 'suffrage',\r\n 'sugar',\r\n 'suggest',\r\n 'suing',\r\n 'suitable',\r\n 'suitably',\r\n 'suitcase',\r\n 'suitor',\r\n 'sulfate',\r\n 'sulfide',\r\n 'sulfite',\r\n 'sulfur',\r\n 'sulk',\r\n 'sullen',\r\n 'sulphate',\r\n 'sulphuric',\r\n 'sultry',\r\n 'superbowl',\r\n 'superglue',\r\n 'superhero',\r\n 'superior',\r\n 'superjet',\r\n 'superman',\r\n 'supermom',\r\n 'supernova',\r\n 'supervise',\r\n 'supper',\r\n 'supplier',\r\n 'supply',\r\n 'support',\r\n 'supremacy',\r\n 'supreme',\r\n 'surcharge',\r\n 'surely',\r\n 'sureness',\r\n 'surface',\r\n 'surfacing',\r\n 'surfboard',\r\n 'surfer',\r\n 'surgery',\r\n 'surgical',\r\n 'surging',\r\n 'surname',\r\n 'surpass',\r\n 'surplus',\r\n 'surprise',\r\n 'surreal',\r\n 'surrender',\r\n 'surrogate',\r\n 'surround',\r\n 'survey',\r\n 'survival',\r\n 'survive',\r\n 'surviving',\r\n 'survivor',\r\n 'sushi',\r\n 'suspect',\r\n 'suspend',\r\n 'suspense',\r\n 'sustained',\r\n 'sustainer',\r\n 'swab',\r\n 'swaddling',\r\n 'swagger',\r\n 'swampland',\r\n 'swan',\r\n 'swapping',\r\n 'swarm',\r\n 'sway',\r\n 'swear',\r\n 'sweat',\r\n 'sweep',\r\n 'swell',\r\n 'swept',\r\n 'swerve',\r\n 'swifter',\r\n 'swiftly',\r\n 'swiftness',\r\n 'swimmable',\r\n 'swimmer',\r\n 'swimming',\r\n 'swimsuit',\r\n 'swimwear',\r\n 'swinger',\r\n 'swinging',\r\n 'swipe',\r\n 'swirl',\r\n 'switch',\r\n 'swivel',\r\n 'swizzle',\r\n 'swooned',\r\n 'swoop',\r\n 'swoosh',\r\n 'swore',\r\n 'sworn',\r\n 'swung',\r\n 'sycamore',\r\n 'sympathy',\r\n 'symphonic',\r\n 'symphony',\r\n 'symptom',\r\n 'synapse',\r\n 'syndrome',\r\n 'synergy',\r\n 'synopses',\r\n 'synopsis',\r\n 'synthesis',\r\n 'synthetic',\r\n 'syrup',\r\n 'system',\r\n 't-shirt',\r\n 'tabasco',\r\n 'tabby',\r\n 'tableful',\r\n 'tables',\r\n 'tablet',\r\n 'tableware',\r\n 'tabloid',\r\n 'tackiness',\r\n 'tacking',\r\n 'tackle',\r\n 'tackling',\r\n 'tacky',\r\n 'taco',\r\n 'tactful',\r\n 'tactical',\r\n 'tactics',\r\n 'tactile',\r\n 'tactless',\r\n 'tadpole',\r\n 'taekwondo',\r\n 'tag',\r\n 'tainted',\r\n 'take',\r\n 'taking',\r\n 'talcum',\r\n 'talisman',\r\n 'tall',\r\n 'talon',\r\n 'tamale',\r\n 'tameness',\r\n 'tamer',\r\n 'tamper',\r\n 'tank',\r\n 'tanned',\r\n 'tannery',\r\n 'tanning',\r\n 'tantrum',\r\n 'tapeless',\r\n 'tapered',\r\n 'tapering',\r\n 'tapestry',\r\n 'tapioca',\r\n 'tapping',\r\n 'taps',\r\n 'tarantula',\r\n 'target',\r\n 'tarmac',\r\n 'tarnish',\r\n 'tarot',\r\n 'tartar',\r\n 'tartly',\r\n 'tartness',\r\n 'task',\r\n 'tassel',\r\n 'taste',\r\n 'tastiness',\r\n 'tasting',\r\n 'tasty',\r\n 'tattered',\r\n 'tattle',\r\n 'tattling',\r\n 'tattoo',\r\n 'taunt',\r\n 'tavern',\r\n 'thank',\r\n 'that',\r\n 'thaw',\r\n 'theater',\r\n 'theatrics',\r\n 'thee',\r\n 'theft',\r\n 'theme',\r\n 'theology',\r\n 'theorize',\r\n 'thermal',\r\n 'thermos',\r\n 'thesaurus',\r\n 'these',\r\n 'thesis',\r\n 'thespian',\r\n 'thicken',\r\n 'thicket',\r\n 'thickness',\r\n 'thieving',\r\n 'thievish',\r\n 'thigh',\r\n 'thimble',\r\n 'thing',\r\n 'think',\r\n 'thinly',\r\n 'thinner',\r\n 'thinness',\r\n 'thinning',\r\n 'thirstily',\r\n 'thirsting',\r\n 'thirsty',\r\n 'thirteen',\r\n 'thirty',\r\n 'thong',\r\n 'thorn',\r\n 'those',\r\n 'thousand',\r\n 'thrash',\r\n 'thread',\r\n 'threaten',\r\n 'threefold',\r\n 'thrift',\r\n 'thrill',\r\n 'thrive',\r\n 'thriving',\r\n 'throat',\r\n 'throbbing',\r\n 'throng',\r\n 'throttle',\r\n 'throwaway',\r\n 'throwback',\r\n 'thrower',\r\n 'throwing',\r\n 'thud',\r\n 'thumb',\r\n 'thumping',\r\n 'thursday',\r\n 'thus',\r\n 'thwarting',\r\n 'thyself',\r\n 'tiara',\r\n 'tibia',\r\n 'tidal',\r\n 'tidbit',\r\n 'tidiness',\r\n 'tidings',\r\n 'tidy',\r\n 'tiger',\r\n 'tighten',\r\n 'tightly',\r\n 'tightness',\r\n 'tightrope',\r\n 'tightwad',\r\n 'tigress',\r\n 'tile',\r\n 'tiling',\r\n 'till',\r\n 'tilt',\r\n 'timid',\r\n 'timing',\r\n 'timothy',\r\n 'tinderbox',\r\n 'tinfoil',\r\n 'tingle',\r\n 'tingling',\r\n 'tingly',\r\n 'tinker',\r\n 'tinkling',\r\n 'tinsel',\r\n 'tinsmith',\r\n 'tint',\r\n 'tinwork',\r\n 'tiny',\r\n 'tipoff',\r\n 'tipped',\r\n 'tipper',\r\n 'tipping',\r\n 'tiptoeing',\r\n 'tiptop',\r\n 'tiring',\r\n 'tissue',\r\n 'trace',\r\n 'tracing',\r\n 'track',\r\n 'traction',\r\n 'tractor',\r\n 'trade',\r\n 'trading',\r\n 'tradition',\r\n 'traffic',\r\n 'tragedy',\r\n 'trailing',\r\n 'trailside',\r\n 'train',\r\n 'traitor',\r\n 'trance',\r\n 'tranquil',\r\n 'transfer',\r\n 'transform',\r\n 'translate',\r\n 'transpire',\r\n 'transport',\r\n 'transpose',\r\n 'trapdoor',\r\n 'trapeze',\r\n 'trapezoid',\r\n 'trapped',\r\n 'trapper',\r\n 'trapping',\r\n 'traps',\r\n 'trash',\r\n 'travel',\r\n 'traverse',\r\n 'travesty',\r\n 'tray',\r\n 'treachery',\r\n 'treading',\r\n 'treadmill',\r\n 'treason',\r\n 'treat',\r\n 'treble',\r\n 'tree',\r\n 'trekker',\r\n 'tremble',\r\n 'trembling',\r\n 'tremor',\r\n 'trench',\r\n 'trend',\r\n 'trespass',\r\n 'triage',\r\n 'trial',\r\n 'triangle',\r\n 'tribesman',\r\n 'tribunal',\r\n 'tribune',\r\n 'tributary',\r\n 'tribute',\r\n 'triceps',\r\n 'trickery',\r\n 'trickily',\r\n 'tricking',\r\n 'trickle',\r\n 'trickster',\r\n 'tricky',\r\n 'tricolor',\r\n 'tricycle',\r\n 'trident',\r\n 'tried',\r\n 'trifle',\r\n 'trifocals',\r\n 'trillion',\r\n 'trilogy',\r\n 'trimester',\r\n 'trimmer',\r\n 'trimming',\r\n 'trimness',\r\n 'trinity',\r\n 'trio',\r\n 'tripod',\r\n 'tripping',\r\n 'triumph',\r\n 'trivial',\r\n 'trodden',\r\n 'trolling',\r\n 'trombone',\r\n 'trophy',\r\n 'tropical',\r\n 'tropics',\r\n 'trouble',\r\n 'troubling',\r\n 'trough',\r\n 'trousers',\r\n 'trout',\r\n 'trowel',\r\n 'truce',\r\n 'truck',\r\n 'truffle',\r\n 'trump',\r\n 'trunks',\r\n 'trustable',\r\n 'trustee',\r\n 'trustful',\r\n 'trusting',\r\n 'trustless',\r\n 'truth',\r\n 'try',\r\n 'tubby',\r\n 'tubeless',\r\n 'tubular',\r\n 'tucking',\r\n 'tuesday',\r\n 'tug',\r\n 'tuition',\r\n 'tulip',\r\n 'tumble',\r\n 'tumbling',\r\n 'tummy',\r\n 'turban',\r\n 'turbine',\r\n 'turbofan',\r\n 'turbojet',\r\n 'turbulent',\r\n 'turf',\r\n 'turkey',\r\n 'turmoil',\r\n 'turret',\r\n 'turtle',\r\n 'tusk',\r\n 'tutor',\r\n 'tutu',\r\n 'tux',\r\n 'tweak',\r\n 'tweed',\r\n 'tweet',\r\n 'tweezers',\r\n 'twelve',\r\n 'twentieth',\r\n 'twenty',\r\n 'twerp',\r\n 'twice',\r\n 'twiddle',\r\n 'twiddling',\r\n 'twig',\r\n 'twilight',\r\n 'twine',\r\n 'twins',\r\n 'twirl',\r\n 'twistable',\r\n 'twisted',\r\n 'twister',\r\n 'twisting',\r\n 'twisty',\r\n 'twitch',\r\n 'twitter',\r\n 'tycoon',\r\n 'tying',\r\n 'tyke',\r\n 'udder',\r\n 'ultimate',\r\n 'ultimatum',\r\n 'ultra',\r\n 'umbilical',\r\n 'umbrella',\r\n 'umpire',\r\n 'unabashed',\r\n 'unable',\r\n 'unadorned',\r\n 'unadvised',\r\n 'unafraid',\r\n 'unaired',\r\n 'unaligned',\r\n 'unaltered',\r\n 'unarmored',\r\n 'unashamed',\r\n 'unaudited',\r\n 'unawake',\r\n 'unaware',\r\n 'unbaked',\r\n 'unbalance',\r\n 'unbeaten',\r\n 'unbend',\r\n 'unbent',\r\n 'unbiased',\r\n 'unbitten',\r\n 'unblended',\r\n 'unblessed',\r\n 'unblock',\r\n 'unbolted',\r\n 'unbounded',\r\n 'unboxed',\r\n 'unbraided',\r\n 'unbridle',\r\n 'unbroken',\r\n 'unbuckled',\r\n 'unbundle',\r\n 'unburned',\r\n 'unbutton',\r\n 'uncanny',\r\n 'uncapped',\r\n 'uncaring',\r\n 'uncertain',\r\n 'unchain',\r\n 'unchanged',\r\n 'uncharted',\r\n 'uncheck',\r\n 'uncivil',\r\n 'unclad',\r\n 'unclaimed',\r\n 'unclamped',\r\n 'unclasp',\r\n 'uncle',\r\n 'unclip',\r\n 'uncloak',\r\n 'unclog',\r\n 'unclothed',\r\n 'uncoated',\r\n 'uncoiled',\r\n 'uncolored',\r\n 'uncombed',\r\n 'uncommon',\r\n 'uncooked',\r\n 'uncork',\r\n 'uncorrupt',\r\n 'uncounted',\r\n 'uncouple',\r\n 'uncouth',\r\n 'uncover',\r\n 'uncross',\r\n 'uncrown',\r\n 'uncrushed',\r\n 'uncured',\r\n 'uncurious',\r\n 'uncurled',\r\n 'uncut',\r\n 'undamaged',\r\n 'undated',\r\n 'undaunted',\r\n 'undead',\r\n 'undecided',\r\n 'undefined',\r\n 'underage',\r\n 'underarm',\r\n 'undercoat',\r\n 'undercook',\r\n 'undercut',\r\n 'underdog',\r\n 'underdone',\r\n 'underfed',\r\n 'underfeed',\r\n 'underfoot',\r\n 'undergo',\r\n 'undergrad',\r\n 'underhand',\r\n 'underline',\r\n 'underling',\r\n 'undermine',\r\n 'undermost',\r\n 'underpaid',\r\n 'underpass',\r\n 'underpay',\r\n 'underrate',\r\n 'undertake',\r\n 'undertone',\r\n 'undertook',\r\n 'undertow',\r\n 'underuse',\r\n 'underwear',\r\n 'underwent',\r\n 'underwire',\r\n 'undesired',\r\n 'undiluted',\r\n 'undivided',\r\n 'undocked',\r\n 'undoing',\r\n 'undone',\r\n 'undrafted',\r\n 'undress',\r\n 'undrilled',\r\n 'undusted',\r\n 'undying',\r\n 'unearned',\r\n 'unearth',\r\n 'unease',\r\n 'uneasily',\r\n 'uneasy',\r\n 'uneatable',\r\n 'uneaten',\r\n 'unedited',\r\n 'unelected',\r\n 'unending',\r\n 'unengaged',\r\n 'unenvied',\r\n 'unequal',\r\n 'unethical',\r\n 'uneven',\r\n 'unexpired',\r\n 'unexposed',\r\n 'unfailing',\r\n 'unfair',\r\n 'unfasten',\r\n 'unfazed',\r\n 'unfeeling',\r\n 'unfiled',\r\n 'unfilled',\r\n 'unfitted',\r\n 'unfitting',\r\n 'unfixable',\r\n 'unfixed',\r\n 'unflawed',\r\n 'unfocused',\r\n 'unfold',\r\n 'unfounded',\r\n 'unframed',\r\n 'unfreeze',\r\n 'unfrosted',\r\n 'unfrozen',\r\n 'unfunded',\r\n 'unglazed',\r\n 'ungloved',\r\n 'unglue',\r\n 'ungodly',\r\n 'ungraded',\r\n 'ungreased',\r\n 'unguarded',\r\n 'unguided',\r\n 'unhappily',\r\n 'unhappy',\r\n 'unharmed',\r\n 'unhealthy',\r\n 'unheard',\r\n 'unhearing',\r\n 'unheated',\r\n 'unhelpful',\r\n 'unhidden',\r\n 'unhinge',\r\n 'unhitched',\r\n 'unholy',\r\n 'unhook',\r\n 'unicorn',\r\n 'unicycle',\r\n 'unified',\r\n 'unifier',\r\n 'uniformed',\r\n 'uniformly',\r\n 'unify',\r\n 'unimpeded',\r\n 'uninjured',\r\n 'uninstall',\r\n 'uninsured',\r\n 'uninvited',\r\n 'union',\r\n 'uniquely',\r\n 'unisexual',\r\n 'unison',\r\n 'unissued',\r\n 'unit',\r\n 'universal',\r\n 'universe',\r\n 'unjustly',\r\n 'unkempt',\r\n 'unkind',\r\n 'unknotted',\r\n 'unknowing',\r\n 'unknown',\r\n 'unlaced',\r\n 'unlatch',\r\n 'unlawful',\r\n 'unleaded',\r\n 'unlearned',\r\n 'unleash',\r\n 'unless',\r\n 'unleveled',\r\n 'unlighted',\r\n 'unlikable',\r\n 'unlimited',\r\n 'unlined',\r\n 'unlinked',\r\n 'unlisted',\r\n 'unlit',\r\n 'unlivable',\r\n 'unloaded',\r\n 'unloader',\r\n 'unlocked',\r\n 'unlocking',\r\n 'unlovable',\r\n 'unloved',\r\n 'unlovely',\r\n 'unloving',\r\n 'unluckily',\r\n 'unlucky',\r\n 'unmade',\r\n 'unmanaged',\r\n 'unmanned',\r\n 'unmapped',\r\n 'unmarked',\r\n 'unmasked',\r\n 'unmasking',\r\n 'unmatched',\r\n 'unmindful',\r\n 'unmixable',\r\n 'unmixed',\r\n 'unmolded',\r\n 'unmoral',\r\n 'unmovable',\r\n 'unmoved',\r\n 'unmoving',\r\n 'unnamable',\r\n 'unnamed',\r\n 'unnatural',\r\n 'unneeded',\r\n 'unnerve',\r\n 'unnerving',\r\n 'unnoticed',\r\n 'unopened',\r\n 'unopposed',\r\n 'unpack',\r\n 'unpadded',\r\n 'unpaid',\r\n 'unpainted',\r\n 'unpaired',\r\n 'unpaved',\r\n 'unpeeled',\r\n 'unpicked',\r\n 'unpiloted',\r\n 'unpinned',\r\n 'unplanned',\r\n 'unplanted',\r\n 'unpleased',\r\n 'unpledged',\r\n 'unplowed',\r\n 'unplug',\r\n 'unpopular',\r\n 'unproven',\r\n 'unquote',\r\n 'unranked',\r\n 'unrated',\r\n 'unraveled',\r\n 'unreached',\r\n 'unread',\r\n 'unreal',\r\n 'unreeling',\r\n 'unrefined',\r\n 'unrelated',\r\n 'unrented',\r\n 'unrest',\r\n 'unretired',\r\n 'unrevised',\r\n 'unrigged',\r\n 'unripe',\r\n 'unrivaled',\r\n 'unroasted',\r\n 'unrobed',\r\n 'unroll',\r\n 'unruffled',\r\n 'unruly',\r\n 'unrushed',\r\n 'unsaddle',\r\n 'unsafe',\r\n 'unsaid',\r\n 'unsalted',\r\n 'unsaved',\r\n 'unsavory',\r\n 'unscathed',\r\n 'unscented',\r\n 'unscrew',\r\n 'unsealed',\r\n 'unseated',\r\n 'unsecured',\r\n 'unseeing',\r\n 'unseemly',\r\n 'unseen',\r\n 'unselect',\r\n 'unselfish',\r\n 'unsent',\r\n 'unsettled',\r\n 'unshackle',\r\n 'unshaken',\r\n 'unshaved',\r\n 'unshaven',\r\n 'unsheathe',\r\n 'unshipped',\r\n 'unsightly',\r\n 'unsigned',\r\n 'unskilled',\r\n 'unsliced',\r\n 'unsmooth',\r\n 'unsnap',\r\n 'unsocial',\r\n 'unsoiled',\r\n 'unsold',\r\n 'unsolved',\r\n 'unsorted',\r\n 'unspoiled',\r\n 'unspoken',\r\n 'unstable',\r\n 'unstaffed',\r\n 'unstamped',\r\n 'unsteady',\r\n 'unsterile',\r\n 'unstirred',\r\n 'unstitch',\r\n 'unstopped',\r\n 'unstuck',\r\n 'unstuffed',\r\n 'unstylish',\r\n 'unsubtle',\r\n 'unsubtly',\r\n 'unsuited',\r\n 'unsure',\r\n 'unsworn',\r\n 'untagged',\r\n 'untainted',\r\n 'untaken',\r\n 'untamed',\r\n 'untangled',\r\n 'untapped',\r\n 'untaxed',\r\n 'unthawed',\r\n 'unthread',\r\n 'untidy',\r\n 'untie',\r\n 'until',\r\n 'untimed',\r\n 'untimely',\r\n 'untitled',\r\n 'untoasted',\r\n 'untold',\r\n 'untouched',\r\n 'untracked',\r\n 'untrained',\r\n 'untreated',\r\n 'untried',\r\n 'untrimmed',\r\n 'untrue',\r\n 'untruth',\r\n 'unturned',\r\n 'untwist',\r\n 'untying',\r\n 'unusable',\r\n 'unused',\r\n 'unusual',\r\n 'unvalued',\r\n 'unvaried',\r\n 'unvarying',\r\n 'unveiled',\r\n 'unveiling',\r\n 'unvented',\r\n 'unviable',\r\n 'unvisited',\r\n 'unvocal',\r\n 'unwanted',\r\n 'unwarlike',\r\n 'unwary',\r\n 'unwashed',\r\n 'unwatched',\r\n 'unweave',\r\n 'unwed',\r\n 'unwelcome',\r\n 'unwell',\r\n 'unwieldy',\r\n 'unwilling',\r\n 'unwind',\r\n 'unwired',\r\n 'unwitting',\r\n 'unwomanly',\r\n 'unworldly',\r\n 'unworn',\r\n 'unworried',\r\n 'unworthy',\r\n 'unwound',\r\n 'unwoven',\r\n 'unwrapped',\r\n 'unwritten',\r\n 'unzip',\r\n 'upbeat',\r\n 'upchuck',\r\n 'upcoming',\r\n 'upcountry',\r\n 'update',\r\n 'upfront',\r\n 'upgrade',\r\n 'upheaval',\r\n 'upheld',\r\n 'uphill',\r\n 'uphold',\r\n 'uplifted',\r\n 'uplifting',\r\n 'upload',\r\n 'upon',\r\n 'upper',\r\n 'upright',\r\n 'uprising',\r\n 'upriver',\r\n 'uproar',\r\n 'uproot',\r\n 'upscale',\r\n 'upside',\r\n 'upstage',\r\n 'upstairs',\r\n 'upstart',\r\n 'upstate',\r\n 'upstream',\r\n 'upstroke',\r\n 'upswing',\r\n 'uptake',\r\n 'uptight',\r\n 'uptown',\r\n 'upturned',\r\n 'upward',\r\n 'upwind',\r\n 'uranium',\r\n 'urban',\r\n 'urchin',\r\n 'urethane',\r\n 'urgency',\r\n 'urgent',\r\n 'urging',\r\n 'urologist',\r\n 'urology',\r\n 'usable',\r\n 'usage',\r\n 'useable',\r\n 'used',\r\n 'uselessly',\r\n 'user',\r\n 'usher',\r\n 'usual',\r\n 'utensil',\r\n 'utility',\r\n 'utilize',\r\n 'utmost',\r\n 'utopia',\r\n 'utter',\r\n 'vacancy',\r\n 'vacant',\r\n 'vacate',\r\n 'vacation',\r\n 'vagabond',\r\n 'vagrancy',\r\n 'vagrantly',\r\n 'vaguely',\r\n 'vagueness',\r\n 'valiant',\r\n 'valid',\r\n 'valium',\r\n 'valley',\r\n 'valuables',\r\n 'value',\r\n 'vanilla',\r\n 'vanish',\r\n 'vanity',\r\n 'vanquish',\r\n 'vantage',\r\n 'vaporizer',\r\n 'variable',\r\n 'variably',\r\n 'varied',\r\n 'variety',\r\n 'various',\r\n 'varmint',\r\n 'varnish',\r\n 'varsity',\r\n 'varying',\r\n 'vascular',\r\n 'vaseline',\r\n 'vastly',\r\n 'vastness',\r\n 'veal',\r\n 'vegan',\r\n 'veggie',\r\n 'vehicular',\r\n 'velcro',\r\n 'velocity',\r\n 'velvet',\r\n 'vendetta',\r\n 'vending',\r\n 'vendor',\r\n 'veneering',\r\n 'vengeful',\r\n 'venomous',\r\n 'ventricle',\r\n 'venture',\r\n 'venue',\r\n 'venus',\r\n 'verbalize',\r\n 'verbally',\r\n 'verbose',\r\n 'verdict',\r\n 'verify',\r\n 'verse',\r\n 'version',\r\n 'versus',\r\n 'vertebrae',\r\n 'vertical',\r\n 'vertigo',\r\n 'very',\r\n 'vessel',\r\n 'vest',\r\n 'veteran',\r\n 'veto',\r\n 'vexingly',\r\n 'viability',\r\n 'viable',\r\n 'vibes',\r\n 'vice',\r\n 'vicinity',\r\n 'victory',\r\n 'video',\r\n 'viewable',\r\n 'viewer',\r\n 'viewing',\r\n 'viewless',\r\n 'viewpoint',\r\n 'vigorous',\r\n 'village',\r\n 'villain',\r\n 'vindicate',\r\n 'vineyard',\r\n 'vintage',\r\n 'violate',\r\n 'violation',\r\n 'violator',\r\n 'violet',\r\n 'violin',\r\n 'viper',\r\n 'viral',\r\n 'virtual',\r\n 'virtuous',\r\n 'virus',\r\n 'visa',\r\n 'viscosity',\r\n 'viscous',\r\n 'viselike',\r\n 'visible',\r\n 'visibly',\r\n 'vision',\r\n 'visiting',\r\n 'visitor',\r\n 'visor',\r\n 'vista',\r\n 'vitality',\r\n 'vitalize',\r\n 'vitally',\r\n 'vitamins',\r\n 'vivacious',\r\n 'vividly',\r\n 'vividness',\r\n 'vixen',\r\n 'vocalist',\r\n 'vocalize',\r\n 'vocally',\r\n 'vocation',\r\n 'voice',\r\n 'voicing',\r\n 'void',\r\n 'volatile',\r\n 'volley',\r\n 'voltage',\r\n 'volumes',\r\n 'voter',\r\n 'voting',\r\n 'voucher',\r\n 'vowed',\r\n 'vowel',\r\n 'voyage',\r\n 'wackiness',\r\n 'wad',\r\n 'wafer',\r\n 'waffle',\r\n 'waged',\r\n 'wager',\r\n 'wages',\r\n 'waggle',\r\n 'wagon',\r\n 'wake',\r\n 'waking',\r\n 'walk',\r\n 'walmart',\r\n 'walnut',\r\n 'walrus',\r\n 'waltz',\r\n 'wand',\r\n 'wannabe',\r\n 'wanted',\r\n 'wanting',\r\n 'wasabi',\r\n 'washable',\r\n 'washbasin',\r\n 'washboard',\r\n 'washbowl',\r\n 'washcloth',\r\n 'washday',\r\n 'washed',\r\n 'washer',\r\n 'washhouse',\r\n 'washing',\r\n 'washout',\r\n 'washroom',\r\n 'washstand',\r\n 'washtub',\r\n 'wasp',\r\n 'wasting',\r\n 'watch',\r\n 'water',\r\n 'waviness',\r\n 'waving',\r\n 'wavy',\r\n 'whacking',\r\n 'whacky',\r\n 'wham',\r\n 'wharf',\r\n 'wheat',\r\n 'whenever',\r\n 'whiff',\r\n 'whimsical',\r\n 'whinny',\r\n 'whiny',\r\n 'whisking',\r\n 'whoever',\r\n 'whole',\r\n 'whomever',\r\n 'whoopee',\r\n 'whooping',\r\n 'whoops',\r\n 'why',\r\n 'wick',\r\n 'widely',\r\n 'widen',\r\n 'widget',\r\n 'widow',\r\n 'width',\r\n 'wieldable',\r\n 'wielder',\r\n 'wife',\r\n 'wifi',\r\n 'wikipedia',\r\n 'wildcard',\r\n 'wildcat',\r\n 'wilder',\r\n 'wildfire',\r\n 'wildfowl',\r\n 'wildland',\r\n 'wildlife',\r\n 'wildly',\r\n 'wildness',\r\n 'willed',\r\n 'willfully',\r\n 'willing',\r\n 'willow',\r\n 'willpower',\r\n 'wilt',\r\n 'wimp',\r\n 'wince',\r\n 'wincing',\r\n 'wind',\r\n 'wing',\r\n 'winking',\r\n 'winner',\r\n 'winnings',\r\n 'winter',\r\n 'wipe',\r\n 'wired',\r\n 'wireless',\r\n 'wiring',\r\n 'wiry',\r\n 'wisdom',\r\n 'wise',\r\n 'wish',\r\n 'wisplike',\r\n 'wispy',\r\n 'wistful',\r\n 'wizard',\r\n 'wobble',\r\n 'wobbling',\r\n 'wobbly',\r\n 'wok',\r\n 'wolf',\r\n 'wolverine',\r\n 'womanhood',\r\n 'womankind',\r\n 'womanless',\r\n 'womanlike',\r\n 'womanly',\r\n 'womb',\r\n 'woof',\r\n 'wooing',\r\n 'wool',\r\n 'woozy',\r\n 'word',\r\n 'work',\r\n 'worried',\r\n 'worrier',\r\n 'worrisome',\r\n 'worry',\r\n 'worsening',\r\n 'worshiper',\r\n 'worst',\r\n 'wound',\r\n 'woven',\r\n 'wow',\r\n 'wrangle',\r\n 'wrath',\r\n 'wreath',\r\n 'wreckage',\r\n 'wrecker',\r\n 'wrecking',\r\n 'wrench',\r\n 'wriggle',\r\n 'wriggly',\r\n 'wrinkle',\r\n 'wrinkly',\r\n 'wrist',\r\n 'writing',\r\n 'written',\r\n 'wrongdoer',\r\n 'wronged',\r\n 'wrongful',\r\n 'wrongly',\r\n 'wrongness',\r\n 'wrought',\r\n 'xbox',\r\n 'xerox',\r\n 'yahoo',\r\n 'yam',\r\n 'yanking',\r\n 'yapping',\r\n 'yard',\r\n 'yarn',\r\n 'yeah',\r\n 'yearbook',\r\n 'yearling',\r\n 'yearly',\r\n 'yearning',\r\n 'yeast',\r\n 'yelling',\r\n 'yelp',\r\n 'yen',\r\n 'yesterday',\r\n 'yiddish',\r\n 'yield',\r\n 'yin',\r\n 'yippee',\r\n 'yo-yo',\r\n 'yodel',\r\n 'yoga',\r\n 'yogurt',\r\n 'yonder',\r\n 'yoyo',\r\n 'yummy',\r\n 'zap',\r\n 'zealous',\r\n 'zebra',\r\n 'zen',\r\n 'zeppelin',\r\n 'zero',\r\n 'zestfully',\r\n 'zesty',\r\n 'zigzagged',\r\n 'zipfile',\r\n 'zipping',\r\n 'zippy',\r\n 'zips',\r\n 'zit',\r\n 'zodiac',\r\n 'zombie',\r\n 'zone',\r\n 'zoning',\r\n 'zookeeper',\r\n 'zoologist',\r\n 'zoology',\r\n 'zoom',\r\n];\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { ConstantsService } from './constants.service';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from '../abstractions/environment.service';\nimport { NotificationsService } from '../abstractions/notifications.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class EnvironmentService implements EnvironmentServiceAbstraction {\n baseUrl: string;\n webVaultUrl: string;\n apiUrl: string;\n identityUrl: string;\n iconsUrl: string;\n notificationsUrl: string;\n\n constructor(private apiService: ApiService, private storageService: StorageService,\n private notificationsService: NotificationsService) { }\n\n getWebVaultUrl(): string {\n if (this.webVaultUrl != null) {\n return this.webVaultUrl;\n } else if (this.baseUrl) {\n return this.baseUrl;\n }\n return null;\n }\n\n async setUrlsFromStorage(): Promise {\n const urlsObj: any = await this.storageService.get(ConstantsService.environmentUrlsKey);\n const urls = urlsObj || {\n base: null,\n api: null,\n identity: null,\n icons: null,\n notifications: null,\n webVault: null,\n };\n\n const envUrls = new EnvironmentUrls();\n\n if (urls.base) {\n this.baseUrl = envUrls.base = urls.base;\n this.apiService.setUrls(envUrls);\n return;\n }\n\n this.webVaultUrl = urls.webVault;\n this.apiUrl = envUrls.api = urls.api;\n this.identityUrl = envUrls.identity = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n this.apiService.setUrls(envUrls);\n }\n\n async setUrls(urls: any): Promise {\n urls.base = this.formatUrl(urls.base);\n urls.webVault = this.formatUrl(urls.webVault);\n urls.api = this.formatUrl(urls.api);\n urls.identity = this.formatUrl(urls.identity);\n urls.icons = this.formatUrl(urls.icons);\n urls.notifications = this.formatUrl(urls.notifications);\n\n await this.storageService.save(ConstantsService.environmentUrlsKey, {\n base: urls.base,\n api: urls.api,\n identity: urls.identity,\n webVault: urls.webVault,\n icons: urls.icons,\n notifications: urls.notifications,\n });\n\n this.baseUrl = urls.base;\n this.webVaultUrl = urls.webVault;\n this.apiUrl = urls.api;\n this.identityUrl = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n\n const envUrls = new EnvironmentUrls();\n if (this.baseUrl) {\n envUrls.base = this.baseUrl;\n } else {\n envUrls.api = this.apiUrl;\n envUrls.identity = this.identityUrl;\n }\n\n this.apiService.setUrls(envUrls);\n if (this.notificationsService != null) {\n this.notificationsService.init(this);\n }\n return urls;\n }\n\n private formatUrl(url: string): string {\n if (url == null || url === '') {\n return null;\n }\n\n url = url.replace(/\\/+$/g, '');\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\n url = 'https://' + url;\n }\n\n return url.trim();\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';\n\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { LockService as LockServiceAbstraction } from '../abstractions/lock.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { SearchService } from '../abstractions/search.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class LockService implements LockServiceAbstraction {\n pinLocked = false;\n\n private inited = false;\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private collectionService: CollectionService, private cryptoService: CryptoService,\n private platformUtilsService: PlatformUtilsService, private storageService: StorageService,\n private messagingService: MessagingService, private searchService: SearchService,\n private lockedCallback: () => Promise) {\n }\n\n init(checkOnInterval: boolean) {\n if (this.inited) {\n return;\n }\n\n this.inited = true;\n if (checkOnInterval) {\n this.checkLock();\n setInterval(() => this.checkLock(), 10 * 1000); // check every 10 seconds\n }\n }\n\n async isLocked(): Promise {\n const hasKey = await this.cryptoService.hasKey();\n if (hasKey && this.pinLocked) {\n return true;\n }\n return !hasKey;\n }\n\n async checkLock(): Promise {\n if (this.platformUtilsService.isViewOpen()) {\n // Do not lock\n return;\n }\n\n if (this.isLocked()) {\n return;\n }\n\n let lockOption = this.platformUtilsService.lockTimeout();\n if (lockOption == null) {\n lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\n }\n if (lockOption == null || lockOption < 0) {\n return;\n }\n\n const lastActive = await this.storageService.get(ConstantsService.lastActiveKey);\n if (lastActive == null) {\n return;\n }\n\n const lockOptionSeconds = lockOption * 60;\n const diffSeconds = ((new Date()).getTime() - lastActive) / 1000;\n if (diffSeconds >= lockOptionSeconds) {\n // need to lock now\n await this.lock(true);\n }\n }\n\n async lock(allowSoftLock = false): Promise {\n if (allowSoftLock) {\n const pinSet = await this.isPinLockSet();\n if (pinSet[0]) {\n this.pinLocked = true;\n this.messagingService.send('locked');\n if (this.lockedCallback != null) {\n await this.lockedCallback();\n }\n return;\n }\n }\n\n await Promise.all([\n this.cryptoService.clearKey(),\n this.cryptoService.clearOrgKeys(true),\n this.cryptoService.clearKeyPair(true),\n this.cryptoService.clearEncKey(true),\n ]);\n\n this.folderService.clearCache();\n this.cipherService.clearCache();\n this.collectionService.clearCache();\n this.searchService.clearIndex();\n this.messagingService.send('locked');\n if (this.lockedCallback != null) {\n await this.lockedCallback();\n }\n }\n\n async setLockOption(lockOption: number): Promise {\n await this.storageService.save(ConstantsService.lockOptionKey, lockOption);\n await this.cryptoService.toggleKey();\n }\n\n async isPinLockSet(): Promise<[boolean, boolean]> {\n const protectedPin = await this.storageService.get(ConstantsService.protectedPin);\n const pinProtectedKey = await this.storageService.get(ConstantsService.pinProtectedKey);\n return [protectedPin != null, pinProtectedKey != null];\n }\n\n clear(): Promise {\n return this.storageService.remove(ConstantsService.protectedPin);\n }\n}\n","import * as zxcvbn from 'zxcvbn';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from '../abstractions/passwordGeneration.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst DefaultOptions = {\r\n length: 14,\r\n ambiguous: false,\r\n number: true,\r\n minNumber: 1,\r\n uppercase: true,\r\n minUppercase: 0,\r\n lowercase: true,\r\n minLowercase: 0,\r\n special: false,\r\n minSpecial: 1,\r\n type: 'password',\r\n numWords: 3,\r\n wordSeparator: '-',\r\n};\r\n\r\nconst Keys = {\r\n options: 'passwordGenerationOptions',\r\n history: 'generatedPasswordHistory',\r\n};\r\n\r\nconst MaxPasswordsInHistory = 100;\r\n\r\nexport class PasswordGenerationService implements PasswordGenerationServiceAbstraction {\r\n private optionsCache: any;\r\n private history: GeneratedPasswordHistory[];\r\n\r\n constructor(private cryptoService: CryptoService, private storageService: StorageService) { }\r\n\r\n async generatePassword(options: any): Promise {\r\n // overload defaults with given options\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.type === 'passphrase') {\r\n return this.generatePassphrase(options);\r\n }\r\n\r\n // sanitize\r\n if (o.uppercase && o.minUppercase <= 0) {\r\n o.minUppercase = 1;\r\n }\r\n if (o.lowercase && o.minLowercase <= 0) {\r\n o.minLowercase = 1;\r\n }\r\n if (o.number && o.minNumber <= 0) {\r\n o.minNumber = 1;\r\n }\r\n if (o.special && o.minSpecial <= 0) {\r\n o.minSpecial = 1;\r\n }\r\n\r\n if (!o.length || o.length < 1) {\r\n o.length = 10;\r\n }\r\n\r\n const minLength: number = o.minUppercase + o.minLowercase + o.minNumber + o.minSpecial;\r\n if (o.length < minLength) {\r\n o.length = minLength;\r\n }\r\n\r\n const positions: string[] = [];\r\n if (o.lowercase && o.minLowercase > 0) {\r\n for (let i = 0; i < o.minLowercase; i++) {\r\n positions.push('l');\r\n }\r\n }\r\n if (o.uppercase && o.minUppercase > 0) {\r\n for (let i = 0; i < o.minUppercase; i++) {\r\n positions.push('u');\r\n }\r\n }\r\n if (o.number && o.minNumber > 0) {\r\n for (let i = 0; i < o.minNumber; i++) {\r\n positions.push('n');\r\n }\r\n }\r\n if (o.special && o.minSpecial > 0) {\r\n for (let i = 0; i < o.minSpecial; i++) {\r\n positions.push('s');\r\n }\r\n }\r\n while (positions.length < o.length) {\r\n positions.push('a');\r\n }\r\n\r\n // shuffle\r\n await this.shuffleArray(positions);\r\n\r\n // build out the char sets\r\n let allCharSet = '';\r\n\r\n let lowercaseCharSet = 'abcdefghijkmnopqrstuvwxyz';\r\n if (o.ambiguous) {\r\n lowercaseCharSet += 'l';\r\n }\r\n if (o.lowercase) {\r\n allCharSet += lowercaseCharSet;\r\n }\r\n\r\n let uppercaseCharSet = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';\r\n if (o.ambiguous) {\r\n uppercaseCharSet += 'O';\r\n }\r\n if (o.uppercase) {\r\n allCharSet += uppercaseCharSet;\r\n }\r\n\r\n let numberCharSet = '23456789';\r\n if (o.ambiguous) {\r\n numberCharSet += '01';\r\n }\r\n if (o.number) {\r\n allCharSet += numberCharSet;\r\n }\r\n\r\n const specialCharSet = '!@#$%^&*';\r\n if (o.special) {\r\n allCharSet += specialCharSet;\r\n }\r\n\r\n let password = '';\r\n for (let i = 0; i < o.length; i++) {\r\n let positionChars: string;\r\n switch (positions[i]) {\r\n case 'l':\r\n positionChars = lowercaseCharSet;\r\n break;\r\n case 'u':\r\n positionChars = uppercaseCharSet;\r\n break;\r\n case 'n':\r\n positionChars = numberCharSet;\r\n break;\r\n case 's':\r\n positionChars = specialCharSet;\r\n break;\r\n case 'a':\r\n positionChars = allCharSet;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n const randomCharIndex = await this.cryptoService.randomNumber(0, positionChars.length - 1);\r\n password += positionChars.charAt(randomCharIndex);\r\n }\r\n\r\n return password;\r\n }\r\n\r\n async generatePassphrase(options: any): Promise {\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.numWords == null || o.numWords <= 2) {\r\n o.numWords = DefaultOptions.numWords;\r\n }\r\n if (o.wordSeparator == null || o.wordSeparator.length === 0 || o.wordSeparator.length > 1) {\r\n o.wordSeparator = ' ';\r\n }\r\n\r\n const listLength = EEFLongWordList.length - 1;\r\n const wordList = new Array(o.numWords);\r\n for (let i = 0; i < o.numWords; i++) {\r\n const wordIndex = await this.cryptoService.randomNumber(0, listLength);\r\n wordList[i] = EEFLongWordList[wordIndex];\r\n }\r\n return wordList.join(o.wordSeparator);\r\n }\r\n\r\n async getOptions() {\r\n if (this.optionsCache == null) {\r\n const options = await this.storageService.get(Keys.options);\r\n if (options == null) {\r\n this.optionsCache = DefaultOptions;\r\n } else {\r\n this.optionsCache = Object.assign({}, DefaultOptions, options);\r\n }\r\n }\r\n\r\n return this.optionsCache;\r\n }\r\n\r\n async saveOptions(options: any) {\r\n await this.storageService.save(Keys.options, options);\r\n this.optionsCache = options;\r\n }\r\n\r\n async getHistory(): Promise {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return new Array();\r\n }\r\n\r\n if (!this.history) {\r\n const encrypted = await this.storageService.get(Keys.history);\r\n this.history = await this.decryptHistory(encrypted);\r\n }\r\n\r\n return this.history || new Array();\r\n }\r\n\r\n async addHistory(password: string): Promise {\r\n // Cannot add new history if no key is available\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return;\r\n }\r\n\r\n const currentHistory = await this.getHistory();\r\n\r\n // Prevent duplicates\r\n if (this.matchesPrevious(password, currentHistory)) {\r\n return;\r\n }\r\n\r\n currentHistory.unshift(new GeneratedPasswordHistory(password, Date.now()));\r\n\r\n // Remove old items.\r\n if (currentHistory.length > MaxPasswordsInHistory) {\r\n currentHistory.pop();\r\n }\r\n\r\n const newHistory = await this.encryptHistory(currentHistory);\r\n return await this.storageService.save(Keys.history, newHistory);\r\n }\r\n\r\n async clear(): Promise {\r\n this.history = [];\r\n return await this.storageService.remove(Keys.history);\r\n }\r\n\r\n passwordStrength(password: string, userInputs: string[] = null): zxcvbn.ZXCVBNResult {\r\n if (password == null || password.length === 0) {\r\n return null;\r\n }\r\n let globalUserInputs = ['bitwarden', 'bit', 'warden'];\r\n if (userInputs != null && userInputs.length > 0) {\r\n globalUserInputs = globalUserInputs.concat(userInputs);\r\n }\r\n // Use a hash set to get rid of any duplicate user inputs\r\n const finalUserInputs = Array.from(new Set(globalUserInputs));\r\n const result = zxcvbn(password, finalUserInputs);\r\n return result;\r\n }\r\n\r\n private async encryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const encrypted = await this.cryptoService.encrypt(item.password);\r\n return new GeneratedPasswordHistory(encrypted.encryptedString, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private async decryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const decrypted = await this.cryptoService.decryptToUtf8(new CipherString(item.password));\r\n return new GeneratedPasswordHistory(decrypted, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private matchesPrevious(password: string, history: GeneratedPasswordHistory[]): boolean {\r\n if (history == null || history.length === 0) {\r\n return false;\r\n }\r\n\r\n return history[history.length - 1].password === password;\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/12646864/1090359\r\n private async shuffleArray(array: string[]) {\r\n for (let i = array.length - 1; i > 0; i--) {\r\n const j = await this.cryptoService.randomNumber(0, i);\r\n [array[i], array[j]] = [array[j], array[i]];\r\n }\r\n }\r\n}\r\n","import { SettingsService as SettingsServiceAbstraction } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nconst Keys = {\r\n settingsPrefix: 'settings_',\r\n equivalentDomains: 'equivalentDomains',\r\n};\r\n\r\nexport class SettingsService implements SettingsServiceAbstraction {\r\n private settingsCache: any;\r\n\r\n constructor(private userService: UserService, private storageService: StorageService) {\r\n }\r\n\r\n clearCache(): void {\r\n this.settingsCache = null;\r\n }\r\n\r\n getEquivalentDomains(): Promise {\r\n return this.getSettingsKey(Keys.equivalentDomains);\r\n }\r\n\r\n async setEquivalentDomains(equivalentDomains: string[][]): Promise {\r\n await this.setSettingsKey(Keys.equivalentDomains, equivalentDomains);\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.settingsPrefix + userId);\r\n this.settingsCache = null;\r\n }\r\n\r\n // Helpers\r\n\r\n private async getSettings(): Promise {\r\n if (this.settingsCache == null) {\r\n const userId = await this.userService.getUserId();\r\n this.settingsCache = this.storageService.get(Keys.settingsPrefix + userId);\r\n }\r\n return this.settingsCache;\r\n }\r\n\r\n private async getSettingsKey(key: string): Promise {\r\n const settings = await this.getSettings();\r\n if (settings != null && settings[key]) {\r\n return settings[key];\r\n }\r\n return null;\r\n }\r\n\r\n private async setSettingsKey(key: string, value: any): Promise {\r\n const userId = await this.userService.getUserId();\r\n let settings = await this.getSettings();\r\n if (!settings) {\r\n settings = {};\r\n }\r\n\r\n settings[key] = value;\r\n await this.storageService.save(Keys.settingsPrefix + userId, settings);\r\n this.settingsCache = settings;\r\n }\r\n}\r\n","import { StateService as StateServiceAbstraction } from '../abstractions/state.service';\r\n\r\nexport class StateService implements StateServiceAbstraction {\r\n private state: any = {};\r\n\r\n get(key: string): Promise {\r\n if (this.state.hasOwnProperty(key)) {\r\n return Promise.resolve(this.state[key]);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n this.state[key] = obj;\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n delete this.state[key];\r\n return Promise.resolve();\r\n }\r\n\r\n purge(): Promise {\r\n this.state = {};\r\n return Promise.resolve();\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { FolderData } from '../models/data/folderData';\r\nimport { OrganizationData } from '../models/data/organizationData';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\n\r\nconst Keys = {\r\n lastSyncPrefix: 'lastSync_',\r\n};\r\n\r\nexport class SyncService implements SyncServiceAbstraction {\r\n syncInProgress: boolean = false;\r\n\r\n constructor(private userService: UserService, private apiService: ApiService,\r\n private settingsService: SettingsService, private folderService: FolderService,\r\n private cipherService: CipherService, private cryptoService: CryptoService,\r\n private collectionService: CollectionService, private storageService: StorageService,\r\n private messagingService: MessagingService, private logoutCallback: (expired: boolean) => Promise) {\r\n }\r\n\r\n async getLastSync(): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return null;\r\n }\r\n\r\n const lastSync = await this.storageService.get(Keys.lastSyncPrefix + userId);\r\n if (lastSync) {\r\n return new Date(lastSync);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n async setLastSync(date: Date): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.lastSyncPrefix + userId, date.toJSON());\r\n }\r\n\r\n async fullSync(forceSync: boolean): Promise {\r\n this.syncStarted();\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n if (!isAuthenticated) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const now = new Date();\r\n const needsSyncResult = await this.needsSyncing(forceSync);\r\n const needsSync = needsSyncResult[0];\r\n const skipped = needsSyncResult[1];\r\n\r\n if (skipped) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n if (!needsSync) {\r\n await this.setLastSync(now);\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n try {\r\n const response = await this.apiService.getSync();\r\n\r\n await this.syncProfile(response.profile);\r\n await this.syncFolders(userId, response.folders);\r\n await this.syncCollections(response.collections);\r\n await this.syncCiphers(userId, response.ciphers);\r\n await this.syncSettings(userId, response.domains);\r\n\r\n await this.setLastSync(now);\r\n return this.syncCompleted(true);\r\n } catch (e) {\r\n return this.syncCompleted(false);\r\n }\r\n }\r\n\r\n async syncUpsertFolder(notification: SyncFolderNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n const localFolder = await this.folderService.get(notification.id);\r\n if ((!isEdit && localFolder == null) ||\r\n (isEdit && localFolder != null && localFolder.revisionDate < notification.revisionDate)) {\r\n const remoteFolder = await this.apiService.getFolder(notification.id);\r\n if (remoteFolder != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.folderService.upsert(new FolderData(remoteFolder, userId));\r\n this.messagingService.send('syncedUpsertedFolder', { folderId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch { }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteFolder(notification: SyncFolderNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.folderService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedFolder', { folderId: notification.id });\r\n this.syncCompleted(true);\r\n return true;\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncUpsertCipher(notification: SyncCipherNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n let shouldUpdate = true;\r\n const localCipher = await this.cipherService.get(notification.id);\r\n if (localCipher != null && localCipher.revisionDate >= notification.revisionDate) {\r\n shouldUpdate = false;\r\n }\r\n\r\n let checkCollections = false;\r\n if (shouldUpdate) {\r\n if (isEdit) {\r\n shouldUpdate = localCipher != null;\r\n checkCollections = true;\r\n } else {\r\n if (notification.collectionIds == null || notification.organizationId == null) {\r\n shouldUpdate = localCipher == null;\r\n } else {\r\n shouldUpdate = false;\r\n checkCollections = true;\r\n }\r\n }\r\n }\r\n\r\n if (!shouldUpdate && checkCollections && notification.organizationId != null &&\r\n notification.collectionIds != null && notification.collectionIds.length > 0) {\r\n const collections = await this.collectionService.getAll();\r\n if (collections != null) {\r\n for (let i = 0; i < collections.length; i++) {\r\n if (notification.collectionIds.indexOf(collections[i].id)) {\r\n shouldUpdate = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (shouldUpdate) {\r\n const remoteCipher = await this.apiService.getCipher(notification.id);\r\n if (remoteCipher != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.cipherService.upsert(new CipherData(remoteCipher, userId));\r\n this.messagingService.send('syncedUpsertedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch (e) {\r\n if (e != null && e.statusCode === 404 && isEdit) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteCipher(notification: SyncCipherNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n // Helpers\r\n\r\n private syncStarted() {\r\n this.syncInProgress = true;\r\n this.messagingService.send('syncStarted');\r\n }\r\n\r\n private syncCompleted(successfully: boolean): boolean {\r\n this.syncInProgress = false;\r\n this.messagingService.send('syncCompleted', { successfully: successfully });\r\n return successfully;\r\n }\r\n\r\n private async needsSyncing(forceSync: boolean) {\r\n if (forceSync) {\r\n return [true, false];\r\n }\r\n\r\n const lastSync = await this.getLastSync();\r\n if (lastSync == null || lastSync.getTime() === 0) {\r\n return [true, false];\r\n }\r\n\r\n try {\r\n const response = await this.apiService.getAccountRevisionDate();\r\n if (new Date(response) <= lastSync) {\r\n return [false, false];\r\n }\r\n return [true, false];\r\n } catch (e) {\r\n return [false, true];\r\n }\r\n }\r\n\r\n private async syncProfile(response: ProfileResponse) {\r\n const stamp = await this.userService.getSecurityStamp();\r\n if (stamp != null && stamp !== response.securityStamp) {\r\n if (this.logoutCallback != null) {\r\n await this.logoutCallback(true);\r\n }\r\n\r\n throw new Error('Stamp has changed');\r\n }\r\n\r\n await this.cryptoService.setEncKey(response.key);\r\n await this.cryptoService.setEncPrivateKey(response.privateKey);\r\n await this.cryptoService.setOrgKeys(response.organizations);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n\r\n const organizations: { [id: string]: OrganizationData; } = {};\r\n response.organizations.forEach((o) => {\r\n organizations[o.id] = new OrganizationData(o);\r\n });\r\n return await this.userService.replaceOrganizations(organizations);\r\n }\r\n\r\n private async syncFolders(userId: string, response: FolderResponse[]) {\r\n const folders: { [id: string]: FolderData; } = {};\r\n response.forEach((f) => {\r\n folders[f.id] = new FolderData(f, userId);\r\n });\r\n return await this.folderService.replace(folders);\r\n }\r\n\r\n private async syncCollections(response: CollectionDetailsResponse[]) {\r\n const collections: { [id: string]: CollectionData; } = {};\r\n response.forEach((c) => {\r\n collections[c.id] = new CollectionData(c);\r\n });\r\n return await this.collectionService.replace(collections);\r\n }\r\n\r\n private async syncCiphers(userId: string, response: CipherResponse[]) {\r\n const ciphers: { [id: string]: CipherData; } = {};\r\n response.forEach((c) => {\r\n ciphers[c.id] = new CipherData(c, userId);\r\n });\r\n return await this.cipherService.replace(ciphers);\r\n }\r\n\r\n private async syncSettings(userId: string, response: DomainsResponse) {\r\n let eqDomains: string[][] = [];\r\n if (response != null && response.equivalentDomains != null) {\r\n eqDomains = eqDomains.concat(response.equivalentDomains);\r\n }\r\n\r\n if (response != null && response.globalEquivalentDomains != null) {\r\n response.globalEquivalentDomains.forEach((global) => {\r\n if (global.domains.length > 0) {\r\n eqDomains.push(global.domains);\r\n }\r\n });\r\n }\r\n\r\n return this.settingsService.setEquivalentDomains(eqDomains);\r\n }\r\n}\r\n","import { ConstantsService } from './constants.service';\n\nimport { StorageService } from '../abstractions/storage.service';\nimport { TokenService as TokenServiceAbstraction } from '../abstractions/token.service';\n\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n accessToken: 'accessToken',\n refreshToken: 'refreshToken',\n twoFactorTokenPrefix: 'twoFactorToken_',\n};\n\nexport class TokenService implements TokenServiceAbstraction {\n token: string;\n decodedToken: any;\n refreshToken: string;\n\n constructor(private storageService: StorageService) {\n }\n\n setTokens(accessToken: string, refreshToken: string): Promise {\n return Promise.all([\n this.setToken(accessToken),\n this.setRefreshToken(refreshToken),\n ]);\n }\n\n setToken(token: string): Promise {\n this.token = token;\n this.decodedToken = null;\n return this.storageService.save(Keys.accessToken, token);\n }\n\n async getToken(): Promise {\n if (this.token != null) {\n return this.token;\n }\n\n this.token = await this.storageService.get(Keys.accessToken);\n return this.token;\n }\n\n setRefreshToken(refreshToken: string): Promise {\n this.refreshToken = refreshToken;\n return this.storageService.save(Keys.refreshToken, refreshToken);\n }\n\n async getRefreshToken(): Promise {\n if (this.refreshToken != null) {\n return this.refreshToken;\n }\n\n this.refreshToken = await this.storageService.get(Keys.refreshToken);\n return this.refreshToken;\n }\n\n setTwoFactorToken(token: string, email: string): Promise {\n return this.storageService.save(Keys.twoFactorTokenPrefix + email, token);\n }\n\n getTwoFactorToken(email: string): Promise {\n return this.storageService.get(Keys.twoFactorTokenPrefix + email);\n }\n\n clearTwoFactorToken(email: string): Promise {\n return this.storageService.remove(Keys.twoFactorTokenPrefix + email);\n }\n\n clearToken(): Promise {\n this.token = null;\n this.decodedToken = null;\n this.refreshToken = null;\n\n return Promise.all([\n this.storageService.remove(Keys.accessToken),\n this.storageService.remove(Keys.refreshToken),\n ]);\n }\n\n // jwthelper methods\n // ref https://github.com/auth0/angular-jwt/blob/master/src/angularJwt/services/jwt.js\n\n decodeToken(): any {\n if (this.decodedToken) {\n return this.decodedToken;\n }\n\n if (this.token == null) {\n throw new Error('Token not found.');\n }\n\n const parts = this.token.split('.');\n if (parts.length !== 3) {\n throw new Error('JWT must have 3 parts');\n }\n\n const decoded = Utils.fromUrlB64ToUtf8(parts[1]);\n if (decoded == null) {\n throw new Error('Cannot decode the token');\n }\n\n this.decodedToken = JSON.parse(decoded);\n return this.decodedToken;\n }\n\n getTokenExpirationDate(): Date {\n const decoded = this.decodeToken();\n if (typeof decoded.exp === 'undefined') {\n return null;\n }\n\n const d = new Date(0); // The 0 here is the key, which sets the date to the epoch\n d.setUTCSeconds(decoded.exp);\n return d;\n }\n\n tokenSecondsRemaining(offsetSeconds: number = 0): number {\n const d = this.getTokenExpirationDate();\n if (d == null) {\n return 0;\n }\n\n const msRemaining = d.valueOf() - (new Date().valueOf() + (offsetSeconds * 1000));\n return Math.round(msRemaining / 1000);\n }\n\n tokenNeedsRefresh(minutes: number = 5): boolean {\n const sRemaining = this.tokenSecondsRemaining();\n return sRemaining < (60 * minutes);\n }\n\n getUserId(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.sub === 'undefined') {\n throw new Error('No user id found');\n }\n\n return decoded.sub as string;\n }\n\n getEmail(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.email === 'undefined') {\n throw new Error('No email found');\n }\n\n return decoded.email as string;\n }\n\n getEmailVerified(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.email_verified === 'undefined') {\n throw new Error('No email verification found');\n }\n\n return decoded.email_verified as boolean;\n }\n\n getName(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.name === 'undefined') {\n return null;\n }\n\n return decoded.name as string;\n }\n\n getPremium(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.premium === 'undefined') {\n return false;\n }\n\n return decoded.premium as boolean;\n }\n\n getIssuer(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.iss === 'undefined') {\n throw new Error('No issuer found');\n }\n\n return decoded.iss as string;\n }\n}\n","import { ConstantsService } from './constants.service';\n\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { TotpService as TotpServiceAbstraction } from '../abstractions/totp.service';\n\nimport { Utils } from '../misc/utils';\n\nconst B32Chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';\nconst SteamChars = '23456789BCDFGHJKMNPQRTVWXY';\n\nexport class TotpService implements TotpServiceAbstraction {\n constructor(private storageService: StorageService, private cryptoFunctionService: CryptoFunctionService) { }\n\n async getCode(key: string): Promise {\n if (key == null) {\n return null;\n }\n let period = 30;\n let alg: 'sha1' | 'sha256' | 'sha512' = 'sha1';\n let digits = 6;\n let keyB32 = key;\n const isOtpAuth = key.toLowerCase().indexOf('otpauth://') === 0;\n const isSteamAuth = !isOtpAuth && key.toLowerCase().indexOf('steam://') === 0;\n if (isOtpAuth) {\n const params = Utils.getQueryParams(key);\n if (params.has('digits') && params.get('digits') != null) {\n try {\n const digitParams = parseInt(params.get('digits').trim(), null);\n if (digitParams > 10) {\n digits = 10;\n } else if (digitParams > 0) {\n digits = digitParams;\n }\n } catch { }\n }\n if (params.has('period') && params.get('period') != null) {\n try {\n const periodParam = parseInt(params.get('period').trim(), null);\n if (periodParam > 0) {\n period = periodParam;\n }\n } catch { }\n }\n if (params.has('secret') && params.get('secret') != null) {\n keyB32 = params.get('secret');\n }\n if (params.has('algorithm') && params.get('algorithm') != null) {\n const algParam = params.get('algorithm').toLowerCase();\n if (algParam === 'sha1' || algParam === 'sha256' || algParam === 'sha512') {\n alg = algParam;\n }\n }\n } else if (isSteamAuth) {\n keyB32 = key.substr('steam://'.length);\n digits = 5;\n }\n\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const timeHex = this.leftPad(this.decToHex(Math.floor(epoch / period)), 16, '0');\n const timeBytes = Utils.fromHexToArray(timeHex);\n const keyBytes = this.b32ToBytes(keyB32);\n\n if (!keyBytes.length || !timeBytes.length) {\n return null;\n }\n\n const hash = await this.sign(keyBytes, timeBytes, alg);\n if (hash.length === 0) {\n return null;\n }\n\n /* tslint:disable */\n const offset = (hash[hash.length - 1] & 0xf);\n const binary = ((hash[offset] & 0x7f) << 24) | ((hash[offset + 1] & 0xff) << 16) |\n ((hash[offset + 2] & 0xff) << 8) | (hash[offset + 3] & 0xff);\n /* tslint:enable */\n\n let otp = '';\n if (isSteamAuth) {\n // tslint:disable-next-line\n let fullCode = binary & 0x7fffffff;\n for (let i = 0; i < digits; i++) {\n otp += SteamChars[fullCode % SteamChars.length];\n fullCode = Math.trunc(fullCode / SteamChars.length);\n }\n } else {\n otp = (binary % Math.pow(10, digits)).toString();\n otp = this.leftPad(otp, digits, '0');\n }\n\n return otp;\n }\n\n getTimeInterval(key: string): number {\n let period = 30;\n if (key != null && key.toLowerCase().indexOf('otpauth://') === 0) {\n const params = Utils.getQueryParams(key);\n if (params.has('period') && params.get('period') != null) {\n try {\n period = parseInt(params.get('period').trim(), null);\n } catch { }\n }\n }\n return period;\n }\n\n async isAutoCopyEnabled(): Promise {\n return !(await this.storageService.get(ConstantsService.disableAutoTotpCopyKey));\n }\n\n // Helpers\n\n private leftPad(s: string, l: number, p: string): string {\n if (l + 1 >= s.length) {\n s = Array(l + 1 - s.length).join(p) + s;\n }\n return s;\n }\n\n private decToHex(d: number): string {\n return (d < 15.5 ? '0' : '') + Math.round(d).toString(16);\n }\n\n private b32ToHex(s: string): string {\n s = s.toUpperCase();\n let cleanedInput = '';\n\n for (let i = 0; i < s.length; i++) {\n if (B32Chars.indexOf(s[i]) < 0) {\n continue;\n }\n\n cleanedInput += s[i];\n }\n s = cleanedInput;\n\n let bits = '';\n let hex = '';\n for (let i = 0; i < s.length; i++) {\n const byteIndex = B32Chars.indexOf(s.charAt(i));\n if (byteIndex < 0) {\n continue;\n }\n bits += this.leftPad(byteIndex.toString(2), 5, '0');\n }\n for (let i = 0; i + 4 <= bits.length; i += 4) {\n const chunk = bits.substr(i, 4);\n hex = hex + parseInt(chunk, 2).toString(16);\n }\n return hex;\n }\n\n private b32ToBytes(s: string): Uint8Array {\n return Utils.fromHexToArray(this.b32ToHex(s));\n }\n\n private async sign(keyBytes: Uint8Array, timeBytes: Uint8Array, alg: 'sha1' | 'sha256' | 'sha512') {\n const signature = await this.cryptoFunctionService.hmac(timeBytes.buffer, keyBytes.buffer, alg);\n return new Uint8Array(signature);\n }\n}\n","import { StorageService } from '../abstractions/storage.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService as UserServiceAbstraction } from '../abstractions/user.service';\n\nimport { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nconst Keys = {\n userId: 'userId',\n userEmail: 'userEmail',\n stamp: 'securityStamp',\n kdf: 'kdf',\n kdfIterations: 'kdfIterations',\n organizationsPrefix: 'organizations_',\n};\n\nexport class UserService implements UserServiceAbstraction {\n private userId: string;\n private email: string;\n private stamp: string;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private tokenService: TokenService, private storageService: StorageService) { }\n\n setInformation(userId: string, email: string, kdf: KdfType, kdfIterations: number): Promise {\n this.email = email;\n this.userId = userId;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n\n return Promise.all([\n this.storageService.save(Keys.userEmail, email),\n this.storageService.save(Keys.userId, userId),\n this.storageService.save(Keys.kdf, kdf),\n this.storageService.save(Keys.kdfIterations, kdfIterations),\n ]);\n }\n\n setSecurityStamp(stamp: string): Promise {\n this.stamp = stamp;\n return this.storageService.save(Keys.stamp, stamp);\n }\n\n async getUserId(): Promise {\n if (this.userId != null) {\n return this.userId;\n }\n\n this.userId = await this.storageService.get(Keys.userId);\n return this.userId;\n }\n\n async getEmail(): Promise {\n if (this.email != null) {\n return this.email;\n }\n\n this.email = await this.storageService.get(Keys.userEmail);\n return this.email;\n }\n\n async getSecurityStamp(): Promise {\n if (this.stamp != null) {\n return this.stamp;\n }\n\n this.stamp = await this.storageService.get(Keys.stamp);\n return this.stamp;\n }\n\n async getKdf(): Promise {\n if (this.kdf != null) {\n return this.kdf;\n }\n\n this.kdf = await this.storageService.get(Keys.kdf);\n return this.kdf;\n }\n\n async getKdfIterations(): Promise {\n if (this.kdfIterations != null) {\n return this.kdfIterations;\n }\n\n this.kdfIterations = await this.storageService.get(Keys.kdfIterations);\n return this.kdfIterations;\n }\n\n async clear(): Promise {\n const userId = await this.getUserId();\n\n await Promise.all([\n this.storageService.remove(Keys.userId),\n this.storageService.remove(Keys.userEmail),\n this.storageService.remove(Keys.stamp),\n this.storageService.remove(Keys.kdf),\n this.storageService.remove(Keys.kdfIterations),\n this.clearOrganizations(userId),\n ]);\n\n this.userId = this.email = this.stamp = null;\n this.kdf = null;\n this.kdfIterations = null;\n }\n\n async isAuthenticated(): Promise {\n const token = await this.tokenService.getToken();\n if (token == null) {\n return false;\n }\n\n const userId = await this.getUserId();\n return userId != null;\n }\n\n async canAccessPremium(): Promise {\n const tokenPremium = await this.tokenService.getPremium();\n if (tokenPremium) {\n return true;\n }\n\n const orgs = await this.getAllOrganizations();\n for (let i = 0; i < orgs.length; i++) {\n if (orgs[i].usersGetPremium && orgs[i].enabled) {\n return true;\n }\n }\n return false;\n }\n\n async getOrganization(id: string): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n if (organizations == null || !organizations.hasOwnProperty(id)) {\n return null;\n }\n\n return new Organization(organizations[id]);\n }\n\n async getAllOrganizations(): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n const response: Organization[] = [];\n for (const id in organizations) {\n if (organizations.hasOwnProperty(id)) {\n response.push(new Organization(organizations[id]));\n }\n }\n return response;\n }\n\n async replaceOrganizations(organizations: { [id: string]: OrganizationData; }): Promise {\n const userId = await this.getUserId();\n await this.storageService.save(Keys.organizationsPrefix + userId, organizations);\n }\n\n async clearOrganizations(userId: string): Promise {\n await this.storageService.remove(Keys.organizationsPrefix + userId);\n }\n}\n","import { Cipher } from './cipher';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nexport class CipherWithIds extends Cipher {\r\n id: string;\r\n collectionIds: string[];\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.id = o.id;\r\n super.build(o);\r\n this.collectionIds = o.collectionIds;\r\n }\r\n}\r\n","import { Collection } from './collection';\r\n\r\nimport { CollectionView } from '../view/collectionView';\r\n\r\nexport class CollectionWithId extends Collection {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","import { Folder } from './folder';\r\n\r\nimport { FolderView } from '../view/folderView';\r\n\r\nexport class FolderWithId extends Folder {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","export enum NotificationType {\n SyncCipherUpdate = 0,\n SyncCipherCreate = 1,\n SyncLoginDelete = 2,\n SyncFolderDelete = 3,\n SyncCiphers = 4,\n\n SyncVault = 5,\n SyncOrgKeys = 6,\n SyncFolderCreate = 7,\n SyncFolderUpdate = 8,\n SyncCipherDelete = 9,\n SyncSettings = 10,\n\n LogOut = 11,\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { LockService } from '../../abstractions/lock.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { UserService } from '../../abstractions/user.service';\n\n@Injectable()\nexport class AuthGuardService implements CanActivate {\n constructor(private lockService: LockService, 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 locked = await this.lockService.isLocked();\n if (locked) {\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';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Injectable()\nexport class UnauthGuardService implements CanActivate {\n constructor(private lockService: LockService, private userService: UserService,\n private router: Router) { }\n\n async canActivate() {\n const isAuthed = await this.userService.isAuthenticated();\n if (isAuthed) {\n const locked = await this.lockService.isLocked();\n if (locked) {\n this.router.navigate(['lock']);\n } else {\n this.router.navigate(['vault']);\n }\n return false;\n }\n\n return true;\n }\n}\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport 'bootstrap';\nimport 'jquery';\nimport 'popper.js';\n\n// tslint:disable-next-line\nrequire('../scss/styles.scss');\n\nimport { AppModule } from './app.module';\n\nif (process.env.ENV === 'production') {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: true });\n","import 'core-js';\n\nimport { ToasterModule } from 'angular2-toaster';\nimport { Angulartics2Module } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport { AppRoutingModule } from './app-routing.module';\n\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { ServicesModule } from './services/services.module';\n\nimport { AppComponent } from './app.component';\nimport { ModalComponent } from './modal.component';\n\nimport { AvatarComponent } from './components/avatar.component';\nimport { CalloutComponent } from './components/callout.component';\nimport { PasswordStrengthComponent } from './components/password-strength.component';\n\nimport { FooterComponent } from './layouts/footer.component';\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { NavbarComponent } from './layouts/navbar.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport {\n CollectionAddEditComponent as OrgCollectionAddEditComponent,\n} from './organizations/manage/collection-add-edit.component';\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EntityEventsComponent as OrgEntityEventsComponent } from './organizations/manage/entity-events.component';\nimport { EntityUsersComponent as OrgEntityUsersComponent } from './organizations/manage/entity-users.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupAddEditComponent as OrgGroupAddEditComponent } from './organizations/manage/group-add-edit.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\nimport { UserAddEditComponent as OrgUserAddEditComponent } from './organizations/manage/user-add-edit.component';\nimport { UserConfirmComponent as OrgUserConfirmComponent } from './organizations/manage/user-confirm.component';\nimport { UserGroupsComponent as OrgUserGroupsComponent } from './organizations/manage/user-groups.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { AdjustSeatsComponent } from './organizations/settings/adjust-seats.component';\nimport { DeleteOrganizationComponent } from './organizations/settings/delete-organization.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { AddEditComponent as OrgAddEditComponent } from './organizations/vault/add-edit.component';\nimport { AttachmentsComponent as OrgAttachmentsComponent } from './organizations/vault/attachments.component';\nimport { CiphersComponent as OrgCiphersComponent } from './organizations/vault/ciphers.component';\nimport { CollectionsComponent as OrgCollectionsComponent } from './organizations/vault/collections.component';\nimport { GroupingsComponent as OrgGroupingsComponent } from './organizations/vault/groupings.component';\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { AdjustPaymentComponent } from './settings/adjust-payment.component';\nimport { AdjustStorageComponent } from './settings/adjust-storage.component';\nimport { ChangeEmailComponent } from './settings/change-email.component';\nimport { ChangeKdfComponent } from './settings/change-kdf.component';\nimport { ChangePasswordComponent } from './settings/change-password.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DeauthorizeSessionsComponent } from './settings/deauthorize-sessions.component';\nimport { DeleteAccountComponent } from './settings/delete-account.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PaymentComponent } from './settings/payment.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { ProfileComponent } from './settings/profile.component';\nimport { PurgeVaultComponent } from './settings/purge-vault.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorAuthenticatorComponent } from './settings/two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './settings/two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './settings/two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './settings/two-factor-recovery.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { TwoFactorU2fComponent } from './settings/two-factor-u2f.component';\nimport { TwoFactorVerifyComponent } from './settings/two-factor-verify.component';\nimport { TwoFactorYubiKeyComponent } from './settings/two-factor-yubikey.component';\nimport { UpdateKeyComponent } from './settings/update-key.component';\nimport { UpdateLicenseComponent } from './settings/update-license.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\nimport { VerifyEmailComponent } from './settings/verify-email.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { AddEditComponent } from './vault/add-edit.component';\nimport { AttachmentsComponent } from './vault/attachments.component';\nimport { BulkDeleteComponent } from './vault/bulk-delete.component';\nimport { BulkMoveComponent } from './vault/bulk-move.component';\nimport { BulkShareComponent } from './vault/bulk-share.component';\nimport { CiphersComponent } from './vault/ciphers.component';\nimport { CollectionsComponent } from './vault/collections.component';\nimport { FolderAddEditComponent } from './vault/folder-add-edit.component';\nimport { GroupingsComponent } from './vault/groupings.component';\nimport { ShareComponent } from './vault/share.component';\nimport { VaultComponent } from './vault/vault.component';\n\nimport { IconComponent } from 'jslib/angular/components/icon.component';\n\nimport { ApiActionDirective } from 'jslib/angular/directives/api-action.directive';\nimport { AutofocusDirective } from 'jslib/angular/directives/autofocus.directive';\nimport { BlurClickDirective } from 'jslib/angular/directives/blur-click.directive';\nimport { BoxRowDirective } from 'jslib/angular/directives/box-row.directive';\nimport { FallbackSrcDirective } from 'jslib/angular/directives/fallback-src.directive';\nimport { FlexCopyDirective } from 'jslib/angular/directives/flex-copy.directive';\nimport { InputVerbatimDirective } from 'jslib/angular/directives/input-verbatim.directive';\nimport { StopClickDirective } from 'jslib/angular/directives/stop-click.directive';\nimport { StopPropDirective } from 'jslib/angular/directives/stop-prop.directive';\nimport { TrueFalseValueDirective } from 'jslib/angular/directives/true-false-value.directive';\n\nimport { ColorPasswordPipe } from 'jslib/angular/pipes/color-password.pipe';\nimport { I18nPipe } from 'jslib/angular/pipes/i18n.pipe';\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\nimport { SearchPipe } from 'jslib/angular/pipes/search.pipe';\n\nimport { registerLocaleData } from '@angular/common';\nimport localeCa from '@angular/common/locales/ca';\nimport localeCs from '@angular/common/locales/cs';\nimport localeDa from '@angular/common/locales/da';\nimport localeDe from '@angular/common/locales/de';\nimport localeEnGb from '@angular/common/locales/en-GB';\nimport localeEs from '@angular/common/locales/es';\nimport localeEt from '@angular/common/locales/et';\nimport localeFr from '@angular/common/locales/fr';\nimport localeIt from '@angular/common/locales/it';\nimport localeJa from '@angular/common/locales/ja';\nimport localeNb from '@angular/common/locales/nb';\nimport localeNl from '@angular/common/locales/nl';\nimport localePl from '@angular/common/locales/pl';\nimport localePtBr from '@angular/common/locales/pt';\nimport localePtPt from '@angular/common/locales/pt-PT';\nimport localeRu from '@angular/common/locales/ru';\nimport localeSk from '@angular/common/locales/sk';\nimport localeSv from '@angular/common/locales/sv';\nimport localeUk from '@angular/common/locales/uk';\nimport localeZhCn from '@angular/common/locales/zh-Hans';\nimport localeZhTw from '@angular/common/locales/zh-Hant';\n\nregisterLocaleData(localeCa, 'ca');\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEnGb, 'en-GB');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\nregisterLocaleData(localeJa, 'ja');\nregisterLocaleData(localeNb, 'nb');\nregisterLocaleData(localeNl, 'nl');\nregisterLocaleData(localePl, 'pl');\nregisterLocaleData(localePtBr, 'pt-BR');\nregisterLocaleData(localePtPt, 'pt-PT');\nregisterLocaleData(localeRu, 'ru');\nregisterLocaleData(localeSk, 'sk');\nregisterLocaleData(localeSv, 'sv');\nregisterLocaleData(localeUk, 'uk');\nregisterLocaleData(localeZhCn, 'zh-CN');\nregisterLocaleData(localeZhTw, 'zh-TW');\n\n@NgModule({\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n AppRoutingModule,\n ServicesModule,\n Angulartics2Module.forRoot([Angulartics2GoogleAnalytics], {\n pageTracking: {\n clearQueryParams: true,\n },\n }),\n ToasterModule.forRoot(),\n ],\n declarations: [\n AcceptOrganizationComponent,\n AccountComponent,\n AddEditComponent,\n AdjustPaymentComponent,\n AdjustSeatsComponent,\n AdjustStorageComponent,\n ApiActionDirective,\n AppComponent,\n AttachmentsComponent,\n AutofocusDirective,\n AvatarComponent,\n BlurClickDirective,\n BoxRowDirective,\n BreachReportComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CalloutComponent,\n ChangeEmailComponent,\n ChangeKdfComponent,\n ChangePasswordComponent,\n CiphersComponent,\n CollectionsComponent,\n ColorPasswordPipe,\n CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n ExposedPasswordsReportComponent,\n FallbackSrcDirective,\n FlexCopyDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n I18nPipe,\n IconComponent,\n ImportComponent,\n InactiveTwoFactorReportComponent,\n InputVerbatimDirective,\n LockComponent,\n LoginComponent,\n ModalComponent,\n NavbarComponent,\n OptionsComponent,\n OrgAccountComponent,\n OrgAddEditComponent,\n OrganizationBillingComponent,\n OrgAttachmentsComponent,\n OrgCiphersComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgEventsComponent,\n OrgExportComponent,\n OrgExposedPasswordsReportComponent,\n OrgImportComponent,\n OrgInactiveTwoFactorReportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgReusedPasswordsReportComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgUnsecuredWebsitesReportComponent,\n OrgVaultComponent,\n OrgWeakPasswordsReportComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PasswordStrengthComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\n ReusedPasswordsReportComponent,\n SearchCiphersPipe,\n SearchPipe,\n SettingsComponent,\n ShareComponent,\n StopClickDirective,\n StopPropDirective,\n ToolsComponent,\n TrueFalseValueDirective,\n TwoFactorAuthenticatorComponent,\n TwoFactorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorSetupComponent,\n TwoFactorU2fComponent,\n TwoFactorVerifyComponent,\n TwoFactorYubiKeyComponent,\n UnsecuredWebsitesReportComponent,\n UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n WeakPasswordsReportComponent,\n ],\n entryComponents: [\n AddEditComponent,\n AttachmentsComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CollectionsComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n FolderAddEditComponent,\n ModalComponent,\n OrgAddEditComponent,\n OrgAttachmentsComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgGroupAddEditComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n PasswordGeneratorHistoryComponent,\n PurgeVaultComponent,\n ShareComponent,\n TwoFactorAuthenticatorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorU2fComponent,\n TwoFactorYubiKeyComponent,\n UpdateKeyComponent,\n ],\n providers: [],\n bootstrap: [AppComponent],\n})\nexport class AppModule { }\n","import { BroadcasterService as BroadcasterServiceAbstraction } from '../abstractions/broadcaster.service';\r\n\r\nexport class BroadcasterService implements BroadcasterServiceAbstraction {\r\n subscribers: Map any> = new Map any>();\r\n\r\n send(message: any, id?: string) {\r\n if (id != null) {\r\n if (this.subscribers.has(id)) {\r\n this.subscribers.get(id)(message);\r\n }\r\n return;\r\n }\r\n\r\n this.subscribers.forEach((value) => {\r\n value(message);\r\n });\r\n }\r\n\r\n subscribe(id: string, messageCallback: (message: any) => any) {\r\n if (this.subscribers.has(id)) {\r\n return;\r\n }\r\n\r\n this.subscribers.set(id, messageCallback);\r\n }\r\n\r\n unsubscribe(id: string) {\r\n if (this.subscribers.has(id)) {\r\n this.subscribers.delete(id);\r\n }\r\n }\r\n}\r\n","\n
\n © {{year}}, 8bit Solutions LLC\n
{{'versionNumber' | i18n : version}}\n
\n","
\n
\n
\n \n

{{'loginOrCreateNewAccount' | i18n}}

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

{{title}}

\n
\n
\n \n

{{'enterVerificationCodeApp' | i18n}}

\n

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

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

{{'insertYubiKey' | i18n}}

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

\n \n

\n \n

{{'insertU2f' | i18n}}

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

{{'noTwoStepProviders' | i18n}}

\n

{{'noTwoStepProviders2' | i18n}}

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

{{'createAccount' | i18n}}

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

{{'passwordHint' | i18n}}

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

\n \n

\n

{{'yourVaultIsLocked' | i18n}}

\n
\n
\n
\n \n
\n \n \n
\n {{'loggedInAsEmail' | i18n : email}}\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n","import { OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from '../../abstractions/crypto.service';\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { LockService } from '../../abstractions/lock.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\nimport { StorageService } from '../../abstractions/storage.service';\nimport { UserService } from '../../abstractions/user.service';\n\nimport { ConstantsService } from '../../services/constants.service';\n\nimport { CipherString } from '../../models/domain/cipherString';\nimport { SymmetricCryptoKey } from '../../models/domain/symmetricCryptoKey';\n\nexport class LockComponent implements OnInit {\n masterPassword: string = '';\n pin: string = '';\n showPassword: boolean = false;\n email: string;\n pinLock: boolean = false;\n\n protected successRoute: string = 'vault';\n protected onSuccessfulSubmit: () => void;\n\n private invalidPinAttempts = 0;\n private pinSet: [boolean, boolean];\n\n constructor(protected router: Router, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected messagingService: MessagingService,\n protected userService: UserService, protected cryptoService: CryptoService,\n protected storageService: StorageService, protected lockService: LockService) { }\n\n async ngOnInit() {\n this.pinSet = await this.lockService.isPinLockSet();\n const hasKey = await this.cryptoService.hasKey();\n this.pinLock = (this.pinSet[0] && hasKey) || this.pinSet[1];\n this.email = await this.userService.getEmail();\n }\n\n async submit() {\n if (this.pinLock && (this.pin == null || this.pin === '')) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('pinRequired'));\n return;\n }\n if (!this.pinLock && (this.masterPassword == null || this.masterPassword === '')) {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n\n if (this.pinLock) {\n let failed = true;\n try {\n if (this.pinSet[0]) {\n const protectedPin = await this.storageService.get(ConstantsService.protectedPin);\n const decPin = await this.cryptoService.decryptToUtf8(new CipherString(protectedPin));\n this.lockService.pinLocked = false;\n failed = decPin !== this.pin;\n this.doContinue();\n } else {\n const pinProtectedKey = await this.storageService.get(ConstantsService.pinProtectedKey);\n const protectedKeyCs = new CipherString(pinProtectedKey);\n const pinKey = await this.cryptoService.makePinKey(this.pin, this.email, kdf, kdfIterations);\n const decKey = await this.cryptoService.decryptToBytes(protectedKeyCs, pinKey);\n failed = false;\n await this.setKeyAndContinue(new SymmetricCryptoKey(decKey));\n }\n } catch { }\n\n if (failed) {\n this.invalidPinAttempts++;\n if (this.invalidPinAttempts >= 5) {\n this.messagingService.send('logout');\n return;\n }\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidPin'));\n }\n } else {\n const key = await this.cryptoService.makeKey(this.masterPassword, this.email, kdf, kdfIterations);\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n const storedKeyHash = await this.cryptoService.getKeyHash();\n\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\n this.setKeyAndContinue(key);\n } else {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidMasterPassword'));\n }\n }\n }\n\n async logOut() {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('logOutConfirmation'),\n this.i18nService.t('logOut'), this.i18nService.t('logOut'), this.i18nService.t('cancel'));\n if (confirmed) {\n this.messagingService.send('logout');\n }\n }\n\n togglePassword() {\n this.platformUtilsService.eventTrack('Toggled Master Password on Unlock');\n this.showPassword = !this.showPassword;\n document.getElementById(this.pinLock ? 'pin' : 'masterPassword').focus();\n }\n\n private async setKeyAndContinue(key: SymmetricCryptoKey) {\n await this.cryptoService.setKey(key);\n this.doContinue();\n }\n\n private doContinue() {\n this.messagingService.send('unlocked');\n if (this.onSuccessfulSubmit != null) {\n this.onSuccessfulSubmit();\n } else if (this.router != null) {\n this.router.navigate([this.successRoute]);\n }\n }\n}\n","
\n
\n \"Bitwarden\"\n

\n \n

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

\n \n

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

{{'joinOrganization' | i18n}}

\n
\n
\n

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

\n

{{'joinOrganizationDesc' | i18n}}

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

{{'recoverAccountTwoStep' | i18n}}

\n
\n
\n

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

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

{{'deleteAccount' | i18n}}

\n
\n
\n

{{'deleteRecoverDesc' | i18n}}

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

{{'deleteAccount' | i18n}}

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

\n {{email}}\n

\n

{{'deleteRecoverConfirmDesc' | i18n}}

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

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

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

{{'updateEncryptionKeyShortDesc' | i18n}}

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

{{'updateBrowserDesc' | i18n}}

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

{{'premiumUpgradeUnlockFeatures' | i18n}}

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

{{'verifyEmailDesc' | i18n}}

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

{{'types' | i18n}}

\n \n

\n \n

\n \n \n

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

\n \n
\n \n

{{'collections' | i18n}}

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

{{'noItemsInList' | i18n}}

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

{{'myAccount' | i18n}}

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

{{'changeEmail' | i18n}}

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

{{'changeMasterPassword' | i18n}}

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

{{'encKeySettings' | i18n}}

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

{{'dangerZone' | i18n}}

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

{{'dangerZoneDesc' | i18n}}

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

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

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

{{'changeEmailDesc' | i18n : newEmail}}

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

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

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

{{'options' | i18n}}

\n
\n

{{'optionsDesc' | i18n}}

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

{{'domainRules' | i18n}}

\n
\n

{{'domainRulesDesc' | i18n}}

\n
\n

{{'customEqDomains' | i18n}}

\n

\n \n

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

{{'globalEqDomains' | i18n}}

\n

\n \n

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

{{'twoStepLogin' | i18n}}

\n
\n

{{'twoStepLoginDesc' | i18n}}

\n

{{'twoStepLoginOrganizationDesc' | i18n}}

\n\n

{{'twoStepLoginRecoveryWarning' | i18n}}

\n \n
\n

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

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

{{'goPremium' | i18n}}

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

{{'premiumUpgradeUnlockFeatures' | i18n}}

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

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

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

{{'uploadLicenseFilePremium' | i18n}}

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

{{'addons' | i18n}}

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

{{'summary' | i18n}}

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

{{'paymentInformation' | i18n}}

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

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

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

{{'subscriptionPendingCanceled' | i18n}}

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

{{'updateLicense' | i18n}}

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

{{'storage' | i18n}}

\n

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

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

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n

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

\n \n \n \n

{{'invoices' | i18n}}

\n

{{'noInvoices' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{i.date | date:'mediumDate'}}\n \n \n \n {{'invoiceNumber' | i18n : i.number}}\n {{i.amount | currency:'$'}}\n \n \n {{'paid' | i18n}}\n \n \n \n {{'unpaid' | i18n}}\n \n
\n

{{'transactions' | i18n}}

\n

{{'noTransactions' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{t.createdDate | date:'mediumDate'}}\n {{'chargeNoun' | i18n}}\n {{'chargeRefund' | i18n}}\n \n \n {{t.details}}\n {{t.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","export class StorageRequest {\n storageGbAdjustment: number;\n}\n","export class PaymentRequest {\n paymentToken: string;\n}\n","
\n

{{'newOrganization' | i18n}}

\n
\n

{{'newOrganizationDesc' | i18n}}

\n\n

{{'uploadLicenseFileOrg' | i18n}}

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

{{'generalInformation' | i18n}}

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

{{'chooseYourPlan' | i18n}}

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

{{'users' | i18n}}

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

{{'addons' | i18n}}

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

{{'summary' | i18n}}

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

{{'paymentInformation' | i18n}}

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

{{'importData' | i18n}}

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

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

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

{{'passwordGenerator' | i18n}}

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

{{'dataBreachReport' | i18n}}

\r\n
\r\n

{{'breachDesc' | i18n}}

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

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

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

    {{a.title}}

    \r\n

    \r\n

    {{'compromisedData' | i18n}}:

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

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

\n
\n

{{'reusedPasswordsReportDesc' | i18n}}

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

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

\n
\n

{{'unsecuredWebsitesReportDesc' | i18n}}

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

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

\n
\n

{{'weakPasswordsReportDesc' | i18n}}

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

{{'exposedPasswordsReport' | i18n}}

\n
\n

{{'exposedPasswordsReportDesc' | i18n}}

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

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

\n
\n

{{'inactive2faReportDesc' | i18n}}

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

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

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

{{'collections' | i18n}}

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

{{'noCollectionsInList' | i18n}}

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

{{'eventLogs' | i18n}}

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

{{'noEventsInList' | i18n}}

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

{{'groups' | i18n}}

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

{{'noGroupsInList' | i18n}}

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

{{'people' | i18n}}

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

{{'noUsersInList' | i18n}}

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

{{'myOrganization' | i18n}}

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

{{'taxInformation' | i18n}}

\n
\n

{{'taxInformationDesc' | i18n}}

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

{{'dangerZone' | i18n}}

\n
\n
\n
\n

{{'dangerZoneDesc' | i18n}}

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

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

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

{{'subscriptionPendingCanceled' | i18n}}

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

{{'updateLicense' | i18n}}

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

{{'userSeats' | i18n}}

\n

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

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

{{'storage' | i18n}}

\n

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

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

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n \n \n

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

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

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

\n
\n \n \n \n

{{'invoices' | i18n}}

\n

{{'noInvoices' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{i.date | date:'mediumDate'}}\n \n \n \n {{'invoiceNumber' | i18n : i.number}}\n {{i.amount | currency:'$'}}\n \n \n {{'paid' | i18n}}\n \n \n \n {{'unpaid' | i18n}}\n \n
\n

{{'transactions' | i18n}}

\n

{{'noTransactions' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{t.createdDate | date:'mediumDate'}}\n {{'chargeNoun' | i18n}}\n {{'chargeRefund' | i18n}}\n \n \n {{t.details}}\n {{t.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","
\r\n
\r\n
\r\n
\r\n

{{title}}

\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
\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 {{totpSec}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{totpCodeFormatted}}\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 {{'newUri' | 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
\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
\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 \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
\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

{{'customFields' | 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
\r\n
\r\n
\r\n
\r\n \r\n {{'newCustomField' | i18n}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n 1\">\r\n

{{'ownership' | i18n}}

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

{{'collections' | i18n}}

\r\n
\r\n {{'noCollectionsInList' | 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 {{'dateUpdated' | i18n}}:\r\n {{cipher.revisionDate | date:'medium'}}\r\n
\r\n
\r\n {{'datePasswordUpdated' | i18n}}:\r\n {{cipher.passwordRevisionDisplayDate | date:'medium'}}\r\n
\r\n
\r\n {{'passwordHistory' | i18n}}:\r\n \r\n {{cipher.passwordHistory.length}}\r\n \r\n
\r\n
\r\n
\r\n {{ph.lastUsedDate | date:'short'}} -\r\n {{ph.password}}\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","
\n
\n
\n
\n

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

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

{{'newAttachment' | i18n}}

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

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

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

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

\n \n
\n
\n

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

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

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

\n \n
\n
\n

{{'shareManyDesc' | i18n}}

\n

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

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

{{'collections' | i18n}}

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

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

\n \n
\n
\n

{{'collectionsDesc' | i18n}}

\n
\n

{{'collections' | i18n}}

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

{{'deauthorizeSessions' | i18n}}

\n \n
\n
\n

{{'deauthorizeSessionsDesc' | i18n}}

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

{{'deleteAccount' | i18n}}

\n \n
\n
\n

{{'deleteAccountDesc' | i18n}}

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

{{'deleteOrganization' | i18n}}

\n \n
\n
\n

{{'deleteOrganizationDesc' | i18n}}

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

{{title}}

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

{{title}}

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

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

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

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

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

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

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

{{title}}

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

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

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

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

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

{{'inviteUserDesc' | i18n}}

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

{{'userType' | i18n}}

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

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

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

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

\n \n
\n
\n

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

\n

{{fingerprint}}

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

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

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

{{'groupAccessUserDesc' | i18n}}

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

{{'passwordHistory' | i18n}}

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

{{'purgeVault' | i18n}}

\n \n
\n
\n

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

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

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

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

{{'shareDesc' | i18n}}

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

{{'collections' | i18n}}

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

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

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

{{'twoStepAuthenticatorDesc' | i18n}}

\n

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

\n
\n \n \n

{{'twoStepLoginProviderEnabled' | i18n}}

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

{{'twoStepAuthenticatorNeedApp' | i18n}}

\n
\n \n

{{'twoStepAuthenticatorAppsRecommended' | i18n}}

\n

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

\n
\n

\n
\n {{key}}\n

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

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

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

{{'twoFactorDuoDesc' | i18n}}

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

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

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

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

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

{{'twoStepOptions' | i18n}}

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

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

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

{{'twoFactorRecoveryYourCode' | i18n}}:

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

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

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

{{'twoFactorU2fWarning' | i18n}}

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

{{'twoFactorU2fAdd' | i18n}}:

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

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

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

{{'twoFactorYubikeyWarning' | i18n}}

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

{{'twoFactorYubikeyAdd' | i18n}}:

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

{{'updateEncryptionKey' | i18n}}

\n \n
\n
\n

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

\n {{'updateEncryptionKeyWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","\r\n\r\n","import {\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, lockService, 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 BreachAccountResponse {\r\n addedDate: string;\r\n breachDate: string;\r\n dataClasses: string[];\r\n description: string;\r\n domain: string;\r\n isActive: boolean;\r\n isVerified: boolean;\r\n logoPath: string;\r\n modifiedDate: string;\r\n name: string;\r\n pwnCount: number;\r\n title: string;\r\n\r\n constructor(response: any) {\r\n this.addedDate = response.AddedDate;\r\n this.breachDate = response.BreachDate;\r\n this.dataClasses = response.DataClasses;\r\n this.description = response.Description;\r\n this.domain = response.Domain;\r\n this.isActive = response.IsActive;\r\n this.isVerified = response.IsVerified;\r\n this.logoPath = response.LogoPath;\r\n this.modifiedDate = response.ModifiedDate;\r\n this.name = response.Name;\r\n this.pwnCount = response.PwnCount;\r\n this.title = response.Title;\r\n }\r\n}\r\n","export class 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 == null) {\n return this.message;\n }\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 return this.message;\n }\n\n getAllMessages(): string[] {\n const messages: string[] = [];\n if (this.validationErrors == null) {\n return messages;\n }\n for (const key in this.validationErrors) {\n if (!this.validationErrors.hasOwnProperty(key)) {\n continue;\n }\n this.validationErrors[key].forEach((item: string) => {\n let prefix = '';\n if (key.indexOf('[') > -1 && key.indexOf(']') > -1) {\n const lastSep = key.lastIndexOf('.');\n prefix = key.substr(0, lastSep > -1 ? lastSep : key.length) + ': ';\n }\n messages.push(prefix + item);\n });\n }\n return messages;\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 {\n BillingChargeResponse,\n BillingInvoiceInfoResponse,\n BillingInvoiceResponse,\n BillingSourceResponse,\n BillingSubscriptionResponse,\n BillingTransactionResponse,\n} from './billingResponse';\nimport { OrganizationResponse } from './organizationResponse';\n\nexport class OrganizationBillingResponse extends OrganizationResponse {\n storageName: string;\n storageGb: number;\n paymentSource: BillingSourceResponse;\n subscription: BillingSubscriptionResponse;\n upcomingInvoice: BillingInvoiceInfoResponse;\n charges: BillingChargeResponse[] = [];\n invoices: BillingInvoiceResponse[] = [];\n transactions: BillingTransactionResponse[] = [];\n expiration: string;\n\n constructor(response: any) {\n super(response);\n this.storageName = response.StorageName;\n this.storageGb = response.StorageGb;\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\n this.subscription = response.Subscription == null ?\n null : new BillingSubscriptionResponse(response.Subscription);\n this.upcomingInvoice = response.UpcomingInvoice == null ?\n null : new BillingInvoiceInfoResponse(response.UpcomingInvoice);\n if (response.Charges != null) {\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\n }\n if (response.Transactions != null) {\n this.transactions = response.Transactions.map((t: any) => new BillingTransactionResponse(t));\n }\n if (response.Invoices != null) {\n this.invoices = response.Invoices.map((i: any) => new BillingInvoiceResponse(i));\n }\n this.expiration = response.Expiration;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\r\n\r\nexport class OrganizationUserResponse {\r\n id: string;\r\n userId: string;\r\n type: OrganizationUserType;\r\n status: OrganizationUserStatusType;\r\n accessAll: boolean;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.userId = response.UserId;\r\n this.type = response.Type;\r\n this.status = response.Status;\r\n this.accessAll = response.AccessAll;\r\n }\r\n}\r\n\r\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\r\n name: string;\r\n email: string;\r\n twoFactorEnabled: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n }\r\n}\r\n\r\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\r\n collections: SelectionReadOnlyResponse[] = [];\r\n\r\n constructor(response: any) {\r\n super(response);\r\n if (response.Collections != null) {\r\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\r\n }\r\n }\r\n}\r\n","import { KdfType } from '../../enums/kdfType';\n\nexport class PreloginResponse {\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(response: any) {\n this.kdf = response.Kdf;\n this.kdfIterations = response.KdfIterations;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class ProfileOrganizationResponse {\n id: string;\n name: string;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n key: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n this.selfHost = response.SelfHost;\n this.usersGetPremium = response.UsersGetPremium;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.key = response.Key;\n this.status = response.Status;\n this.type = response.Type;\n this.enabled = response.Enabled;\n }\n}\n","import { CipherResponse } from './cipherResponse';\nimport { CollectionDetailsResponse } from './collectionResponse';\nimport { DomainsResponse } from './domainsResponse';\nimport { FolderResponse } from './folderResponse';\nimport { ProfileResponse } from './profileResponse';\n\nexport class SyncResponse {\n profile?: ProfileResponse;\n folders: FolderResponse[] = [];\n collections: CollectionDetailsResponse[] = [];\n ciphers: CipherResponse[] = [];\n domains?: DomainsResponse;\n\n constructor(response: any) {\n if (response.Profile) {\n this.profile = new ProfileResponse(response.Profile);\n }\n\n if (response.Folders) {\n response.Folders.forEach((folder: any) => {\n this.folders.push(new FolderResponse(folder));\n });\n }\n\n if (response.Collections) {\n response.Collections.forEach((collection: any) => {\n this.collections.push(new CollectionDetailsResponse(collection));\n });\n }\n\n if (response.Ciphers) {\n response.Ciphers.forEach((cipher: any) => {\n this.ciphers.push(new CipherResponse(cipher));\n });\n }\n\n if (response.Domains) {\n this.domains = new DomainsResponse(response.Domains);\n }\n }\n}\n","export class TwoFactorAuthenticatorResponse {\n enabled: boolean;\n key: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key = response.Key;\n }\n}\n","export class TwoFactorDuoResponse {\n enabled: boolean;\n host: string;\n secretKey: string;\n integrationKey: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.host = response.Host;\n this.secretKey = response.SecretKey;\n this.integrationKey = response.IntegrationKey;\n }\n}\n","export class TwoFactorEmailResponse {\n enabled: boolean;\n email: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.email = response.Email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderResponse {\n enabled: boolean;\n type: TwoFactorProviderType;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.type = response.Type;\n }\n}\n","export class TwoFactorRecoverResponse {\n code: string;\n\n constructor(response: any) {\n this.code = response.Code;\n }\n}\n","export class TwoFactorU2fResponse {\n enabled: boolean;\n keys: KeyResponse[];\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.keys = response.Keys == null ? null : response.Keys.map((k: any) => new KeyResponse(k));\n }\n}\n\nexport class KeyResponse {\n name: string;\n id: number;\n compromised: boolean;\n\n constructor(response: any) {\n this.name = response.Name;\n this.id = response.Id;\n this.compromised = response.Compromised;\n }\n}\n\nexport class ChallengeResponse {\n userId: string;\n appId: string;\n challenge: string;\n version: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.appId = response.AppId;\n this.challenge = response.Challenge;\n this.version = response.Version;\n }\n}\n","export class TwoFactorYubiKeyResponse {\n enabled: boolean;\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key1 = response.Key1;\n this.key2 = response.Key2;\n this.key3 = response.Key3;\n this.key4 = response.Key4;\n this.key5 = response.Key5;\n this.nfc = response.Nfc;\n }\n}\n","export class UserKeyResponse {\n userId: string;\n publicKey: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.publicKey = response.PublicKey;\n }\n}\n","/**\n * Use as a Decorator on async functions, it will limit how many times the function can be\n * in-flight at a time.\n *\n * Calls beyond the limit will be queued, and run when one of the active calls finishes\n */\nexport function throttle(limit: number, throttleKey: (args: any[]) => string) {\n return (target: any, propertyKey: string | symbol,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise>) => {\n const originalMethod: () => Promise = descriptor.value;\n const allThrottles = new Map void>>>();\n\n const getThrottles = (obj: any) => {\n let throttles = allThrottles.get(obj);\n if (throttles != null) {\n return throttles;\n }\n throttles = new Map void>>();\n allThrottles.set(obj, throttles);\n return throttles;\n };\n\n return {\n value: function(...args: any[]) {\n const throttles = getThrottles(this);\n const argsThrottleKey = throttleKey(args);\n let queue = throttles.get(argsThrottleKey);\n if (queue == null) {\n queue = [];\n throttles.set(argsThrottleKey, queue);\n }\n\n return new Promise((resolve, reject) => {\n const exec = () => {\n originalMethod.apply(this, args).finally(() => {\n queue.splice(queue.indexOf(exec), 1);\n if (queue.length >= limit) {\n queue[limit - 1]();\n } else if (queue.length === 0) {\n throttles.delete(argsThrottleKey);\n if (throttles.size === 0) {\n allThrottles.delete(this);\n }\n }\n }).then(resolve, reject);\n };\n queue.push(exec);\n if (queue.length <= limit) {\n exec();\n }\n });\n },\n };\n };\n}\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', 'ca', 'cs', 'da', 'de', 'en-GB', 'es', 'et', 'fr', 'it', 'ja', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'uk', 'zh-CN', 'zh-TW',\n ];\n }\n}\n","import { StorageService } from 'jslib/abstractions/storage.service';\r\n\r\nexport class MemoryStorageService implements StorageService {\r\n private store = new Map();\r\n\r\n get(key: string): Promise {\r\n if (this.store.has(key)) {\r\n const obj = this.store.get(key);\r\n return Promise.resolve(obj as T);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n if (obj == null) {\r\n return this.remove(key);\r\n }\r\n this.store.set(key, obj);\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n this.store.delete(key);\r\n return Promise.resolve();\r\n }\r\n}\r\n","import * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\n\nexport class WebPlatformUtilsService implements PlatformUtilsService {\n identityClientId: string = 'web';\n\n private browserCache: DeviceType = null;\n\n constructor(private i18nService: I18nService, private messagingService: MessagingService) { }\n\n getDevice(): DeviceType {\n if (this.browserCache != null) {\n return this.browserCache;\n }\n\n if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) {\n this.browserCache = DeviceType.FirefoxBrowser;\n } else if (navigator.userAgent.indexOf(' OPR/') >= 0) {\n this.browserCache = DeviceType.OperaBrowser;\n } else if (navigator.userAgent.indexOf(' Edge/') !== -1) {\n this.browserCache = DeviceType.EdgeBrowser;\n } else if (navigator.userAgent.indexOf(' Vivaldi/') !== -1) {\n this.browserCache = DeviceType.VivaldiBrowser;\n } else if (navigator.userAgent.indexOf(' Safari/') !== -1 && navigator.userAgent.indexOf('Chrome') === -1) {\n this.browserCache = DeviceType.SafariBrowser;\n } else if ((window as any).chrome && navigator.userAgent.indexOf(' Chrome/') !== -1) {\n this.browserCache = DeviceType.ChromeBrowser;\n } else if (navigator.userAgent.indexOf(' Trident/') !== -1) {\n this.browserCache = DeviceType.IEBrowser;\n } else {\n this.browserCache = DeviceType.UnknownBrowser;\n }\n\n return this.browserCache;\n }\n\n getDeviceString(): string {\n const device = DeviceType[this.getDevice()].toLowerCase();\n return device.replace('browser', '');\n }\n\n isFirefox(): boolean {\n return this.getDevice() === DeviceType.FirefoxBrowser;\n }\n\n isChrome(): boolean {\n return this.getDevice() === DeviceType.ChromeBrowser;\n }\n\n isEdge(): boolean {\n return this.getDevice() === DeviceType.EdgeBrowser;\n }\n\n isOpera(): boolean {\n return this.getDevice() === DeviceType.OperaBrowser;\n }\n\n isVivaldi(): boolean {\n return this.getDevice() === DeviceType.VivaldiBrowser;\n }\n\n isSafari(): boolean {\n return this.getDevice() === DeviceType.SafariBrowser;\n }\n\n isIE(): boolean {\n return this.getDevice() === DeviceType.IEBrowser;\n }\n\n isMacAppStore(): boolean {\n return false;\n }\n\n analyticsId(): string {\n return 'UA-81915606-3';\n }\n\n isViewOpen(): boolean {\n return false;\n }\n\n lockTimeout(): number {\n return null;\n }\n\n launchUri(uri: string, options?: any): void {\n const a = document.createElement('a');\n a.href = uri;\n a.target = '_blank';\n a.rel = 'noreferrer noopener';\n a.classList.add('d-none');\n document.body.appendChild(a);\n a.click();\n document.body.removeChild(a);\n }\n\n saveFile(win: Window, blobData: any, blobOptions: any, fileName: string): void {\n let blob: Blob = null;\n let type: string = null;\n const fileNameLower = fileName.toLowerCase();\n let doDownload = true;\n if (fileNameLower.endsWith('.pdf')) {\n type = 'application/pdf';\n doDownload = false;\n } else if (fileNameLower.endsWith('.xlsx')) {\n type = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\n } else if (fileNameLower.endsWith('.docx')) {\n type = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';\n } else if (fileNameLower.endsWith('.pptx')) {\n type = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';\n } else if (fileNameLower.endsWith('.csv')) {\n type = 'text/csv';\n } else if (fileNameLower.endsWith('.png')) {\n type = 'image/png';\n } else if (fileNameLower.endsWith('.jpg') || fileNameLower.endsWith('.jpeg')) {\n type = 'image/jpeg';\n } else if (fileNameLower.endsWith('.gif')) {\n type = 'image/gif';\n }\n if (type != null) {\n blobOptions = blobOptions || {};\n if (blobOptions.type == null) {\n blobOptions.type = type;\n }\n }\n if (blobOptions != null && !this.isIE()) {\n blob = new Blob([blobData], blobOptions);\n } else {\n blob = new Blob([blobData]);\n }\n if (navigator.msSaveOrOpenBlob) {\n navigator.msSaveBlob(blob, fileName);\n } else {\n const a = win.document.createElement('a');\n if (doDownload) {\n a.download = fileName;\n } else {\n a.target = '_blank';\n }\n a.href = win.URL.createObjectURL(blob);\n a.style.position = 'fixed';\n win.document.body.appendChild(a);\n a.click();\n win.document.body.removeChild(a);\n }\n }\n\n getApplicationVersion(): string {\n return process.env.APPLICATION_VERSION || '-';\n }\n\n supportsU2f(win: Window): boolean {\n if (win != null && (win as any).u2f != null) {\n return true;\n }\n return this.isChrome() || ((this.isOpera() || this.isVivaldi()) && !Utils.isMobileBrowser);\n }\n\n supportsDuo(): boolean {\n return true;\n }\n\n showToast(type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\n options?: any): void {\n this.messagingService.send('showToast', {\n text: text,\n title: title,\n type: type,\n options: options,\n });\n }\n\n async showDialog(text: string, title?: string, confirmText?: string, cancelText?: string, type?: string) {\n const buttons = [confirmText == null ? this.i18nService.t('ok') : confirmText];\n if (cancelText != null) {\n buttons.unshift(cancelText);\n }\n\n const contentDiv = document.createElement('div');\n if (type != null) {\n const icon = document.createElement('i');\n icon.classList.add('swal-custom-icon');\n switch (type) {\n case 'success':\n icon.classList.add('fa', 'fa-check', 'text-success');\n break;\n case 'warning':\n icon.classList.add('fa', 'fa-warning', 'text-warning');\n break;\n case 'error':\n icon.classList.add('fa', 'fa-bolt', 'text-danger');\n break;\n case 'info':\n icon.classList.add('fa', 'fa-info-circle', 'text-info');\n break;\n default:\n break;\n }\n if (icon.classList.contains('fa')) {\n contentDiv.appendChild(icon);\n }\n }\n\n if (title != null) {\n const titleDiv = document.createElement('div');\n titleDiv.classList.add('swal-title');\n titleDiv.appendChild(document.createTextNode(title));\n contentDiv.appendChild(titleDiv);\n }\n\n if (text != null) {\n const textDiv = document.createElement('div');\n textDiv.classList.add('swal-text');\n textDiv.appendChild(document.createTextNode(text));\n contentDiv.appendChild(textDiv);\n }\n\n const confirmed = buttons.length > 1 ? await swal({\n content: { element: contentDiv },\n buttons: buttons,\n }) : await (swal as any)({\n content: { element: contentDiv },\n button: buttons[0],\n });\n return confirmed;\n }\n\n eventTrack(action: string, label?: string, options?: any) {\n this.messagingService.send('analyticsEventTrack', {\n action: action,\n label: label,\n options: options,\n });\n }\n\n isDev(): boolean {\n return process.env.ENV === 'development';\n }\n\n isSelfHost(): boolean {\n return process.env.SELF_HOST.toString() === 'true';\n }\n\n copyToClipboard(text: string, options?: any): void {\n let win = window;\n let doc = window.document;\n if (options && (options.window || options.win)) {\n win = options.window || options.win;\n doc = win.document;\n } else if (options && options.doc) {\n doc = options.doc;\n }\n if ((win as any).clipboardData && (win as any).clipboardData.setData) {\n // IE specific code path to prevent textarea being shown while dialog is visible.\n (win as any).clipboardData.setData('Text', text);\n } else if (doc.queryCommandSupported && doc.queryCommandSupported('copy')) {\n const textarea = doc.createElement('textarea');\n textarea.textContent = text;\n // Prevent scrolling to bottom of page in MS Edge.\n textarea.style.position = 'fixed';\n let copyEl = doc.body;\n // For some reason copy command won't work in Firefox when modal is open if appending to body\n if (this.isFirefox() && doc.body.classList.contains('modal-open')) {\n copyEl = doc.body.querySelector('.modal');\n }\n copyEl.appendChild(textarea);\n textarea.select();\n try {\n // Security exception may be thrown by some browsers.\n doc.execCommand('copy');\n } catch (e) {\n // tslint:disable-next-line\n console.warn('Copy to clipboard failed.', e);\n } finally {\n copyEl.removeChild(textarea);\n }\n }\n }\n}\n","import { AppIdService } from '../abstractions/appId.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from '../services/constants.service';\r\n\r\nimport { DeviceType } from '../enums/deviceType';\r\n\r\nconst GaObj = 'ga';\r\n\r\nexport const AnalyticsIds = {\r\n [DeviceType.ChromeExtension]: 'UA-81915606-6',\r\n [DeviceType.FirefoxExtension]: 'UA-81915606-7',\r\n [DeviceType.OperaExtension]: 'UA-81915606-8',\r\n [DeviceType.EdgeExtension]: 'UA-81915606-9',\r\n [DeviceType.VivaldiExtension]: 'UA-81915606-15',\r\n [DeviceType.SafariExtension]: 'UA-81915606-16',\r\n [DeviceType.WindowsDesktop]: 'UA-81915606-17',\r\n [DeviceType.LinuxDesktop]: 'UA-81915606-19',\r\n [DeviceType.MacOsDesktop]: 'UA-81915606-18',\r\n};\r\n\r\nexport class Analytics {\r\n private gaTrackingId: string = null;\r\n private defaultDisabled = false;\r\n private appVersion: string;\r\n\r\n constructor(win: Window, private gaFilter?: () => boolean,\r\n private platformUtilsService?: PlatformUtilsService, private storageService?: StorageService,\r\n private appIdService?: AppIdService, private dependencyResolver?: () => any) {\r\n if (dependencyResolver != null) {\r\n const deps = dependencyResolver();\r\n if (platformUtilsService == null && deps.platformUtilsService) {\r\n this.platformUtilsService = deps.platformUtilsService as PlatformUtilsService;\r\n }\r\n if (storageService == null && deps.storageService) {\r\n this.storageService = deps.storageService as StorageService;\r\n }\r\n if (appIdService == null && deps.appIdService) {\r\n this.appIdService = deps.appIdService as AppIdService;\r\n }\r\n }\r\n\r\n this.appVersion = this.platformUtilsService.getApplicationVersion();\r\n this.defaultDisabled = this.platformUtilsService.getDevice() === DeviceType.FirefoxExtension ||\r\n this.platformUtilsService.isMacAppStore();\r\n this.gaTrackingId = this.platformUtilsService.analyticsId();\r\n\r\n (win as any).GoogleAnalyticsObject = GaObj;\r\n (win as any)[GaObj] = async (action: string, param1: any, param2?: any) => {\r\n await this.ga(action, param1, param2);\r\n };\r\n }\r\n\r\n async ga(action: string, param1: any, param2?: any) {\r\n return;\r\n\r\n if (this.gaFilter != null && this.gaFilter()) {\r\n return;\r\n }\r\n\r\n const disabled = await this.storageService.get(ConstantsService.disableGaKey);\r\n if ((this.defaultDisabled && disabled == null) || disabled != null && disabled) {\r\n return;\r\n }\r\n\r\n if (action !== 'send' || !param1) {\r\n return;\r\n }\r\n\r\n const gaAnonAppId = await this.appIdService.getAnonymousAppId();\r\n const version = encodeURIComponent(this.appVersion);\r\n let message = 'v=1&tid=' + this.gaTrackingId + '&cid=' + gaAnonAppId + '&cd1=' + version;\r\n\r\n if (param1 === 'pageview' && param2) {\r\n message += this.gaTrackPageView(param2);\r\n } else if (typeof param1 === 'object' && param1.hitType === 'pageview') {\r\n message += this.gaTrackPageView(param1.page);\r\n } else if (param1 === 'event' && param2) {\r\n message += this.gaTrackEvent(param2);\r\n } else if (typeof param1 === 'object' && param1.hitType === 'event') {\r\n message += this.gaTrackEvent(param1);\r\n }\r\n\r\n const request = new XMLHttpRequest();\r\n request.open('POST', 'https://www.google-analytics.com/collect', true);\r\n request.send(message);\r\n }\r\n\r\n private gaTrackEvent(options: any) {\r\n return '&t=event&ec=' + (options.eventCategory ? encodeURIComponent(options.eventCategory) : 'Event') +\r\n '&ea=' + encodeURIComponent(options.eventAction) +\r\n (options.eventLabel ? '&el=' + encodeURIComponent(options.eventLabel) : '') +\r\n (options.eventValue ? '&ev=' + encodeURIComponent(options.eventValue) : '') +\r\n (options.page ? '&dp=' + this.cleanPagePath(options.page) : '');\r\n }\r\n\r\n private gaTrackPageView(pagePath: string) {\r\n return '&t=pageview&dp=' + this.cleanPagePath(pagePath);\r\n }\r\n\r\n private cleanPagePath(pagePath: string) {\r\n const paramIndex = pagePath.indexOf('?');\r\n if (paramIndex > -1) {\r\n pagePath = pagePath.substring(0, paramIndex);\r\n }\r\n if (pagePath.indexOf('!/') === 0 || pagePath.indexOf('#/') === 0) {\r\n pagePath = pagePath.substring(1);\r\n }\r\n const pathParts = pagePath.split('/');\r\n const newPathParts: string[] = [];\r\n pathParts.forEach((p) => {\r\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)) {\r\n newPathParts.push('__guid__');\r\n } else {\r\n newPathParts.push(p);\r\n }\r\n });\r\n return encodeURIComponent(newPathParts.join('/'));\r\n }\r\n}\r\n","import * as papa from 'papaparse';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Collection } from '../models/domain/collection';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\n\r\nimport { CipherWithIds as CipherExport } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId as CollectionExport } from '../models/export/collectionWithId';\r\nimport { FolderWithId as FolderExport } from '../models/export/folderWithId';\r\n\r\nexport class ExportService implements ExportServiceAbstraction {\r\n constructor(private folderService: FolderService, private cipherService: CipherService,\r\n private apiService: ApiService) { }\r\n\r\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\r\n let decFolders: FolderView[] = [];\r\n let decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\r\n decFolders = folders;\r\n }));\r\n\r\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\r\n decCiphers = ciphers;\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const foldersMap = new Map();\r\n decFolders.forEach((f) => {\r\n foldersMap.set(f.id, f);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ?\r\n foldersMap.get(c.folderId).name : null;\r\n cipher.favorite = c.favorite ? 1 : null;\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n folders: [],\r\n items: [],\r\n };\r\n\r\n decFolders.forEach((f) => {\r\n if (f.id == null) {\r\n return;\r\n }\r\n const folder = new FolderExport();\r\n folder.build(f);\r\n jsonDoc.folders.push(folder);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n cipher.collectionIds = null;\r\n jsonDoc.items.push(cipher);\r\n });\r\n\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\r\n const decCollections: CollectionView[] = [];\r\n const decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\r\n const collectionPromises: any = [];\r\n if (collections != null && collections.data != null && collections.data.length > 0) {\r\n collections.data.forEach((c) => {\r\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\r\n collectionPromises.push(collection.decrypt().then((decCol) => {\r\n decCollections.push(decCol);\r\n }));\r\n });\r\n }\r\n return Promise.all(collectionPromises);\r\n }));\r\n\r\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\r\n const cipherPromises: any = [];\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\r\n ciphers.data.forEach((c) => {\r\n const cipher = new Cipher(new CipherData(c));\r\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\r\n decCiphers.push(decCipher);\r\n }));\r\n });\r\n }\r\n return Promise.all(cipherPromises);\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const collectionsMap = new Map();\r\n decCollections.forEach((c) => {\r\n collectionsMap.set(c.id, c);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.collections = [];\r\n if (c.collectionIds != null) {\r\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\r\n .map((id) => collectionsMap.get(id).name);\r\n }\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n collections: [],\r\n items: [],\r\n };\r\n\r\n decCollections.forEach((c) => {\r\n const collection = new CollectionExport();\r\n collection.build(c);\r\n jsonDoc.collections.push(collection);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n jsonDoc.items.push(cipher);\r\n });\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n getFileName(prefix: string = null, extension: string = 'csv'): string {\r\n const now = new Date();\r\n const dateString =\r\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\r\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\r\n this.padNumber(now.getSeconds(), 2);\r\n\r\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.' + extension;\r\n }\r\n\r\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\r\n const numString = num.toString();\r\n return numString.length >= width ? numString :\r\n new Array(width - numString.length + 1).join(padCharacter) + numString;\r\n }\r\n\r\n private buildCommonCipher(cipher: any, c: CipherView) {\r\n cipher.type = null;\r\n cipher.name = c.name;\r\n cipher.notes = c.notes;\r\n cipher.fields = null;\r\n // Login props\r\n cipher.login_uri = null;\r\n cipher.login_username = null;\r\n cipher.login_password = null;\r\n cipher.login_totp = null;\r\n\r\n if (c.fields) {\r\n c.fields.forEach((f: any) => {\r\n if (!cipher.fields) {\r\n cipher.fields = '';\r\n } else {\r\n cipher.fields += '\\n';\r\n }\r\n\r\n cipher.fields += ((f.name || '') + ': ' + f.value);\r\n });\r\n }\r\n\r\n switch (c.type) {\r\n case CipherType.Login:\r\n cipher.type = 'login';\r\n cipher.login_username = c.login.username;\r\n cipher.login_password = c.login.password;\r\n cipher.login_totp = c.login.totp;\r\n\r\n if (c.login.uris) {\r\n cipher.login_uri = [];\r\n c.login.uris.forEach((u) => {\r\n cipher.login_uri.push(u.uri);\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n cipher.type = 'note';\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n return cipher;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nimport { Card } from './card';\r\nimport { Field } from './field';\r\nimport { Identity } from './identity';\r\nimport { Login } from './login';\r\nimport { SecureNote } from './secureNote';\r\n\r\nexport class Cipher {\r\n static template(): Cipher {\r\n const req = new Cipher();\r\n req.organizationId = null;\r\n req.folderId = null;\r\n req.type = CipherType.Login;\r\n req.name = 'Item name';\r\n req.notes = 'Some notes about this item.';\r\n req.favorite = false;\r\n req.fields = [];\r\n req.login = null;\r\n req.secureNote = null;\r\n req.card = null;\r\n req.identity = null;\r\n return req;\r\n }\r\n\r\n static toView(req: Cipher, view = new CipherView()) {\r\n view.type = req.type;\r\n view.folderId = req.folderId;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n view.name = req.name;\r\n view.notes = req.notes;\r\n view.favorite = req.favorite;\r\n\r\n if (req.fields != null) {\r\n view.fields = req.fields.map((f) => Field.toView(f));\r\n }\r\n\r\n switch (req.type) {\r\n case CipherType.Login:\r\n view.login = Login.toView(req.login);\r\n break;\r\n case CipherType.SecureNote:\r\n view.secureNote = SecureNote.toView(req.secureNote);\r\n break;\r\n case CipherType.Card:\r\n view.card = Card.toView(req.card);\r\n break;\r\n case CipherType.Identity:\r\n view.identity = Identity.toView(req.identity);\r\n break;\r\n }\r\n\r\n return view;\r\n }\r\n\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n fields: Field[];\r\n login: Login;\r\n secureNote: SecureNote;\r\n card: Card;\r\n identity: Identity;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.organizationId = o.organizationId;\r\n this.folderId = o.folderId;\r\n this.type = o.type;\r\n this.name = o.name;\r\n this.notes = o.notes;\r\n this.favorite = o.favorite;\r\n\r\n if (o.fields != null) {\r\n this.fields = o.fields.map((f) => new Field(f));\r\n }\r\n\r\n switch (o.type) {\r\n case CipherType.Login:\r\n this.login = new Login(o.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNote(o.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new Card(o.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new Identity(o.identity);\r\n break;\r\n }\r\n }\r\n}\r\n","import { CardView } from '../view/cardView';\r\n\r\nexport class Card {\r\n static template(): Card {\r\n const req = new Card();\r\n req.cardholderName = 'John Doe';\r\n req.brand = 'visa';\r\n req.number = '4242424242424242';\r\n req.expMonth = '04';\r\n req.expYear = '2023';\r\n req.code = '123';\r\n return req;\r\n }\r\n\r\n static toView(req: Card, view = new CardView()) {\r\n view.cardholderName = req.cardholderName;\r\n view.brand = req.brand;\r\n view.number = req.number;\r\n view.expMonth = req.expMonth;\r\n view.expYear = req.expYear;\r\n view.code = req.code;\r\n return view;\r\n }\r\n\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(o?: CardView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.cardholderName = o.cardholderName;\r\n this.brand = o.brand;\r\n this.number = o.number;\r\n this.expMonth = o.expMonth;\r\n this.expYear = o.expYear;\r\n this.code = o.code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { FieldView } from '../view/fieldView';\r\n\r\nexport class Field {\r\n static template(): Field {\r\n const req = new Field();\r\n req.name = 'Field name';\r\n req.value = 'Some value';\r\n req.type = FieldType.Text;\r\n return req;\r\n }\r\n\r\n static toView(req: Field, view = new FieldView()) {\r\n view.type = req.type;\r\n view.value = req.value;\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(o?: FieldView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.name = o.name;\r\n this.value = o.value;\r\n this.type = o.type;\r\n }\r\n}\r\n","import { IdentityView } from '../view/identityView';\r\n\r\nexport class Identity {\r\n static template(): Identity {\r\n const req = new Identity();\r\n req.title = 'Mr';\r\n req.firstName = 'John';\r\n req.middleName = 'William';\r\n req.lastName = 'Doe';\r\n req.address1 = '123 Any St';\r\n req.address2 = 'Apt #123';\r\n req.address3 = null;\r\n req.city = 'New York';\r\n req.state = 'NY';\r\n req.postalCode = '10001';\r\n req.country = 'US';\r\n req.company = 'Acme Inc.';\r\n req.email = 'john@company.com';\r\n req.phone = '5555551234';\r\n req.ssn = '000-123-4567';\r\n req.username = 'jdoe';\r\n req.passportNumber = 'US-123456789';\r\n req.licenseNumber = 'D123-12-123-12333';\r\n return req;\r\n }\r\n\r\n static toView(req: Identity, view = new IdentityView()) {\r\n view.title = req.title;\r\n view.firstName = req.firstName;\r\n view.middleName = req.middleName;\r\n view.lastName = req.lastName;\r\n view.address1 = req.address1;\r\n view.address2 = req.address2;\r\n view.address3 = req.address3;\r\n view.city = req.city;\r\n view.state = req.state;\r\n view.postalCode = req.postalCode;\r\n view.country = req.country;\r\n view.company = req.company;\r\n view.email = req.email;\r\n view.phone = req.phone;\r\n view.ssn = req.ssn;\r\n view.username = req.username;\r\n view.passportNumber = req.passportNumber;\r\n view.licenseNumber = req.licenseNumber;\r\n return view;\r\n }\r\n\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(o?: IdentityView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.title = o.title;\r\n this.firstName = o.firstName;\r\n this.middleName = o.middleName;\r\n this.lastName = o.lastName;\r\n this.address1 = o.address1;\r\n this.address2 = o.address2;\r\n this.address3 = o.address3;\r\n this.city = o.city;\r\n this.state = o.state;\r\n this.postalCode = o.postalCode;\r\n this.country = o.country;\r\n this.company = o.company;\r\n this.email = o.email;\r\n this.phone = o.phone;\r\n this.ssn = o.ssn;\r\n this.username = o.username;\r\n this.passportNumber = o.passportNumber;\r\n this.licenseNumber = o.licenseNumber;\r\n }\r\n}\r\n","import { LoginUri } from './loginUri';\r\n\r\nimport { LoginView } from '../view/loginView';\r\n\r\nexport class Login {\r\n static template(): Login {\r\n const req = new Login();\r\n req.uris = [];\r\n req.username = 'jdoe';\r\n req.password = 'myp@ssword123';\r\n req.totp = 'JBSWY3DPEHPK3PXP';\r\n return req;\r\n }\r\n\r\n static toView(req: Login, view = new LoginView()) {\r\n if (req.uris != null) {\r\n view.uris = req.uris.map((u) => LoginUri.toView(u));\r\n }\r\n view.username = req.username;\r\n view.password = req.password;\r\n view.totp = req.totp;\r\n return view;\r\n }\r\n\r\n uris: LoginUri[];\r\n username: string;\r\n password: string;\r\n totp: string;\r\n\r\n constructor(o?: LoginView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n if (o.uris != null) {\r\n this.uris = o.uris.map((u) => new LoginUri(u));\r\n }\r\n\r\n this.username = o.username;\r\n this.password = o.password;\r\n this.totp = o.totp;\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { LoginUriView } from '../view/loginUriView';\r\n\r\nexport class LoginUri {\r\n static template(): LoginUri {\r\n const req = new LoginUri();\r\n req.uri = 'https://google.com';\r\n req.match = null;\r\n return req;\r\n }\r\n\r\n static toView(req: LoginUri, view = new LoginUriView()) {\r\n view.uri = req.uri;\r\n view.match = req.match;\r\n return view;\r\n }\r\n\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(o?: LoginUriView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.uri = o.uri;\r\n this.match = o.match;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { SecureNoteView } from '../view/secureNoteView';\r\n\r\nexport class SecureNote {\r\n static template(): SecureNote {\r\n const req = new SecureNote();\r\n req.type = SecureNoteType.Generic;\r\n return req;\r\n }\r\n\r\n static toView(req: SecureNote, view = new SecureNoteView()) {\r\n view.type = req.type;\r\n return view;\r\n }\r\n\r\n type: SecureNoteType;\r\n\r\n constructor(o?: SecureNoteView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.type = o.type;\r\n }\r\n}\r\n","import { CollectionView } from '../view/collectionView';\r\n\r\nexport class Collection {\r\n static template(): Collection {\r\n const req = new Collection();\r\n req.organizationId = '00000000-0000-0000-0000-000000000000';\r\n req.name = 'Collection name';\r\n return req;\r\n }\r\n\r\n static toView(req: Collection, view = new CollectionView()) {\r\n view.name = req.name;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n return view;\r\n }\r\n\r\n organizationId: string;\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.organizationId = o.organizationId;\r\n this.name = o.name;\r\n }\r\n}\r\n","import { FolderView } from '../view/folderView';\r\n\r\nexport class Folder {\r\n static template(): Folder {\r\n const req = new Folder();\r\n req.name = 'Folder name';\r\n return req;\r\n }\r\n\r\n static toView(req: Folder, view = new FolderView()) {\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.name = o.name;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport {\n ImportOption,\n ImportService as ImportServiceAbstraction,\n} from '../abstractions/import.service';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { Utils } from '../misc/utils';\n\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KvpRequest } from '../models/request/kvpRequest';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { AscendoCsvImporter } from '../importers/ascendoCsvImporter';\nimport { AvastCsvImporter } from '../importers/avastCsvImporter';\nimport { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BitwardenJsonImporter } from '../importers/bitwardenJsonImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneJsonImporter } from '../importers/dashlaneJsonImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\nimport { EnpassJsonImporter } from '../importers/enpassJsonImporter';\nimport { FirefoxCsvImporter } from '../importers/firefoxCsvImporter';\nimport { FSecureFskImporter } from '../importers/fsecureFskImporter';\nimport { GnomeJsonImporter } from '../importers/gnomeJsonImporter';\nimport { Importer } from '../importers/importer';\nimport { KasperskyTxtImporter } from '../importers/kasperskyTxtImporter';\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 { RememBearCsvImporter } from '../importers/rememBearCsvImporter';\nimport { RoboFormCsvImporter } from '../importers/roboformCsvImporter';\nimport { SafeInCloudXmlImporter } from '../importers/safeInCloudXmlImporter';\nimport { SaferPassCsvImporter } from '../importers/saferpassCsvImport';\nimport { SplashIdCsvImporter } from '../importers/splashIdCsvImporter';\nimport { StickyPasswordXmlImporter } from '../importers/stickyPasswordXmlImporter';\nimport { TrueKeyCsvImporter } from '../importers/truekeyCsvImporter';\nimport { UpmCsvImporter } from '../importers/upmCsvImporter';\nimport { ZohoVaultCsvImporter } from '../importers/zohoVaultCsvImporter';\n\nexport class ImportService implements ImportServiceAbstraction {\n featuredImportOptions = [\n { id: 'bitwardenjson', name: 'Bitwarden (json)' },\n { id: 'bitwardencsv', name: 'Bitwarden (csv)' },\n { id: 'lastpasscsv', name: 'LastPass (csv)' },\n { id: 'chromecsv', name: 'Chrome (csv)' },\n { id: 'firefoxcsv', name: 'Firefox (csv)' },\n { id: 'keepass2xml', name: 'KeePass 2 (xml)' },\n { id: '1password1pif', name: '1Password (1pif)' },\n { id: 'dashlanejson', name: 'Dashlane (json)' },\n ];\n\n regularImportOptions: ImportOption[] = [\n { id: 'keepassxcsv', name: 'KeePassX (csv)' },\n { id: '1passwordwincsv', name: '1Password 6 and 7 Windows (csv)' },\n { id: 'roboformcsv', name: 'RoboForm (csv)' },\n { id: 'keepercsv', name: 'Keeper (csv)' },\n { id: 'enpasscsv', name: 'Enpass (csv)' },\n { id: 'enpassjson', name: 'Enpass (json)' },\n { id: 'safeincloudxml', name: 'SafeInCloud (xml)' },\n { id: 'pwsafexml', name: 'Password Safe (xml)' },\n { id: 'stickypasswordxml', name: 'Sticky Password (xml)' },\n { id: 'msecurecsv', name: 'mSecure (csv)' },\n { id: 'truekeycsv', name: 'True Key (csv)' },\n { id: 'passwordbossjson', name: 'Password Boss (json)' },\n { id: 'zohovaultcsv', name: 'Zoho Vault (csv)' },\n { id: 'splashidcsv', name: 'SplashID (csv)' },\n { id: 'passworddragonxml', name: 'Password Dragon (xml)' },\n { id: 'padlockcsv', name: 'Padlock (csv)' },\n { id: 'passboltcsv', name: 'Passbolt (csv)' },\n { id: 'clipperzhtml', name: 'Clipperz (html)' },\n { id: 'aviracsv', name: 'Avira (csv)' },\n { id: 'saferpasscsv', name: 'SaferPass (csv)' },\n { id: 'upmcsv', name: 'Universal Password Manager (csv)' },\n { id: 'ascendocsv', name: 'Ascendo DataVault (csv)' },\n { id: 'meldiumcsv', name: 'Meldium (csv)' },\n { id: 'passkeepcsv', name: 'PassKeep (csv)' },\n { id: 'operacsv', name: 'Opera (csv)' },\n { id: 'vivaldicsv', name: 'Vivaldi (csv)' },\n { id: 'gnomejson', name: 'GNOME Passwords and Keys/Seahorse (json)' },\n { id: 'blurcsv', name: 'Blur (csv)' },\n { id: 'passwordagentcsv', name: 'Password Agent (csv)' },\n { id: 'passpackcsv', name: 'Passpack (csv)' },\n { id: 'passmanjson', name: 'Passman (json)' },\n { id: 'avastcsv', name: 'Avast Passwords (csv)' },\n { id: 'fsecurefsk', name: 'F-Secure KEY (fsk)' },\n { id: 'kasperskytxt', name: 'Kaspersky Password Manager (txt)' },\n { id: 'remembearcsv', name: 'RememBear (csv)' },\n ];\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private apiService: ApiService, private i18nService: I18nService,\n private collectionService: CollectionService) { }\n\n getImportOptions(): ImportOption[] {\n return this.featuredImportOptions.concat(this.regularImportOptions);\n }\n\n async import(importer: Importer, fileContents: string, organizationId: string = null): Promise {\n const importResult = await importer.parse(fileContents);\n if (importResult.success) {\n if (importResult.folders.length === 0 && importResult.ciphers.length === 0) {\n return new Error(this.i18nService.t('importNothingError'));\n } else if (importResult.ciphers.length > 0) {\n const halfway = Math.floor(importResult.ciphers.length / 2);\n const last = importResult.ciphers.length - 1;\n\n if (this.badData(importResult.ciphers[0]) &&\n this.badData(importResult.ciphers[halfway]) &&\n this.badData(importResult.ciphers[last])) {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n await this.postImport(importResult, organizationId);\n return null;\n } else {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n\n getImporter(format: string, organization = false): Importer {\n const importer = this.getImporterInstance(format);\n if (importer == null) {\n return null;\n }\n importer.organization = organization;\n return importer;\n }\n\n private getImporterInstance(format: string) {\n if (format == null || format === '') {\n return null;\n }\n\n switch (format) {\n case 'bitwardencsv':\n return new BitwardenCsvImporter();\n case 'bitwardenjson':\n return new BitwardenJsonImporter();\n case 'lastpasscsv':\n case 'passboltcsv':\n return new LastPassCsvImporter();\n case 'keepassxcsv':\n return new KeePassXCsvImporter();\n case 'aviracsv':\n return new AviraCsvImporter();\n case 'blurcsv':\n return new BlurCsvImporter();\n case 'safeincloudxml':\n return new SafeInCloudXmlImporter();\n case 'padlockcsv':\n return new PadlockCsvImporter();\n case 'keepass2xml':\n return new KeePass2XmlImporter();\n case 'chromecsv':\n case 'operacsv':\n case 'vivaldicsv':\n return new ChromeCsvImporter();\n case 'firefoxcsv':\n return new FirefoxCsvImporter();\n case 'upmcsv':\n return new UpmCsvImporter();\n case 'saferpasscsv':\n return new SaferPassCsvImporter();\n case 'meldiumcsv':\n return new MeldiumCsvImporter();\n case '1password1pif':\n return new OnePassword1PifImporter();\n case '1passwordwincsv':\n return new OnePasswordWinCsvImporter();\n case 'keepercsv':\n return new KeeperCsvImporter();\n case 'passworddragonxml':\n return new PasswordDragonXmlImporter();\n case 'enpasscsv':\n return new EnpassCsvImporter();\n case 'enpassjson':\n return new EnpassJsonImporter();\n case 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanejson':\n return new DashlaneJsonImporter();\n case 'msecurecsv':\n return new MSecureCsvImporter();\n case 'stickypasswordxml':\n return new StickyPasswordXmlImporter();\n case 'truekeycsv':\n return new TrueKeyCsvImporter();\n case 'clipperzhtml':\n return new ClipperzHtmlImporter();\n case 'roboformcsv':\n return new RoboFormCsvImporter();\n case 'ascendocsv':\n return new AscendoCsvImporter();\n case 'passwordbossjson':\n return new PasswordBossJsonImporter();\n case 'zohovaultcsv':\n return new ZohoVaultCsvImporter();\n case 'splashidcsv':\n return new SplashIdCsvImporter();\n case 'passkeepcsv':\n return new PassKeepCsvImporter();\n case 'gnomejson':\n return new GnomeJsonImporter();\n case 'passwordagentcsv':\n return new PasswordAgentCsvImporter();\n case 'passpackcsv':\n return new PasspackCsvImporter();\n case 'passmanjson':\n return new PassmanJsonImporter();\n case 'avastcsv':\n return new AvastCsvImporter();\n case 'fsecurefsk':\n return new FSecureFskImporter();\n case 'kasperskytxt':\n return new KasperskyTxtImporter();\n case 'remembearcsv':\n return new RememBearCsvImporter();\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.type === CipherType.Login && c.login != null && Utils.isNullOrWhitespace(c.login.password));\n }\n}\n","import { CipherRequest } from './cipherRequest';\nimport { FolderRequest } from './folderRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportCiphersRequest {\n ciphers: CipherRequest[] = [];\n folders: FolderRequest[] = [];\n folderRelationships: Array> = [];\n}\n","import { CipherRequest } from './cipherRequest';\nimport { CollectionRequest } from './collectionRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportOrganizationCiphersRequest {\n ciphers: CipherRequest[] = [];\n collections: CollectionRequest[] = [];\n collectionRelationships: Array> = [];\n}\n","export class KvpRequest {\n key: TK;\n value: TV;\n\n constructor(key: TK, value: TV) {\n this.key = key;\n this.value = value;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class AscendoCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 2) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n\r\n if (value.length > 2 && (value.length % 2) === 0) {\r\n for (let i = 0; i < value.length - 2; i += 2) {\r\n const val: string = value[i + 2];\r\n const field: string = value[i + 1];\r\n if (this.isNullOrWhitespace(val) || this.isNullOrWhitespace(field)) {\r\n continue;\r\n }\r\n\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(val);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(val);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n } else {\r\n this.processKvp(cipher, field, val);\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AvastCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.login.uris = this.makeUriArray(value.web);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.login);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AviraCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name,\n this.getValueOrDefault(this.nameFromUrl(value.website), '--'));\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.username) && !this.isNullOrWhitespace(value.secondary_username)) {\n cipher.login.username = value.secondary_username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.notes = this.getValueOrDefault(value.secondary_username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class BitwardenCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.organization && !this.isNullOrWhitespace(value.collections)) {\r\n const collections = (value.collections as string).split(',');\r\n collections.forEach((col) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === col) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = col;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization) {\r\n this.processFolder(result, value.folder);\r\n }\r\n\r\n const cipher = new CipherView();\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.favorite, '0') !== '0' ? true : false;\r\n cipher.type = CipherType.Login;\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n\r\n if (!this.isNullOrWhitespace(value.fields)) {\r\n const fields = this.splitNewLine(value.fields);\r\n for (let i = 0; i < fields.length; i++) {\r\n if (this.isNullOrWhitespace(fields[i])) {\r\n continue;\r\n }\r\n\r\n const delimPosition = fields[i].lastIndexOf(': ');\r\n if (delimPosition === -1) {\r\n continue;\r\n }\r\n\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n\r\n const field = new FieldView();\r\n field.name = fields[i].substr(0, delimPosition);\r\n field.value = null;\r\n field.type = FieldType.Text;\r\n if (fields[i].length > (delimPosition + 2)) {\r\n field.value = fields[i].substr(delimPosition + 2);\r\n }\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n const valueType = value.type != null ? value.type.toLowerCase() : null;\r\n switch (valueType) {\r\n case 'note':\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n break;\r\n default:\r\n cipher.type = CipherType.Login;\r\n cipher.login = new LoginView();\r\n cipher.login.totp = this.getValueOrDefault(value.login_totp || value.totp);\r\n cipher.login.username = this.getValueOrDefault(value.login_username || value.username);\r\n cipher.login.password = this.getValueOrDefault(value.login_password || value.password);\r\n const uris = this.parseSingleRowCsv(value.login_uri || value.uri);\r\n cipher.login.uris = this.makeUriArray(uris);\r\n break;\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherWithIds } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId } from '../models/export/collectionWithId';\r\nimport { FolderWithId } from '../models/export/folderWithId';\r\n\r\nexport class BitwardenJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const groupingsMap = new Map();\r\n if (this.organization && results.collections != null) {\r\n results.collections.forEach((c: CollectionWithId) => {\r\n const collection = CollectionWithId.toView(c);\r\n if (collection != null) {\r\n collection.id = null;\r\n collection.organizationId = null;\r\n groupingsMap.set(c.id, result.collections.length);\r\n result.collections.push(collection);\r\n }\r\n });\r\n } else if (!this.organization && results.folders != null) {\r\n results.folders.forEach((f: FolderWithId) => {\r\n const folder = FolderWithId.toView(f);\r\n if (folder != null) {\r\n folder.id = null;\r\n groupingsMap.set(f.id, result.folders.length);\r\n result.folders.push(folder);\r\n }\r\n });\r\n }\r\n\r\n results.items.forEach((c: CipherWithIds) => {\r\n const cipher = CipherWithIds.toView(c);\r\n // reset ids incase they were set for some reason\r\n cipher.id = null;\r\n cipher.folderId = null;\r\n cipher.organizationId = null;\r\n cipher.collectionIds = null;\r\n\r\n if (!this.organization && c.folderId != null && groupingsMap.has(c.folderId)) {\r\n result.folderRelationships.push([result.ciphers.length, groupingsMap.get(c.folderId)]);\r\n } else if (this.organization && c.collectionIds != null) {\r\n c.collectionIds.forEach((cId) => {\r\n if (groupingsMap.has(cId)) {\r\n result.collectionRelationships.push([result.ciphers.length, groupingsMap.get(cId)]);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class BlurCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.label === 'null') {\n value.label = null;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.label,\n this.getValueOrDefault(this.nameFromUrl(value.domain), '--'));\n cipher.login.uris = this.makeUriArray(value.domain);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.email) && !this.isNullOrWhitespace(value.username)) {\n cipher.login.username = value.username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.email);\n cipher.notes = this.getValueOrDefault(value.username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class ChromeCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class ClipperzHtmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const textarea = doc.querySelector('textarea');\r\n if (textarea == null || this.isNullOrWhitespace(textarea.textContent)) {\r\n result.errorMessage = 'Missing textarea.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const entries = JSON.parse(textarea.textContent);\r\n entries.forEach((entry: any) => {\r\n const cipher = this.initLoginCipher();\r\n if (!this.isNullOrWhitespace(entry.label)) {\r\n cipher.name = entry.label.split(' ')[0];\r\n }\r\n if (entry.data != null && !this.isNullOrWhitespace(entry.data.notes)) {\r\n cipher.notes = entry.data.notes.split('\\\\n').join('\\n');\r\n }\r\n\r\n if (entry.currentVersion != null && entry.currentVersion.fields != null) {\r\n for (const property in entry.currentVersion.fields) {\r\n if (!entry.currentVersion.fields.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n\r\n const field = entry.currentVersion.fields[property];\r\n const actionType = field.actionType != null ? field.actionType.toLowerCase() : null;\r\n switch (actionType) {\r\n case 'password':\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n break;\r\n case 'email':\r\n case 'username':\r\n case 'user':\r\n case 'name':\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n break;\r\n case 'url':\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n break;\r\n default:\r\n const labelLower = field.label != null ? field.label.toLowerCase() : null;\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\nimport { IdentityView } from '../models/view/identityView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nconst HandledResults = new Set(['ADDRESS', 'AUTHENTIFIANT', 'BANKSTATEMENT', 'IDCARD', 'IDENTITY',\n 'PAYMENTMEANS_CREDITCARD', 'PAYMENTMEAN_PAYPAL', 'EMAIL']);\n\nexport class DashlaneJsonImporter extends BaseImporter implements Importer {\n private result: ImportResult;\n\n parse(data: string): ImportResult {\n this.result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.length === 0) {\n this.result.success = false;\n return this.result;\n }\n\n if (results.ADDRESS != null) {\n this.processAddress(results.ADDRESS);\n }\n if (results.AUTHENTIFIANT != null) {\n this.processAuth(results.AUTHENTIFIANT);\n }\n if (results.BANKSTATEMENT != null) {\n this.processNote(results.BANKSTATEMENT, 'BankAccountName');\n }\n if (results.IDCARD != null) {\n this.processNote(results.IDCARD, 'Fullname');\n }\n if (results.PAYMENTMEANS_CREDITCARD != null) {\n this.processCard(results.PAYMENTMEANS_CREDITCARD);\n }\n if (results.IDENTITY != null) {\n this.processIdentity(results.IDENTITY);\n }\n\n for (const key in results) {\n if (results.hasOwnProperty(key) && !HandledResults.has(key)) {\n this.processNote(results[key], null, 'Generic Note');\n }\n }\n\n this.result.success = true;\n return this.result;\n }\n\n private processAuth(results: any[]) {\n results.forEach((credential: any) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(credential.title);\n\n cipher.login.username = this.getValueOrDefault(credential.login,\n this.getValueOrDefault(credential.secondaryLogin));\n if (this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = this.getValueOrDefault(credential.email);\n } else if (!this.isNullOrWhitespace(credential.email)) {\n cipher.notes = ('Email: ' + credential.email + '\\n');\n }\n\n cipher.login.password = this.getValueOrDefault(credential.password);\n cipher.login.uris = this.makeUriArray(credential.domain);\n cipher.notes += this.getValueOrDefault(credential.note, '');\n\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processIdentity(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.identity = new IdentityView();\n cipher.type = CipherType.Identity;\n cipher.name = this.getValueOrDefault(obj.fullName, '');\n const nameParts = cipher.name.split(' ');\n if (nameParts.length > 0) {\n cipher.identity.firstName = this.getValueOrDefault(nameParts[0]);\n }\n if (nameParts.length === 2) {\n cipher.identity.lastName = this.getValueOrDefault(nameParts[1]);\n } else if (nameParts.length === 3) {\n cipher.identity.middleName = this.getValueOrDefault(nameParts[1]);\n cipher.identity.lastName = this.getValueOrDefault(nameParts[2]);\n }\n cipher.identity.username = this.getValueOrDefault(obj.pseudo);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processAddress(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.identity = new IdentityView();\n cipher.type = CipherType.Identity;\n cipher.name = this.getValueOrDefault(obj.addressName);\n cipher.identity.address1 = this.getValueOrDefault(obj.addressFull);\n cipher.identity.city = this.getValueOrDefault(obj.city);\n cipher.identity.state = this.getValueOrDefault(obj.state);\n cipher.identity.postalCode = this.getValueOrDefault(obj.zipcode);\n cipher.identity.country = this.getValueOrDefault(obj.country);\n if (cipher.identity.country != null) {\n cipher.identity.country = cipher.identity.country.toUpperCase();\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processCard(results: any[]) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.card = new CardView();\n cipher.type = CipherType.Card;\n cipher.name = this.getValueOrDefault(obj.bank);\n cipher.card.number = this.getValueOrDefault(obj.cardNumber);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n cipher.card.cardholderName = this.getValueOrDefault(obj.owner);\n if (!this.isNullOrWhitespace(cipher.card.brand)) {\n if (this.isNullOrWhitespace(cipher.name)) {\n cipher.name = cipher.card.brand;\n } else {\n cipher.name += (' - ' + cipher.card.brand);\n }\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n }\n\n private processNote(results: any[], nameProperty: string, name: string = null) {\n results.forEach((obj: any) => {\n const cipher = new CipherView();\n cipher.secureNote = new SecureNoteView();\n cipher.type = CipherType.SecureNote;\n cipher.secureNote.type = SecureNoteType.Generic;\n if (name != null) {\n cipher.name = name;\n } else {\n cipher.name = this.getValueOrDefault(obj[nameProperty]);\n }\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && key !== nameProperty) {\n this.processKvp(cipher, key, obj[key].toString());\n }\n }\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\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 if (this.setCardExpiration(cipher, fieldValue)) {\n continue;\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\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\n\nimport { CipherType } from '../enums/cipherType';\n\nexport class EnpassJsonImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.items == null || results.items.length === 0) {\n result.success = false;\n return result;\n }\n\n results.items.forEach((item: any) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(item.title);\n cipher.favorite = item.favorite > 0;\n\n if (item.template_type != null && item.fields != null && item.fields.length > 0) {\n if (item.template_type.indexOf('login.') === 0 || item.template_type.indexOf('password.') === 0) {\n this.processLogin(cipher, item.fields);\n } else if (item.template_type.indexOf('creditcard.') === 0) {\n this.processCard(cipher, item.fields);\n } else if (item.template_type.indexOf('identity.') < 0 &&\n item.fields.some((f: any) => f.type === 'password' && !this.isNullOrWhitespace(f.value))) {\n this.processLogin(cipher, item.fields);\n } else {\n this.processNote(cipher, item.fields);\n }\n }\n\n cipher.notes += ('\\n' + this.getValueOrDefault(item.note, ''));\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private processLogin(cipher: CipherView, fields: any[]) {\n const urls: string[] = [];\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\n return;\n }\n\n if ((field.type === 'username' || field.type === 'email') &&\n this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = field.value;\n } else if (field.type === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = field.value;\n } else if (field.type === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\n cipher.login.totp = field.value;\n } else if (field.type === 'url') {\n urls.push(field.value);\n } else {\n this.processKvp(cipher, field.label, field.value);\n }\n });\n cipher.login.uris = this.makeUriArray(urls);\n }\n\n private processCard(cipher: CipherView, fields: any[]) {\n cipher.card = new CardView();\n cipher.type = CipherType.Card;\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section' || field.type === 'ccType') {\n return;\n }\n\n if (field.type === 'ccName' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\n cipher.card.cardholderName = field.value;\n } else if (field.type === 'ccNumber' && this.isNullOrWhitespace(cipher.card.number)) {\n cipher.card.number = field.value;\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n } else if (field.type === 'ccCvc' && this.isNullOrWhitespace(cipher.card.code)) {\n cipher.card.code = field.value;\n } else if (field.type === 'ccExpiry' && this.isNullOrWhitespace(cipher.card.expYear)) {\n if (!this.setCardExpiration(cipher, field.value)) {\n this.processKvp(cipher, field.label, field.value);\n }\n } else {\n this.processKvp(cipher, field.label, field.value);\n }\n });\n }\n\n private processNote(cipher: CipherView, fields: any[]) {\n fields.forEach((field: any) => {\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\n return;\n }\n this.processKvp(cipher, field.label, field.value);\n });\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\n\nimport { CipherType } from '../enums/cipherType';\n\nexport class FSecureFskImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = JSON.parse(data);\n if (results == null || results.data == null) {\n result.success = false;\n return result;\n }\n\n for (const key in results.data) {\n if (!results.data.hasOwnProperty(key)) {\n continue;\n }\n\n const value = results.data[key];\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.service);\n cipher.notes = this.getValueOrDefault(value.notes);\n\n if (value.style === 'website') {\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 } else if (value.style === 'creditcard') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n cipher.card.cardholderName = this.getValueOrDefault(value.username);\n cipher.card.number = this.getValueOrDefault(value.creditNumber);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n cipher.card.code = this.getValueOrDefault(value.creditCvv);\n if (!this.isNullOrWhitespace(value.creditExpiry)) {\n if (!this.setCardExpiration(cipher, value.creditExpiry)) {\n this.processKvp(cipher, 'Expiration', value.creditExpiry);\n }\n }\n if (!this.isNullOrWhitespace(value.password)) {\n this.processKvp(cipher, 'PIN', value.password);\n }\n } else {\n continue;\n }\n\n this.convertToNoteIfNeeded(cipher);\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nconst NotesHeader = 'Notes\\n\\n';\nconst ApplicationsHeader = 'Applications\\n\\n';\nconst WebsitesHeader = 'Websites\\n\\n';\nconst Delimiter = '\\n---\\n';\n\nexport class KasperskyTxtImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n\n let notesData: string;\n let applicationsData: string;\n let websitesData: string;\n let workingData = this.splitNewLine(data).join('\\n');\n\n if (workingData.indexOf(NotesHeader) !== -1) {\n const parts = workingData.split(NotesHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n notesData = parts[1];\n }\n }\n if (workingData.indexOf(ApplicationsHeader) !== -1) {\n const parts = workingData.split(ApplicationsHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n applicationsData = parts[1];\n }\n }\n if (workingData.indexOf(WebsitesHeader) === 0) {\n const parts = workingData.split(WebsitesHeader);\n if (parts.length > 1) {\n workingData = parts[0];\n websitesData = parts[1];\n }\n }\n\n const notes = this.parseDataCategory(notesData);\n const applications = this.parseDataCategory(applicationsData);\n const websites = this.parseDataCategory(websitesData);\n\n notes.forEach((n) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(n.get('Name'));\n cipher.notes = this.getValueOrDefault(n.get('Text'));\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n websites.concat(applications).forEach((w) => {\n const cipher = this.initLoginCipher();\n const nameKey = w.has('Website name') ? 'Website name' : 'Application';\n cipher.name = this.getValueOrDefault(w.get(nameKey), '');\n if (!this.isNullOrWhitespace(w.get('Login name'))) {\n if (!this.isNullOrWhitespace(cipher.name)) {\n cipher.name += ': ';\n }\n cipher.name += w.get('Login name');\n }\n cipher.notes = this.getValueOrDefault(w.get('Comment'));\n if (w.has('Website URL')) {\n cipher.login.uris = this.makeUriArray(w.get('Website URL'));\n }\n cipher.login.username = this.getValueOrDefault(w.get('Login'));\n cipher.login.password = this.getValueOrDefault(w.get('Password'));\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private parseDataCategory(data: string): Array> {\n if (this.isNullOrWhitespace(data) || data.indexOf(Delimiter) === -1) {\n return [];\n }\n const items: Array> = [];\n data.split(Delimiter).forEach((p) => {\n if (p.indexOf('\\n') === -1) {\n return;\n }\n const item = new Map();\n let itemComment: string;\n let itemCommentKey: string;\n p.split('\\n').forEach((l) => {\n if (itemComment != null) {\n itemComment += ('\\n' + l);\n return;\n }\n const colonIndex = l.indexOf(':');\n let key: string;\n let val: string;\n if (colonIndex === -1) {\n return;\n } else {\n key = l.substring(0, colonIndex);\n if (l.length > colonIndex + 1) {\n val = l.substring(colonIndex + 2);\n }\n }\n if (key != null) {\n item.set(key, val);\n }\n if (key === 'Comment' || key === 'Text') {\n itemComment = val;\n itemCommentKey = key;\n }\n });\n if (itemComment != null && itemCommentKey != null) {\n item.set(itemCommentKey, itemComment);\n }\n if (item.size === 0) {\n return;\n }\n items.push(item);\n });\n return items;\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 { 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 let grouping = value.grouping;\r\n if (grouping != null) {\r\n grouping = grouping.replace(/\\\\/g, '/');\r\n }\r\n const hasFolder = this.getValueOrDefault(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 === 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 = 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 if (this.isNullOrWhitespace(extraPart)) {\r\n return;\r\n }\r\n let key: string = null;\r\n let val: string = null;\r\n const colonIndex = extraPart.indexOf(':');\r\n if (colonIndex === -1) {\r\n key = extraPart;\r\n } else {\r\n key = extraPart.substring(0, colonIndex);\r\n if (extraPart.length > colonIndex) {\r\n val = extraPart.substring(colonIndex + 1);\r\n }\r\n }\r\n if (this.isNullOrWhitespace(key) || this.isNullOrWhitespace(val) || key === 'NoteType') {\r\n return;\r\n }\r\n\r\n if (key === 'Notes') {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += ('\\n' + val);\r\n } else {\r\n notes = val;\r\n }\r\n } else if (map.hasOwnProperty(key)) {\r\n dataObj[map[key]] = val;\r\n } else {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += '\\n';\r\n } else {\r\n notes = '';\r\n }\r\n notes += (key + ': ' + val);\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { CipherView } from '../models/view/cipherView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nexport class OnePassword1PifImporter extends BaseImporter implements Importer {\n result = new ImportResult();\n\n parse(data: string): ImportResult {\n data.split(this.newLineRegex).forEach((line) => {\n if (this.isNullOrWhitespace(line) || line[0] !== '{') {\n return;\n }\n const item = JSON.parse(line);\n const cipher = this.initLoginCipher();\n\n if (this.isNullOrWhitespace(item.hmac)) {\n this.processStandardItem(item, cipher);\n } else {\n this.processWinOpVaultItem(item, cipher);\n }\n\n this.convertToNoteIfNeeded(cipher);\n this.cleanupCipher(cipher);\n this.result.ciphers.push(cipher);\n });\n\n this.result.success = true;\n return this.result;\n }\n\n private processWinOpVaultItem(item: any, cipher: CipherView) {\n if (item.overview != null) {\n cipher.name = this.getValueOrDefault(item.overview.title);\n if (item.overview.URLs != null) {\n const urls: string[] = [];\n item.overview.URLs.forEach((url: any) => {\n if (!this.isNullOrWhitespace(url.u)) {\n urls.push(url.u);\n }\n });\n cipher.login.uris = this.makeUriArray(urls);\n }\n }\n\n if (item.details != null) {\n if (!this.isNullOrWhitespace(item.details.ccnum) || !this.isNullOrWhitespace(item.details.cvv)) {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n }\n if (cipher.type === CipherType.Login && !this.isNullOrWhitespace(item.details.password)) {\n cipher.login.password = item.details.password;\n }\n if (!this.isNullOrWhitespace(item.details.notesPlain)) {\n cipher.notes = item.details.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\n }\n if (item.details.fields != null) {\n this.parseFields(item.details.fields, cipher, 'designation', 'value', 'name');\n }\n if (item.details.sections != null) {\n item.details.sections.forEach((section: any) => {\n if (section.fields != null) {\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\n }\n });\n }\n }\n }\n\n private processStandardItem(item: any, cipher: CipherView) {\n cipher.favorite = item.openContents && item.openContents.faveIndex ? true : false;\n cipher.name = this.getValueOrDefault(item.title);\n\n if (item.typeName === 'securenotes.SecureNote') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n } else if (item.typeName === 'wallet.financial.CreditCard') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n } else {\n cipher.login.uris = this.makeUriArray(item.location);\n }\n\n if (item.secureContents != null) {\n if (!this.isNullOrWhitespace(item.secureContents.notesPlain)) {\n cipher.notes = item.secureContents.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\n }\n if (cipher.type === CipherType.Login) {\n if (!this.isNullOrWhitespace(item.secureContents.password)) {\n cipher.login.password = item.secureContents.password;\n }\n if (item.secureContents.URLs != null) {\n const urls: string[] = [];\n item.secureContents.URLs.forEach((u: any) => {\n if (!this.isNullOrWhitespace(u.url)) {\n urls.push(u.url);\n }\n });\n if (urls.length > 0) {\n cipher.login.uris = this.makeUriArray(urls);\n }\n }\n }\n if (item.secureContents.fields != null) {\n this.parseFields(item.secureContents.fields, cipher, 'designation', 'value', 'name');\n }\n if (item.secureContents.sections != null) {\n item.secureContents.sections.forEach((section: any) => {\n if (section.fields != null) {\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\n }\n });\n }\n }\n }\n\n private parseFields(fields: any[], cipher: CipherView, designationKey: string, valueKey: string, nameKey: string) {\n fields.forEach((field: any) => {\n if (field[valueKey] == null || field[valueKey].toString().trim() === '') {\n return;\n }\n\n const fieldValue = field[valueKey].toString();\n const fieldDesignation = field[designationKey] != null ? field[designationKey].toString() : null;\n\n if (cipher.type === CipherType.Login) {\n if (this.isNullOrWhitespace(cipher.login.username) && fieldDesignation === 'username') {\n cipher.login.username = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.login.password) && fieldDesignation === 'password') {\n cipher.login.password = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.login.totp) && fieldDesignation != null &&\n fieldDesignation.startsWith('TOTP_')) {\n cipher.login.totp = fieldValue;\n return;\n }\n } else if (cipher.type === CipherType.Card) {\n if (this.isNullOrWhitespace(cipher.card.number) && fieldDesignation === 'ccnum') {\n cipher.card.number = fieldValue;\n cipher.card.brand = this.getCardBrand(fieldValue);\n return;\n } else if (this.isNullOrWhitespace(cipher.card.code) && fieldDesignation === 'cvv') {\n cipher.card.code = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && fieldDesignation === 'cardholder') {\n cipher.card.cardholderName = fieldValue;\n return;\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && fieldDesignation === 'expiry' &&\n fieldValue.length === 6) {\n cipher.card.expMonth = (fieldValue as string).substr(4, 2);\n if (cipher.card.expMonth[0] === '0') {\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\n }\n cipher.card.expYear = (fieldValue as string).substr(0, 4);\n return;\n } else if (fieldDesignation === 'type') {\n // Skip since brand was determined from number above\n return;\n }\n }\n\n const fieldName = this.isNullOrWhitespace(field[nameKey]) ? 'no_name' : field[nameKey];\n this.processKvp(cipher, fieldName, fieldValue);\n });\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 { 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';\nimport { Importer } from './importer';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\n\nexport class RememBearCsvImporter 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.trash === 'true') {\n return;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.notes = this.getValueOrDefault(value.notes);\n if (value.type === 'LoginItem') {\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.username);\n } else if (value.type === 'CreditCardItem') {\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 cipher.card.code = this.getValueOrDefault(value.verification);\n\n try {\n const expMonth = this.getValueOrDefault(value.expiryMonth);\n if (expMonth != null) {\n const expMonthNumber = parseInt(expMonth, null);\n if (expMonthNumber != null && expMonthNumber >= 1 && expMonthNumber <= 12) {\n cipher.card.expMonth = expMonthNumber.toString();\n }\n }\n } catch { }\n try {\n const expYear = this.getValueOrDefault(value.expiryYear);\n if (expYear != null) {\n const expYearNumber = parseInt(expYear, null);\n if (expYearNumber != null) {\n cipher.card.expYear = expYearNumber.toString();\n }\n }\n } catch { }\n\n const pin = this.getValueOrDefault(value.pin);\n if (pin != null) {\n this.processKvp(cipher, 'PIN', pin);\n }\n const zip = this.getValueOrDefault(value.zipCode);\n if (zip != null) {\n this.processKvp(cipher, 'Zip Code', zip);\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 RoboFormCsvImporter 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 let i = 1;\n results.forEach((value) => {\n const folder = !this.isNullOrWhitespace(value.Folder) && value.Folder.startsWith('/') ?\n value.Folder.replace('/', '') : value.Folder;\n const folderName = !this.isNullOrWhitespace(folder) ? folder : null;\n this.processFolder(result, folderName);\n\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value.Note);\n cipher.name = this.getValueOrDefault(value.Name, '--');\n cipher.login.username = this.getValueOrDefault(value.Login);\n cipher.login.password = this.getValueOrDefault(value.Pwd);\n cipher.login.uris = this.makeUriArray(value.Url);\n\n if (!this.isNullOrWhitespace(value.Rf_fields)) {\n let fields: string[] = [value.Rf_fields];\n if (value.__parsed_extra != null && value.__parsed_extra.length > 0) {\n fields = fields.concat(value.__parsed_extra);\n }\n fields.forEach((field: string) => {\n const parts = field.split(':');\n if (parts.length < 3) {\n return;\n }\n const key = parts[0] === '-no-name-' ? null : parts[0];\n const val = parts.length === 4 && parts[2] === 'rck' ? parts[1] : parts[2];\n this.processKvp(cipher, key, val);\n });\n }\n\n this.cleanupCipher(cipher);\n\n if (i === results.length && cipher.name === '--' && this.isNullOrWhitespace(cipher.login.password)) {\n return;\n }\n\n result.ciphers.push(cipher);\n i++;\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\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';\nimport * as signalRMsgPack from '@aspnet/signalr-protocol-msgpack';\n\nimport { NotificationType } from '../enums/notificationType';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { EnvironmentService } from '../abstractions/environment.service';\nimport { LockService } from '../abstractions/lock.service';\nimport { NotificationsService as NotificationsServiceAbstraction } from '../abstractions/notifications.service';\nimport { SyncService } from '../abstractions/sync.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport {\n NotificationResponse,\n SyncCipherNotification,\n SyncFolderNotification,\n} from '../models/response/notificationResponse';\n\nexport class NotificationsService implements NotificationsServiceAbstraction {\n private signalrConnection: signalR.HubConnection;\n private url: string;\n private connected = false;\n private inited = false;\n private inactive = false;\n private reconnectTimer: any = null;\n\n constructor(private userService: UserService, private syncService: SyncService,\n private appIdService: AppIdService, private apiService: ApiService,\n private lockService: LockService, private logoutCallback: () => Promise) { }\n\n async init(environmentService: EnvironmentService): Promise {\n this.inited = false;\n this.url = 'https://notifications.bitwarden.com';\n if (environmentService.notificationsUrl != null) {\n this.url = environmentService.notificationsUrl;\n } else if (environmentService.baseUrl != null) {\n this.url = environmentService.baseUrl + '/notifications';\n }\n\n // Set notifications server URL to `https://-` to effectively disable communication\n // with the notifications server from the client app\n if (this.url === 'https://-') {\n return;\n }\n\n if (this.signalrConnection != null) {\n this.signalrConnection.off('ReceiveMessage');\n await this.signalrConnection.stop();\n this.connected = false;\n this.signalrConnection = null;\n }\n\n this.signalrConnection = new signalR.HubConnectionBuilder()\n .withUrl(this.url + '/hub', {\n accessTokenFactory: () => this.apiService.getActiveBearerToken(),\n })\n .withHubProtocol(new signalRMsgPack.MessagePackHubProtocol())\n // .configureLogging(signalR.LogLevel.Trace)\n .build();\n\n this.signalrConnection.on('ReceiveMessage',\n (data: any) => this.processNotification(new NotificationResponse(data)));\n this.signalrConnection.onclose(() => {\n this.connected = false;\n this.reconnect(true);\n });\n this.inited = true;\n if (await this.isAuthedAndUnlocked()) {\n await this.reconnect(false);\n }\n }\n\n async updateConnection(sync = false): Promise {\n if (!this.inited) {\n return;\n }\n try {\n if (await this.isAuthedAndUnlocked()) {\n await this.reconnect(sync);\n } else {\n await this.signalrConnection.stop();\n }\n } catch (e) {\n // tslint:disable-next-line\n console.error(e.toString());\n }\n }\n\n async reconnectFromActivity(): Promise {\n this.inactive = false;\n if (this.inited && !this.connected) {\n await this.reconnect(true);\n }\n }\n\n async disconnectFromInactivity(): Promise {\n this.inactive = true;\n if (this.inited && this.connected) {\n await this.signalrConnection.stop();\n }\n }\n\n private async processNotification(notification: NotificationResponse) {\n const appId = await this.appIdService.getAppId();\n if (notification == null || notification.contextId === appId) {\n return;\n }\n\n const isAuthenticated = await this.userService.isAuthenticated();\n const payloadUserId = notification.payload.userId || notification.payload.UserId;\n const myUserId = await this.userService.getUserId();\n if (isAuthenticated && payloadUserId != null && payloadUserId !== myUserId) {\n return;\n }\n\n switch (notification.type) {\n case NotificationType.SyncCipherCreate:\n case NotificationType.SyncCipherUpdate:\n await this.syncService.syncUpsertCipher(notification.payload as SyncCipherNotification,\n notification.type === NotificationType.SyncCipherUpdate);\n break;\n case NotificationType.SyncCipherDelete:\n case NotificationType.SyncLoginDelete:\n await this.syncService.syncDeleteCipher(notification.payload as SyncCipherNotification);\n break;\n case NotificationType.SyncFolderCreate:\n case NotificationType.SyncFolderUpdate:\n await this.syncService.syncUpsertFolder(notification.payload as SyncFolderNotification,\n notification.type === NotificationType.SyncFolderUpdate);\n break;\n case NotificationType.SyncFolderDelete:\n await this.syncService.syncDeleteFolder(notification.payload as SyncFolderNotification);\n break;\n case NotificationType.SyncVault:\n case NotificationType.SyncCiphers:\n case NotificationType.SyncSettings:\n if (isAuthenticated) {\n await this.syncService.fullSync(false);\n }\n break;\n case NotificationType.SyncOrgKeys:\n if (isAuthenticated) {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n // Stop so a reconnect can be made\n await this.signalrConnection.stop();\n }\n break;\n case NotificationType.LogOut:\n if (isAuthenticated) {\n this.logoutCallback();\n }\n break;\n default:\n break;\n }\n }\n\n private async reconnect(sync: boolean) {\n if (this.reconnectTimer != null) {\n clearTimeout(this.reconnectTimer);\n this.reconnectTimer = null;\n }\n if (this.connected || !this.inited || this.inactive) {\n return;\n }\n const authedAndUnlocked = await this.isAuthedAndUnlocked();\n if (!authedAndUnlocked) {\n return;\n }\n\n try {\n await this.signalrConnection.start();\n this.connected = true;\n if (sync) {\n await this.syncService.fullSync(false);\n }\n } catch { }\n\n if (!this.connected) {\n this.reconnectTimer = setTimeout(() => this.reconnect(sync), this.random(120000, 300000));\n }\n }\n\n private async isAuthedAndUnlocked() {\n if (await this.userService.isAuthenticated()) {\n const locked = await this.lockService.isLocked();\n return !locked;\n }\n return false;\n }\n\n private random(min: number, max: number) {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1)) + min;\n }\n}\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';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { CipherService } from '../abstractions/cipher.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { SearchService as SearchServiceAbstraction } from '../abstractions/search.service';\n\nimport { CipherType } from '../enums/cipherType';\nimport { DeviceType } from '../enums/deviceType';\nimport { FieldType } from '../enums/fieldType';\nimport { UriMatchType } from '../enums/uriMatchType';\n\nexport class SearchService implements SearchServiceAbstraction {\n private indexing = false;\n private index: lunr.Index = null;\n private onlySearchName = false;\n\n constructor(private cipherService: CipherService, platformUtilsService: PlatformUtilsService) {\n this.onlySearchName = platformUtilsService == null ||\n platformUtilsService.getDevice() === DeviceType.EdgeExtension;\n }\n\n clearIndex(): void {\n this.index = null;\n }\n\n isSearchable(query: string): boolean {\n const notSearchable = query == null || (this.index == null && query.length < 2) ||\n (this.index != null && query.length < 2 && query.indexOf('>') !== 0);\n return !notSearchable;\n }\n\n async indexCiphers(): Promise {\n if (this.indexing) {\n return;\n }\n // tslint:disable-next-line\n console.time('search indexing');\n this.indexing = true;\n this.index = null;\n const builder = new lunr.Builder();\n builder.ref('id');\n (builder as any).field('shortid', { boost: 100, extractor: (c: CipherView) => c.id.substr(0, 8) });\n (builder as any).field('name', { boost: 10 });\n (builder as any).field('subtitle', {\n boost: 5,\n extractor: (c: CipherView) => {\n if (c.subTitle != null && c.type === CipherType.Card) {\n return c.subTitle.replace(/\\*/g, '');\n }\n return c.subTitle;\n },\n });\n builder.field('notes');\n (builder as any).field('login.username', {\n extractor: (c: CipherView) => c.type === CipherType.Login && c.login != null ? c.login.username : null,\n });\n (builder as any).field('login.uris', { boost: 2, extractor: (c: CipherView) => this.uriExtractor(c) });\n (builder as any).field('fields', { extractor: (c: CipherView) => this.fieldExtractor(c, false) });\n (builder as any).field('fields_joined', { extractor: (c: CipherView) => this.fieldExtractor(c, true) });\n (builder as any).field('attachments', { extractor: (c: CipherView) => this.attachmentExtractor(c, false) });\n (builder as any).field('attachments_joined',\n { extractor: (c: CipherView) => this.attachmentExtractor(c, true) });\n (builder as any).field('organizationid', { extractor: (c: CipherView) => c.organizationId });\n const ciphers = await this.cipherService.getAllDecrypted();\n ciphers.forEach((c) => builder.add(c));\n this.index = builder.build();\n this.indexing = false;\n // tslint:disable-next-line\n console.timeEnd('search indexing');\n }\n\n async searchCiphers(query: string, filter: (cipher: CipherView) => boolean = null, ciphers: CipherView[] = null):\n Promise {\n const results: CipherView[] = [];\n if (query != null) {\n query = query.trim().toLowerCase();\n }\n if (query === '') {\n query = null;\n }\n\n if (ciphers == null) {\n ciphers = await this.cipherService.getAllDecrypted();\n }\n if (filter != null) {\n ciphers = ciphers.filter(filter);\n }\n\n if (!this.isSearchable(query)) {\n return ciphers;\n }\n\n const index = this.getIndexForSearch();\n if (index == null) {\n // Fall back to basic search if index is not available\n return this.searchCiphersBasic(ciphers, query);\n }\n\n const ciphersMap = new Map();\n ciphers.forEach((c) => ciphersMap.set(c.id, c));\n\n let searchResults: lunr.Index.Result[] = null;\n const isQueryString = query != null && query.length > 1 && query.indexOf('>') === 0;\n if (isQueryString) {\n try {\n searchResults = index.search(query.substr(1).trim());\n } catch { }\n } else {\n // tslint:disable-next-line\n const soWild = lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING;\n searchResults = index.query((q) => {\n lunr.tokenizer(query).forEach((token) => {\n const t = token.toString();\n q.term(t, { fields: ['name'], wildcard: soWild });\n q.term(t, { fields: ['subtitle'], wildcard: soWild });\n q.term(t, { fields: ['login.uris'], wildcard: soWild });\n q.term(t, {});\n });\n });\n }\n\n if (searchResults != null) {\n searchResults.forEach((r) => {\n if (ciphersMap.has(r.ref)) {\n results.push(ciphersMap.get(r.ref));\n }\n });\n }\n return results;\n }\n\n searchCiphersBasic(ciphers: CipherView[], query: string) {\n query = query.trim().toLowerCase();\n return ciphers.filter((c) => {\n if (c.name != null && c.name.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n if (this.onlySearchName) {\n return false;\n }\n if (query.length >= 8 && c.id.startsWith(query)) {\n return true;\n }\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(query) > -1) {\n return true;\n }\n return false;\n });\n }\n\n getIndexForSearch(): lunr.Index {\n return this.index;\n }\n\n private fieldExtractor(c: CipherView, joined: boolean) {\n if (!c.hasFields) {\n return null;\n }\n let fields: string[] = [];\n c.fields.forEach((f) => {\n if (f.name != null) {\n fields.push(f.name);\n }\n if (f.type === FieldType.Text && f.value != null) {\n fields.push(f.value);\n }\n });\n fields = fields.filter((f) => f.trim() !== '');\n if (fields.length === 0) {\n return null;\n }\n return joined ? fields.join(' ') : fields;\n }\n\n private attachmentExtractor(c: CipherView, joined: boolean) {\n if (!c.hasAttachments) {\n return null;\n }\n let attachments: string[] = [];\n c.attachments.forEach((a) => {\n if (a != null && a.fileName != null) {\n if (joined && a.fileName.indexOf('.') > -1) {\n attachments.push(a.fileName.substr(0, a.fileName.lastIndexOf('.')));\n } else {\n attachments.push(a.fileName);\n }\n }\n });\n attachments = attachments.filter((f) => f.trim() !== '');\n if (attachments.length === 0) {\n return null;\n }\n return joined ? attachments.join(' ') : attachments;\n }\n\n private uriExtractor(c: CipherView) {\n if (c.type !== CipherType.Login || c.login == null || !c.login.hasUris) {\n return null;\n }\n const uris: string[] = [];\n c.login.uris.forEach((u) => {\n if (u.uri == null || u.uri === '') {\n return;\n }\n if (u.hostname != null) {\n uris.push(u.hostname);\n return;\n }\n let uri = u.uri;\n if (u.match !== UriMatchType.RegularExpression) {\n const protocolIndex = uri.indexOf('://');\n if (protocolIndex > -1) {\n uri = uri.substr(protocolIndex + 3);\n }\n const queryIndex = uri.search(/\\?|&|#/);\n if (queryIndex > -1) {\n uri = uri.substring(0, queryIndex);\n }\n }\n uris.push(uri);\n });\n return uris.length > 0 ? uris : null;\n }\n}\n","import * as forge from 'node-forge';\r\n\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { DecryptParameters } from '../models/domain/decryptParameters';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nexport class WebCryptoFunctionService implements CryptoFunctionService {\r\n private crypto: Crypto;\r\n private subtle: SubtleCrypto;\r\n private isEdge: boolean;\r\n private isIE: boolean;\r\n private isOldSafari: boolean;\r\n\r\n constructor(private win: Window, private platformUtilsService: PlatformUtilsService) {\r\n this.crypto = typeof win.crypto !== 'undefined' ? win.crypto : null;\r\n this.subtle = (!!this.crypto && typeof win.crypto.subtle !== 'undefined') ? win.crypto.subtle : null;\r\n this.isEdge = platformUtilsService.isEdge();\r\n this.isIE = platformUtilsService.isIE();\r\n const ua = win.navigator.userAgent;\r\n this.isOldSafari = platformUtilsService.isSafari() &&\r\n (ua.indexOf(' Version/10.') > -1 || ua.indexOf(' Version/9.') > -1);\r\n }\r\n\r\n async pbkdf2(password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\r\n iterations: number): Promise {\r\n if (this.isEdge || this.isIE || this.isOldSafari) {\r\n const forgeLen = algorithm === 'sha256' ? 32 : 64;\r\n const passwordBytes = this.toByteString(password);\r\n const saltBytes = this.toByteString(salt);\r\n const derivedKeyBytes = (forge as any).pbkdf2(passwordBytes, saltBytes, iterations, forgeLen, algorithm);\r\n return Utils.fromByteStringToArray(derivedKeyBytes).buffer;\r\n }\r\n\r\n const wcLen = algorithm === 'sha256' ? 256 : 512;\r\n const passwordBuf = this.toBuf(password);\r\n const saltBuf = this.toBuf(salt);\r\n\r\n const pbkdf2Params: Pbkdf2Params = {\r\n name: 'PBKDF2',\r\n salt: saltBuf,\r\n iterations: iterations,\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', passwordBuf, { name: 'PBKDF2' } as any,\r\n false, ['deriveBits']);\r\n return await this.subtle.deriveBits(pbkdf2Params, impKey, wcLen);\r\n }\r\n\r\n async hash(value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): Promise {\r\n if (((this.isEdge || this.isIE) && algorithm === 'sha1') || algorithm === 'md5') {\r\n const md = algorithm === 'md5' ? forge.md.md5.create() : forge.md.sha1.create();\r\n const valueBytes = this.toByteString(value);\r\n md.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(md.digest().data).buffer;\r\n }\r\n\r\n const valueBuf = this.toBuf(value);\r\n return await this.subtle.digest({ name: this.toWebCryptoAlgorithm(algorithm) }, valueBuf);\r\n }\r\n\r\n async hmac(value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n if (this.isIE && algorithm === 'sha512') {\r\n const hmac = (forge as any).hmac.create();\r\n const keyBytes = this.toByteString(key);\r\n const valueBytes = this.toByteString(value);\r\n hmac.start(algorithm, keyBytes);\r\n hmac.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(hmac.digest().data).buffer;\r\n }\r\n\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', key, signingAlgorithm, false, ['sign']);\r\n return await this.subtle.sign(signingAlgorithm, impKey, value);\r\n }\r\n\r\n // Safely compare two values in a way that protects against timing attacks (Double HMAC Verification).\r\n // ref: https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/february/double-hmac-verification/\r\n // ref: https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-string-comparison-with-double-hmac-strategy\r\n async compare(a: ArrayBuffer, b: ArrayBuffer): Promise {\r\n const macKey = await this.randomBytes(32);\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: 'SHA-256' },\r\n };\r\n const impKey = await this.subtle.importKey('raw', macKey, signingAlgorithm, false, ['sign']);\r\n const mac1 = await this.subtle.sign(signingAlgorithm, impKey, a);\r\n const mac2 = await this.subtle.sign(signingAlgorithm, impKey, b);\r\n\r\n if (mac1.byteLength !== mac2.byteLength) {\r\n return false;\r\n }\r\n\r\n const arr1 = new Uint8Array(mac1);\r\n const arr2 = new Uint8Array(mac2);\r\n for (let i = 0; i < arr2.length; i++) {\r\n if (arr1[i] !== arr2[i]) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n hmacFast(value: string, key: string, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start(algorithm, key);\r\n hmac.update(value);\r\n const bytes = hmac.digest().getBytes();\r\n return Promise.resolve(bytes);\r\n }\r\n\r\n async compareFast(a: string, b: string): Promise {\r\n const rand = await this.randomBytes(32);\r\n const bytes = new Uint32Array(rand);\r\n const buffer = forge.util.createBuffer();\r\n for (let i = 0; i < bytes.length; i++) {\r\n buffer.putInt32(bytes[i]);\r\n }\r\n const macKey = buffer.getBytes();\r\n\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start('sha256', macKey);\r\n hmac.update(a);\r\n const mac1 = hmac.digest().getBytes();\r\n\r\n hmac.start(null, null);\r\n hmac.update(b);\r\n const mac2 = hmac.digest().getBytes();\r\n\r\n const equals = mac1 === mac2;\r\n return equals;\r\n }\r\n\r\n async aesEncrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['encrypt']);\r\n return await this.subtle.encrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n aesDecryptFastParameters(data: string, iv: string, mac: string, key: SymmetricCryptoKey):\r\n DecryptParameters {\r\n const p = new DecryptParameters();\r\n if (key.meta != null) {\r\n p.encKey = key.meta.encKeyByteString;\r\n p.macKey = key.meta.macKeyByteString;\r\n }\r\n\r\n if (p.encKey == null) {\r\n p.encKey = forge.util.decode64(key.encKeyB64);\r\n }\r\n p.data = forge.util.decode64(data);\r\n p.iv = forge.util.decode64(iv);\r\n p.macData = p.iv + p.data;\r\n if (p.macKey == null && key.macKeyB64 != null) {\r\n p.macKey = forge.util.decode64(key.macKeyB64);\r\n }\r\n if (mac != null) {\r\n p.mac = forge.util.decode64(mac);\r\n }\r\n\r\n // cache byte string keys for later\r\n if (key.meta == null) {\r\n key.meta = {};\r\n }\r\n if (key.meta.encKeyByteString == null) {\r\n key.meta.encKeyByteString = p.encKey;\r\n }\r\n if (p.macKey != null && key.meta.macKeyByteString == null) {\r\n key.meta.macKeyByteString = p.macKey;\r\n }\r\n\r\n return p;\r\n }\r\n\r\n aesDecryptFast(parameters: DecryptParameters): Promise {\r\n const dataBuffer = (forge as any).util.createBuffer(parameters.data);\r\n const decipher = (forge as any).cipher.createDecipher('AES-CBC', parameters.encKey);\r\n decipher.start({ iv: parameters.iv });\r\n decipher.update(dataBuffer);\r\n decipher.finish();\r\n const val = decipher.output.toString('utf8');\r\n return Promise.resolve(val);\r\n }\r\n\r\n async aesDecrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['decrypt']);\r\n return await this.subtle.decrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('spki', publicKey, rsaParams, false, ['encrypt']);\r\n return await this.subtle.encrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaDecrypt(data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, false, ['decrypt']);\r\n return await this.subtle.decrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaExtractPublicKey(privateKey: ArrayBuffer): Promise {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const impPrivateKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, true, ['decrypt']);\r\n const jwkPrivateKey = await this.subtle.exportKey('jwk', impPrivateKey);\r\n const jwkPublicKeyParams = {\r\n kty: 'RSA',\r\n e: jwkPrivateKey.e,\r\n n: jwkPrivateKey.n,\r\n alg: 'RSA-OAEP',\r\n ext: true,\r\n };\r\n const impPublicKey = await this.subtle.importKey('jwk', jwkPublicKeyParams, rsaParams, true, ['encrypt']);\r\n return await this.subtle.exportKey('spki', impPublicKey);\r\n }\r\n\r\n async rsaGenerateKeyPair(length: 1024 | 2048 | 4096): Promise<[ArrayBuffer, ArrayBuffer]> {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n modulusLength: length,\r\n publicExponent: new Uint8Array([0x01, 0x00, 0x01]), // 65537\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const keyPair = await this.subtle.generateKey(rsaParams, true, ['encrypt', 'decrypt']);\r\n const publicKey = await this.subtle.exportKey('spki', keyPair.publicKey);\r\n const privateKey = await this.subtle.exportKey('pkcs8', keyPair.privateKey);\r\n return [publicKey, privateKey];\r\n }\r\n\r\n randomBytes(length: number): Promise {\r\n const arr = new Uint8Array(length);\r\n this.crypto.getRandomValues(arr);\r\n return Promise.resolve(arr.buffer);\r\n }\r\n\r\n private toBuf(value: string | ArrayBuffer): ArrayBuffer {\r\n let buf: ArrayBuffer;\r\n if (typeof (value) === 'string') {\r\n buf = Utils.fromUtf8ToArray(value).buffer;\r\n } else {\r\n buf = value;\r\n }\r\n return buf;\r\n }\r\n\r\n private toByteString(value: string | ArrayBuffer): string {\r\n let bytes: string;\r\n if (typeof (value) === 'string') {\r\n bytes = forge.util.encodeUtf8(value);\r\n } else {\r\n bytes = Utils.fromBufferToByteString(value);\r\n }\r\n return bytes;\r\n }\r\n\r\n private toWebCryptoAlgorithm(algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): string {\r\n if (algorithm === 'md5') {\r\n throw new Error('MD5 is not supported in WebCrypto.');\r\n }\r\n return algorithm === 'sha1' ? 'SHA-1' : algorithm === 'sha256' ? 'SHA-256' : 'SHA-512';\r\n }\r\n}\r\n","export class DecryptParameters {\n encKey: T;\n data: T;\n iv: T;\n macKey: T;\n mac: T;\n macData: T;\n}\n","import { NgModule } from '@angular/core';\nimport {\n RouterModule,\n Routes,\n} from '@angular/router';\n\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingsComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { VaultComponent } from './vault/vault.component';\n\nimport { OrganizationGuardService } from './services/organization-guard.service';\nimport { OrganizationTypeGuardService } from './services/organization-type-guard.service';\nimport { UnauthGuardService } from './services/unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\n\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nconst routes: Routes = [\n {\n path: '',\n component: FrontendLayoutComponent,\n children: [\n { path: '', pathMatch: 'full', component: LoginComponent, canActivate: [UnauthGuardService] },\n { path: '2fa', component: TwoFactorComponent, canActivate: [UnauthGuardService] },\n {\n path: 'register', component: RegisterComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'createAccount' },\n },\n {\n path: 'hint', component: HintComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'passwordHint' },\n },\n { path: 'lock', component: LockComponent },\n { path: 'verify-email', component: VerifyEmailTokenComponent },\n {\n path: 'accept-organization',\n component: AcceptOrganizationComponent,\n data: { titleId: 'joinOrganization' },\n },\n { path: 'recover', pathMatch: 'full', redirectTo: 'recover-2fa' },\n {\n path: 'recover-2fa',\n component: RecoverTwoFactorComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'recoverAccountTwoStep' },\n },\n {\n path: 'recover-delete',\n component: RecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n {\n path: 'verify-recover-delete',\n component: VerifyRecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n ],\n },\n {\n path: '',\n component: UserLayoutComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: 'vault', component: VaultComponent, data: { titleId: 'myVault' } },\n {\n path: 'settings',\n component: SettingsComponent,\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: AccountComponent, data: { titleId: 'myAccount' } },\n { path: 'options', component: OptionsComponent, data: { titleId: 'options' } },\n { path: 'domain-rules', component: DomainRulesComponent, data: { titleId: 'domainRules' } },\n { path: 'two-factor', component: TwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n { path: 'premium', component: PremiumComponent, data: { titleId: 'goPremium' } },\n { path: 'billing', component: UserBillingComponent, data: { titleId: 'billingAndLicensing' } },\n { path: 'organizations', component: OrganizationsComponent, data: { titleId: 'organizations' } },\n {\n path: 'create-organization',\n component: CreateOrganizationComponent,\n data: { titleId: 'newOrganization' },\n },\n ],\n },\n {\n path: 'tools',\n component: ToolsComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'generator' },\n { path: 'import', component: ImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: ExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'generator',\n component: PasswordGeneratorComponent,\n data: { titleId: 'passwordGenerator' },\n },\n { path: 'breach-report', component: BreachReportComponent, data: { titleId: 'dataBreachReport' } },\n {\n path: 'reused-passwords-report',\n component: ReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: UnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: WeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n {\n path: 'exposed-passwords-report',\n component: ExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: InactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n ],\n },\n ],\n },\n {\n path: 'organizations/:organizationId',\n component: OrganizationLayoutComponent,\n canActivate: [AuthGuardService, OrganizationGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'vault' },\n { path: 'vault', component: OrgVaultComponent, data: { titleId: 'vault' } },\n {\n path: 'tools',\n component: OrgToolsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner, OrganizationUserType.Admin] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'import' },\n { path: 'import', component: OrgImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: OrgExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'exposed-passwords-report',\n component: OrgExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: OrgInactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n {\n path: 'reused-passwords-report',\n component: OrgReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: OrgUnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: OrgWeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n ],\n },\n {\n path: 'manage',\n component: OrgManageComponent,\n canActivate: [OrganizationTypeGuardService],\n data: {\n allowedTypes: [\n OrganizationUserType.Owner,\n OrganizationUserType.Admin,\n OrganizationUserType.Manager,\n ],\n },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'people' },\n { path: 'collections', component: OrgManageCollectionsComponent, data: { titleId: 'collections' } },\n { path: 'events', component: OrgEventsComponent, data: { titleId: 'eventLogs' } },\n { path: 'groups', component: OrgGroupsComponent, data: { titleId: 'groups' } },\n { path: 'people', component: OrgPeopleComponent, data: { titleId: 'people' } },\n ],\n },\n {\n path: 'settings',\n component: OrgSettingsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: OrgAccountComponent, data: { titleId: 'myOrganization' } },\n { path: 'two-factor', component: OrgTwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n {\n path: 'billing',\n component: OrganizationBillingComponent,\n data: { titleId: 'billingAndLicensing' },\n },\n ],\n },\n ],\n },\n { path: '**', redirectTo: '' },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {\n useHash: true,\n /*enableTracing: true,*/\n })],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n"],"sourceRoot":""} \ No newline at end of file diff --git a/app/polyfills.24b12cf2806f2044ae5c.js b/app/polyfills.f2c043f2c68a31a9eee7.js similarity index 99% rename from app/polyfills.24b12cf2806f2044ae5c.js rename to app/polyfills.f2c043f2c68a31a9eee7.js index 91558fab..fe55754d 100644 --- a/app/polyfills.24b12cf2806f2044ae5c.js +++ b/app/polyfills.f2c043f2c68a31a9eee7.js @@ -100,4 +100,4 @@ Zone.__load_patch("util",function(t,e,n){n.patchOnProperties=M,n.patchMethod=R,n * @license MIT */ o="undefined"!=typeof self?self:this,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){var n=e.subtle||e.webkitSubtle;if(n){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){var c={KoZIhvcNAQEB:"1.2.840.113549.1.1.1"},s={"1.2.840.113549.1.1.1":"KoZIhvcNAQEB"};if(["generateKey","importKey","unwrapKey"].forEach(function(t){var r=n[t];n[t]=function(o,i,c){var s,f,m,S,x,E=[].slice.call(arguments);switch(t){case"generateKey":s=d(o),f=i,m=c;break;case"importKey":s=d(c),f=E[3],m=E[4],"jwk"===o&&((i=g(i)).alg||(i.alg=y(s)),i.key_ops||(i.key_ops="oct"!==i.kty?"d"in i?m.filter(k):m.filter(w):m.slice()),E[1]=(x=g(i),a&&(x.extractable=x.ext,delete x.ext),p(unescape(encodeURIComponent(JSON.stringify(x)))).buffer));break;case"unwrapKey":s=E[4],f=E[5],m=E[6],E[2]=c._key}if("generateKey"===t&&"HMAC"===s.name&&s.hash)return s.length=s.length||{"SHA-1":512,"SHA-256":512,"SHA-384":1024,"SHA-512":1024}[s.hash.name],n.importKey("raw",e.getRandomValues(new Uint8Array(s.length+7>>3)),s,f,m);if(u&&"generateKey"===t&&"RSASSA-PKCS1-v1_5"===s.name&&(!s.modulusLength||s.modulusLength>=2048))return(o=d(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=y(s),t[0].key_ops=m.filter(w),t[1].key_ops=m.filter(k),Promise.all([n.importKey("jwk",t[0],s,!0,t[0].key_ops),n.importKey("jwk",t[1],s,f,t[1].key_ops)])}).then(function(t){return{publicKey:t[0],privateKey:t[1]}});if((u||a&&"SHA-1"===(s.hash||{}).name)&&"importKey"===t&&"jwk"===o&&"HMAC"===s.name&&"oct"===i.kty)return n.importKey("raw",p(h(i.k)),c,E[3],E[4]);if(u&&"importKey"===t&&("spki"===o||"pkcs8"===o))return n.importKey("jwk",function(t){var e=b(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=b(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}(g(t))})),c}}),["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=d(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 f=n.digest;n.digest=function(t,e){if(!e.byteLength)throw new Error("Empy input is not allowed");var r;try{r=f.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=_}u&&(e.subtle=n,t.Crypto=r,t.SubtleCrypto=o,t.CryptoKey=_)}}}function l(t){return btoa(t).replace(/\=+$/,"").replace(/\+/g,"-").replace(/\//g,"_")}function h(t){return t=(t+="===").slice(0,-t.length%4),atob(t.replace(/-/g,"+").replace(/_/g,"/"))}function p(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 _(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 w(t){return"verify"===t||"encrypt"===t||"wrapKey"===t}function k(t){return"sign"===t||"decrypt"===t||"unwrapKey"===t}}(o)}.apply(e,[]))||(t.exports=r)}]); -//# sourceMappingURL=polyfills.24b12cf2806f2044ae5c.js.map \ No newline at end of file +//# sourceMappingURL=polyfills.f2c043f2c68a31a9eee7.js.map \ No newline at end of file diff --git a/app/polyfills.24b12cf2806f2044ae5c.js.map b/app/polyfills.f2c043f2c68a31a9eee7.js.map similarity index 99% rename from app/polyfills.24b12cf2806f2044ae5c.js.map rename to app/polyfills.f2c043f2c68a31a9eee7.js.map index 6c43d1f6..914ff910 100644 --- a/app/polyfills.24b12cf2806f2044ae5c.js.map +++ b/app/polyfills.f2c043f2c68a31a9eee7.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/_to-length.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-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/_to-integer.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-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/_classof.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:///./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:///(webpack)/buildin/global.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/_flags.js","webpack:///./node_modules/core-js/modules/_species-constructor.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/_regexp-exec-abstract.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/_string-at.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/_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/_regexp-exec.js","webpack:///./node_modules/core-js/modules/_advance-string-index.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/_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/_same-value.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.exec.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/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","toInteger","min","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","a","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","ceil","floor","isNaN","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","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","cof","ARG","T","tryGet","callee","UNSCOPABLES","DESCRIPTORS","SPECIES","Constructor","forbiddenField","BREAK","RETURN","iterable","def","stat","_t","g","propertyIsEnumerable","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","ignoreCase","multiline","unicode","sticky","D","copyright","getOwnPropertySymbols","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","builtinExec","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","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","TO_STRING","pos","charCodeAt","charAt","$iterCreate","BUGGY","returnThis","DEFAULT","IS_SET","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","MATCH","isRegExp","is","createElement","documentElement","check","setPrototypeOf","buggy","__proto__","sign","x","$expm1","expm1","descriptor","searchString","endPos","re1","re2","regexpFlags","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","lastIndex","reCopy","match","at","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","$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","PromiseCapability","resolve","reject","promise","$$resolve","$$reject","navigator","userAgent","wksExt","$Symbol","names","defineProperties","windowNames","getWindowNames","y","factories","partArgs","bound","construct","$parseInt","parseInt","$trim","ws","hex","radix","$parseFloat","parseFloat","msg","isFinite","log1p","ret","original","memo","isRight","to","inc","forced","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","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","FProto","nameRE","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","$flags","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","proxy","define","advanceStringIndex","regExpExec","$match","maybeCallNative","rx","fullUnicode","matchStr","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","sameValue","SEARCH","$search","previousLastIndex","callRegExpExec","$min","$push","SUPPORTS_Y","SPLIT","$split","internalSplit","limit","lastLength","output","lastLastIndex","splitLimit","separatorCopy","splitter","unicodeMatching","lim","q","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","performance","mark","performanceMeasure","label","checkDuplicate","__symbol__","Error","nativeMicroTaskQueuePromise","Zone","zoneSpec","_parent","_name","_properties","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","macroTask","reEntryGuard","running","_transitionTo","scheduled","runCount","previousTask","isPeriodic","cancelFn","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","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","nativeThen","onUnhandledError","microtaskDrainDone","symbol","currentZoneFrame","noop","showUncaughtError","patchEventTarget","patchOnProperties","patchMethod","bindArguments","patchThen","setNativePromise","NativePromise","__values","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","e_1","rej","onResolve","onReject","values_1","values_1_1","e_1_1","return","e_2","unresolvedCount","valueIndex","resolvedValues","_loop_2","this_1","curValueIndex","values_2","values_2_1","e_2_1","finally","onFinally","ZONE_AWARE_PROMISE","NewNativePromise","symbolThenPatched","Ctor","prop","originalThen","_this","fetch","fetchTaskScheduling","fetchTaskAborting","OriginalAbortController","supportAbort","abortNative","abortController","signal","placeholder","fetchPromise","ctor","resource","aborted","abort","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","errorEvent","filename","lineno","colno","preventDefault","patchProperty","onPropPatchedSymbol","originalDescGet","originalDescSet","eventName","substr","newValue","removeEventListener","removeAttribute","onProperties","originalInstanceKey","patchClass","OriginalClass","attachOriginToPatched","shouldCopySymbolProperties","patchFn","dest","delegateName","patchDelegate_1","patched","isDetectedIEOrEdge","ieOrEdge","isIE","ua","isIEOrEdge","originalFunctionToString","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","passiveSupported","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","chkDup","returnTarget","nativePrependEventListener","eventNameToString","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","checkIsPassive","prepend","isExisting","symbolEventNames","symbolEventName","existingTasks","allRemoved","compare","diff","typeOfDelegate","blackListedEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","isHandleEvent","falseEventName","trueEventName","symbolCapture","constructorName","targetSource","unshift","existingTask","findEventTasks","symbolCaptureEventName","captureTasks","removeTasks","evtName","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","ignoreErrorProperties","Document","HTMLMediaElement","HTMLFrameSetElement","HTMLBodyElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement_1","Worker_1","XMLHttpRequestEventTarget_1","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","onproperty","elt","unboundKey","parentElement","patchViaCapturingAllTheEvents","WS","EventTarget","proxySocket","proxySocketProto","socket","onmessageDesc","propName","propertySymbol","globalWebSocket","patchEvent","Event","patchEventPrototype","patchCallbacks","targetName","callbacks","nativeDelegate","opts","blockingMethods","SYMBOL_BLACK_LISTED_EVENTS","WTF_ISSUE_555","NO_EVENT_TARGET","isWtf","WTF_ISSUE_555_ARRAY","isDisableIECheck","isEnableCrossContextCheck","BROWSER_TOOLS","targets","apiTypes","testString","eventTargetPatch","XMLHttpRequestEventTarget","props","customElements","patchCustomElements","HTMLCanvasElement","toBlob","funcName","metaCreator","cbIdx","patchMacroTask","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","READY_STATE_CHANGE","SCHEDULED","XHR_SCHEDULED","XHR_ERROR_BEFORE_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","loadTasks","oriInvoke_1","storedTask","XHR_TASK","sendNative","placeholderCallback","openNative","XHR_SYNC","XHR_URL","patchXHR","geolocation","fnNames","name_1","patchPrototype","findPromiseRejectionHandler","evt","factory","__webpack_exports__","Headers","Request","Response","DOMException","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","_bodyArrayBuffer","rejected","text","readAsText","chars","readArrayBufferAsText","decode","json","parse","oldValue","thisArg","input","upcased","credentials","toUpperCase","referrer","form","decodeURIComponent","bodyInit","status","statusText","clone","response","redirectStatuses","redirect","location","request","xhr","abortXhr","rawHeaders","getAllResponseHeaders","line","parts","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","isWebkit","oid2str","KoZIhvcNAQEB","str2oid","1.2.840.113549.1.1.1","_fn","ka","kx","ku","jwk","alg","b2jwk","jwkAlg","key_ops","kty","isPrvKeyUse","isPubKeyUse","ext","s2b","unescape","encodeURIComponent","_key","hash","SHA-1","SHA-256","SHA-384","SHA-512","importKey","getRandomValues","modulusLength","generateKey","exportKey","publicKey","privateKey","a2s","info","b2der","prv","rsaComp","rsaKey","s2a","b2s","pkcs2jwk","decrypt","oncomplete","algorithm","publicExponent","encrypt","usages","der2b","jwk2pkcs","tl","tagLength","AesGcmEncryptResult","ciphertext","_digest","digest","btoa","atob","SyntaxError","HMAC","RSASSA-PKCS1-v1_5","RSAES-PKCS1-v1_5","","RSA-OAEP","AES-KW","128","192","256","AES-GCM","AES-CBC","escape","extractable","rv","xlen","oid","use","u"],"mappings":"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ACA,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,GAAA,gFA6DAC,GAAA,SACAC,GAAA,iEACAC,GAAA,4BACAC,GAAA,CACA,6EACA,oBAEAC,GAAA,yFACAC,GAAA,mCACAC,GAAA,oBACAC,GApNA,CACA,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,SAoHAhkC,OAbA,wEACA,qCACA,WAvGA,CACA,0FACA,sFACA,oFACA,6BA8GAujC,GA5EA,CACA,kFACA,iFACA,yEAGA,CACA,WACA,cACA,cACA,iBACA,mBACA,kBACA,eACA,aACA,gBACA,gBACA,iBACA,kBACA,cACA,eACA,iBACA,cACA,OACA,UACA,YACA,iBACA,YACA,cACA,WACA,UACA,aACA,eACA,UACA,0BACA,aACA,OACA,gBACA,6BACA,kBACA,qBACA,eACA,gBACA,iBACA,eACA,sBACA,iBACA,uBACA,kBACA,gBACA,iBACA,iBACA,iBACA,gBACA,eACA,gBACA,cACA,aACA,gCACA,mBACA,OACA,kBA2BA,SAAAU,GAAAh0C,EAAAmsC,EAA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","file":"app/polyfills.24b12cf2806f2044ae5c.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 = 667);\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","// 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","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.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.6.2' };\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","// 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","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.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","// 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","// 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 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","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 || new Function(\"return 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","// 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","'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 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: '© 2019 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';\n\nvar classof = require('./_classof');\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n","'use strict';\nrequire('./es6.regexp.exec');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\nvar regexpExec = require('./_regexp-exec');\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\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","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 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","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';\n\nvar regexpFlags = require('./_flags');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\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","'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","// 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","'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","'use strict';\nvar regexpExec = require('./_regexp-exec');\nrequire('./_export')({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\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","// 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","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\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 },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\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 },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar sameValue = require('./_same-value');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\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 },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative($search, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\n\n// eslint-disable-next-line no-empty\nvar SUPPORTS_Y = !!(function () { try { return new RegExp('x', 'y'); } catch (e) {} })();\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\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 // based on es5-shim implementation, need to rework it\n internalSplit = 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 match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\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 internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? 0xffffffff : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\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.exec');\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 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 var checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true;\n if (global['Zone']) {\n // if global['Zone'] already exists (maybe zone.js was already loaded or\n // some other lib also registered a global object named Zone), we may need\n // to throw an error, but sometimes user may not want this error.\n // For example,\n // we have two web pages, page1 includes zone.js, page2 doesn't.\n // and the 1st time user load page1 and page2, everything work fine,\n // but when user load page2 again, error occurs because global['Zone'] already exists.\n // so we add a flag to let user choose whether to throw this error or not.\n // By default, if existing Zone is from zone.js, we will not throw the error.\n if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') {\n throw new Error('Zone already loaded.');\n }\n else {\n return global['Zone'];\n }\n }\n var Zone = /** @class */ (function () {\n function Zone(parent, zoneSpec) {\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 if (checkDuplicate) {\n throw Error('Already loaded patch: ' + name);\n }\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 _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 _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 if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) {\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 = undefined;\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.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, undefined));\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) { return delegate.hasTask(target, hasTaskState); },\n onScheduleTask: function (delegate, _, target, task) {\n return delegate.scheduleTask(target, task);\n },\n onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) {\n return delegate.invokeTask(target, task, applyThis, applyArgs);\n },\n onCancelTask: function (delegate, _, target, task) { return delegate.cancelTask(target, task); }\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 = zoneSpec &&\n (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 ? 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 ? 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 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 ? ' or \\'' + fromState2 + '\\'' : '') + \", was '\" + this._state + \"'.\");\n }\n };\n ZoneTask.prototype.toString = function () {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId.toString();\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 var nativeThen = nativeMicroTaskQueuePromise[symbolThen];\n if (!nativeThen) {\n // native Promise is not patchable, we need to use `then` directly\n // issue 1078\n nativeThen = nativeMicroTaskQueuePromise['then'];\n }\n nativeThen.call(nativeMicroTaskQueuePromise, 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 []; },\n patchThen: function () { return noop; },\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\nvar __values = (undefined && undefined.__values) || function (o) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\n if (m) return m.call(o);\n return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\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 ?\n [] :\n [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 e_1, _a;\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 try {\n for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {\n var value = values_1_1.value;\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return promise;\n };\n ZoneAwarePromise.all = function (values) {\n var e_2, _a;\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n // Start at 2 to prevent prematurely resolving if .then is called immediately.\n var unresolvedCount = 2;\n var valueIndex = 0;\n var resolvedValues = [];\n var _loop_2 = function (value) {\n if (!isThenable(value)) {\n value = this_1.resolve(value);\n }\n var curValueIndex = valueIndex;\n value.then(function (value) {\n resolvedValues[curValueIndex] = value;\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }, reject);\n unresolvedCount++;\n valueIndex++;\n };\n var this_1 = this;\n try {\n for (var values_2 = __values(values), values_2_1 = values_2.next(); !values_2_1.done; values_2_1 = values_2.next()) {\n var value = values_2_1.value;\n _loop_2(value);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (values_2_1 && !values_2_1.done && (_a = values_2.return)) _a.call(values_2);\n }\n finally { if (e_2) throw e_2.error; }\n }\n // Make the unresolvedCount zero-based again.\n unresolvedCount -= 2;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\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 api.patchThen = patchThen;\n if (NativePromise) {\n patchThen(NativePromise);\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 */\nZone.__load_patch('fetch', function (global, Zone, api) {\n var fetch = global['fetch'];\n var ZoneAwarePromise = global.Promise;\n var symbolThenPatched = api.symbol('thenPatched');\n var fetchTaskScheduling = api.symbol('fetchTaskScheduling');\n var fetchTaskAborting = api.symbol('fetchTaskAborting');\n if (typeof fetch !== 'function') {\n return;\n }\n var OriginalAbortController = global['AbortController'];\n var supportAbort = typeof OriginalAbortController === 'function';\n var abortNative = null;\n if (supportAbort) {\n global['AbortController'] = function () {\n var abortController = new OriginalAbortController();\n var signal = abortController.signal;\n signal.abortController = abortController;\n return abortController;\n };\n abortNative = api.patchMethod(OriginalAbortController.prototype, 'abort', function (delegate) { return function (self, args) {\n if (self.task) {\n return self.task.zone.cancelTask(self.task);\n }\n return delegate.apply(self, args);\n }; });\n }\n var placeholder = function () { };\n global['fetch'] = function () {\n var _this = this;\n var args = Array.prototype.slice.call(arguments);\n var options = args.length > 1 ? args[1] : null;\n var signal = options && options.signal;\n return new Promise(function (res, rej) {\n var task = Zone.current.scheduleMacroTask('fetch', placeholder, args, function () {\n var fetchPromise;\n var zone = Zone.current;\n try {\n zone[fetchTaskScheduling] = true;\n fetchPromise = fetch.apply(_this, args);\n }\n catch (error) {\n rej(error);\n return;\n }\n finally {\n zone[fetchTaskScheduling] = false;\n }\n if (!(fetchPromise instanceof ZoneAwarePromise)) {\n var ctor = fetchPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n api.patchThen(ctor);\n }\n }\n fetchPromise.then(function (resource) {\n if (task.state !== 'notScheduled') {\n task.invoke();\n }\n res(resource);\n }, function (error) {\n if (task.state !== 'notScheduled') {\n task.invoke();\n }\n rej(error);\n });\n }, function () {\n if (!supportAbort) {\n rej('No AbortController supported, can not cancel fetch');\n return;\n }\n if (signal && signal.abortController && !signal.aborted &&\n typeof signal.abortController.abort === 'function' && abortNative) {\n try {\n Zone.current[fetchTaskAborting] = true;\n abortNative.call(signal.abortController);\n }\n finally {\n Zone.current[fetchTaskAborting] = false;\n }\n }\n else {\n rej('cancel fetch need a AbortController.signal');\n }\n });\n if (signal && signal.abortController) {\n signal.abortController.task = task;\n }\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 * 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;\n if (isBrowser && target === internalWindow && event.type === 'error') {\n // window.onerror have different signiture\n // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror\n // and onerror callback will prevent default when callback return true\n var errorEvent = event;\n result = listener &&\n listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error);\n if (result === true) {\n event.preventDefault();\n }\n }\n else {\n result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\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 var onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched');\n if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) {\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 obj[onPropPatchedSymbol] = true;\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 copySymbolProperties(src, dest) {\n if (typeof Object.getOwnPropertySymbols !== 'function') {\n return;\n }\n var symbols = Object.getOwnPropertySymbols(src);\n symbols.forEach(function (symbol) {\n var desc = Object.getOwnPropertyDescriptor(src, symbol);\n Object.defineProperty(dest, symbol, {\n get: function () {\n return src[symbol];\n },\n set: function (value) {\n if (desc && (!desc.writable || typeof desc.set !== 'function')) {\n // if src[symbol] is not writable or not have a setter, just return\n return;\n }\n src[symbol] = value;\n },\n enumerable: desc ? desc.enumerable : true,\n configurable: desc ? desc.configurable : true\n });\n });\n}\nvar shouldCopySymbolProperties = false;\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 = null;\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 if (shouldCopySymbolProperties) {\n copySymbolProperties(delegate, proto[name]);\n }\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);\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 isIE() {\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) {\n return true;\n }\n }\n catch (error) {\n }\n return false;\n}\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 */\nvar passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\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 var eventNameToString = patchOptions && patchOptions.eventNameToString;\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 function checkIsPassive(task) {\n if (!passiveSupported && typeof taskData.options !== 'boolean' &&\n typeof taskData.options !== 'undefined' && taskData.options !== null) {\n // options is a non-null non-undefined object\n // passive is not supported\n // don't pass options as object\n // just pass capture as a boolean\n task.options = !!taskData.options.capture;\n taskData.options = task.options;\n }\n }\n var customScheduleGlobal = function (task) {\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 checkIsPassive(task);\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 checkIsPassive(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 eventName = arguments[0];\n var delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n if (isNode && eventName === 'uncaughtException') {\n // don't patch uncaughtException of nodejs to prevent endless loop\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 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 = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR;\n var trueEventName = (eventNameToString ? eventNameToString(eventName) : 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 +\n (eventNameToString ? eventNameToString(eventName) : 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 : undefined;\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 if (!(!passiveSupported && typeof task.options === 'boolean')) {\n // if not support passive, and we pass an option object\n // to addEventListener, we should save the options to task\n task.options = options;\n }\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, eventNameToString ? eventNameToString(eventName) : 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 isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 :\n undefined,\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 (desc && 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', 'freeze', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange', 'resume'\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 || ignoreProperties.length === 0) {\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 var ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : [];\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 ? ignoreProperties.concat(ignoreErrorProperties) : 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_1 = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget_1) {\n patchFilteredProperties(XMLHttpRequestEventTarget_1 && XMLHttpRequestEventTarget_1.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 patchCallbacks(target, targetName, method, callbacks) {\n var symbol = Zone.__symbol__(method);\n if (target[symbol]) {\n return;\n }\n var nativeDelegate = target[symbol] = target[method];\n target[method] = function (name, opts, options) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n var source = targetName + \".\" + method + \"::\" + 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 nativeDelegate.call(target, name, opts, options);\n };\n attachOriginToPatched(target[method], nativeDelegate);\n}\nfunction registerElementPatch(_global) {\n if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) {\n return;\n }\n var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback'];\n patchCallbacks(document, 'Document', 'registerElement', callbacks);\n}\nfunction patchCustomElements(_global) {\n if ((!isBrowser && !isMix) || !('customElements' in _global)) {\n return;\n }\n var callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback'];\n patchCallbacks(_global.customElements, 'customElements', 'define', callbacks);\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});\nZone.__load_patch('customElements', function (global, Zone, api) {\n registerElementPatch(global);\n patchCustomElements(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 var XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled');\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_1 = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget_1) {\n var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget_1.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 var data = task.data;\n var target = data.target;\n target[XHR_SCHEDULED] = false;\n target[XHR_ERROR_BEFORE_SCHEDULED] = false;\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 && target[XHR_SCHEDULED] && task.state === SCHEDULED) {\n // check whether the xhr has registered onload listener\n // if that is the case, the task should invoke after all\n // onload listeners finish.\n var loadTasks = target['__zone_symbol__loadfalse'];\n if (loadTasks && loadTasks.length > 0) {\n var oriInvoke_1 = task.invoke;\n task.invoke = function () {\n // need to load the tasks again, because in other\n // load listener, they may remove themselves\n var loadTasks = target['__zone_symbol__loadfalse'];\n for (var i = 0; i < loadTasks.length; i++) {\n if (loadTasks[i] === task) {\n loadTasks.splice(i, 1);\n }\n }\n if (!data.aborted && task.state === SCHEDULED) {\n oriInvoke_1.call(task);\n }\n };\n loadTasks.push(task);\n }\n else {\n task.invoke();\n }\n }\n else if (!data.aborted && target[XHR_SCHEDULED] === false) {\n // error occurs when xhr.send()\n target[XHR_ERROR_BEFORE_SCHEDULED] = true;\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 target[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 fetchTaskAborting = zoneSymbol('fetchTaskAborting');\n var fetchTaskScheduling = zoneSymbol('fetchTaskScheduling');\n var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) {\n if (Zone.current[fetchTaskScheduling] === true) {\n // a fetch is scheduling, so we are using xhr to polyfill fetch\n // and because we already schedule macroTask for fetch, we should\n // not schedule a macroTask for xhr again\n return sendNative.apply(self, args);\n }\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 = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false };\n var task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted &&\n task.state === SCHEDULED) {\n // xhr request throw error when send\n // we should invoke task instead of leaving a scheduled\n // pending macroTask\n task.invoke();\n }\n }\n }; });\n var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self, args) {\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 else if (Zone.current[fetchTaskAborting] === true) {\n // the abort is called from fetch polyfill, we need to call native abort of XHR.\n return abortNative.apply(self, args);\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/_to-length.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-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/_to-integer.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-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/_classof.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:///./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:///(webpack)/buildin/global.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/_flags.js","webpack:///./node_modules/core-js/modules/_species-constructor.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/_regexp-exec-abstract.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/_string-at.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/_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/_regexp-exec.js","webpack:///./node_modules/core-js/modules/_advance-string-index.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/_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/_same-value.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.exec.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/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","toInteger","min","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","a","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","ceil","floor","isNaN","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","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","cof","ARG","T","tryGet","callee","UNSCOPABLES","DESCRIPTORS","SPECIES","Constructor","forbiddenField","BREAK","RETURN","iterable","def","stat","_t","g","propertyIsEnumerable","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","ignoreCase","multiline","unicode","sticky","D","copyright","getOwnPropertySymbols","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","builtinExec","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","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","TO_STRING","pos","charCodeAt","charAt","$iterCreate","BUGGY","returnThis","DEFAULT","IS_SET","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","MATCH","isRegExp","is","createElement","documentElement","check","setPrototypeOf","buggy","__proto__","sign","x","$expm1","expm1","descriptor","searchString","endPos","re1","re2","regexpFlags","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","lastIndex","reCopy","match","at","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","$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","PromiseCapability","resolve","reject","promise","$$resolve","$$reject","navigator","userAgent","wksExt","$Symbol","names","defineProperties","windowNames","getWindowNames","y","factories","partArgs","bound","construct","$parseInt","parseInt","$trim","ws","hex","radix","$parseFloat","parseFloat","msg","isFinite","log1p","ret","original","memo","isRight","to","inc","forced","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","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","FProto","nameRE","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","$flags","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","proxy","define","advanceStringIndex","regExpExec","$match","maybeCallNative","rx","fullUnicode","matchStr","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","sameValue","SEARCH","$search","previousLastIndex","callRegExpExec","$min","$push","SUPPORTS_Y","SPLIT","$split","internalSplit","limit","lastLength","output","lastLastIndex","splitLimit","separatorCopy","splitter","unicodeMatching","lim","q","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","performance","mark","performanceMeasure","label","checkDuplicate","__symbol__","Error","nativeMicroTaskQueuePromise","Zone","zoneSpec","_parent","_name","_properties","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","macroTask","reEntryGuard","running","_transitionTo","scheduled","runCount","previousTask","isPeriodic","cancelFn","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","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","nativeThen","onUnhandledError","microtaskDrainDone","symbol","currentZoneFrame","noop","showUncaughtError","patchEventTarget","patchOnProperties","patchMethod","bindArguments","patchThen","setNativePromise","NativePromise","__values","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","e_1","rej","onResolve","onReject","values_1","values_1_1","e_1_1","return","e_2","unresolvedCount","valueIndex","resolvedValues","_loop_2","this_1","curValueIndex","values_2","values_2_1","e_2_1","finally","onFinally","ZONE_AWARE_PROMISE","NewNativePromise","symbolThenPatched","Ctor","prop","originalThen","_this","fetch","fetchTaskScheduling","fetchTaskAborting","OriginalAbortController","supportAbort","abortNative","abortController","signal","placeholder","fetchPromise","ctor","resource","aborted","abort","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","errorEvent","filename","lineno","colno","preventDefault","patchProperty","onPropPatchedSymbol","originalDescGet","originalDescSet","eventName","substr","newValue","removeEventListener","removeAttribute","onProperties","originalInstanceKey","patchClass","OriginalClass","attachOriginToPatched","shouldCopySymbolProperties","patchFn","dest","delegateName","patchDelegate_1","patched","isDetectedIEOrEdge","ieOrEdge","isIE","ua","isIEOrEdge","originalFunctionToString","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","passiveSupported","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","chkDup","returnTarget","nativePrependEventListener","eventNameToString","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","checkIsPassive","prepend","isExisting","symbolEventNames","symbolEventName","existingTasks","allRemoved","compare","diff","typeOfDelegate","blackListedEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","isHandleEvent","falseEventName","trueEventName","symbolCapture","constructorName","targetSource","unshift","existingTask","findEventTasks","symbolCaptureEventName","captureTasks","removeTasks","evtName","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","ignoreErrorProperties","Document","HTMLMediaElement","HTMLFrameSetElement","HTMLBodyElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement_1","Worker_1","XMLHttpRequestEventTarget_1","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","onproperty","elt","unboundKey","parentElement","patchViaCapturingAllTheEvents","WS","EventTarget","proxySocket","proxySocketProto","socket","onmessageDesc","propName","propertySymbol","globalWebSocket","patchEvent","Event","patchEventPrototype","patchCallbacks","targetName","callbacks","nativeDelegate","opts","blockingMethods","SYMBOL_BLACK_LISTED_EVENTS","WTF_ISSUE_555","NO_EVENT_TARGET","isWtf","WTF_ISSUE_555_ARRAY","isDisableIECheck","isEnableCrossContextCheck","BROWSER_TOOLS","targets","apiTypes","testString","eventTargetPatch","XMLHttpRequestEventTarget","props","customElements","patchCustomElements","HTMLCanvasElement","toBlob","funcName","metaCreator","cbIdx","patchMacroTask","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","READY_STATE_CHANGE","SCHEDULED","XHR_SCHEDULED","XHR_ERROR_BEFORE_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","loadTasks","oriInvoke_1","storedTask","XHR_TASK","sendNative","placeholderCallback","openNative","XHR_SYNC","XHR_URL","patchXHR","geolocation","fnNames","name_1","patchPrototype","findPromiseRejectionHandler","evt","factory","__webpack_exports__","Headers","Request","Response","DOMException","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","_bodyArrayBuffer","rejected","text","readAsText","chars","readArrayBufferAsText","decode","json","parse","oldValue","thisArg","input","upcased","credentials","toUpperCase","referrer","form","decodeURIComponent","bodyInit","status","statusText","clone","response","redirectStatuses","redirect","location","request","xhr","abortXhr","rawHeaders","getAllResponseHeaders","line","parts","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","isWebkit","oid2str","KoZIhvcNAQEB","str2oid","1.2.840.113549.1.1.1","_fn","ka","kx","ku","jwk","alg","b2jwk","jwkAlg","key_ops","kty","isPrvKeyUse","isPubKeyUse","ext","s2b","unescape","encodeURIComponent","_key","hash","SHA-1","SHA-256","SHA-384","SHA-512","importKey","getRandomValues","modulusLength","generateKey","exportKey","publicKey","privateKey","a2s","info","b2der","prv","rsaComp","rsaKey","s2a","b2s","pkcs2jwk","decrypt","oncomplete","algorithm","publicExponent","encrypt","usages","der2b","jwk2pkcs","tl","tagLength","AesGcmEncryptResult","ciphertext","_digest","digest","btoa","atob","SyntaxError","HMAC","RSASSA-PKCS1-v1_5","RSAES-PKCS1-v1_5","","RSA-OAEP","AES-KW","128","192","256","AES-GCM","AES-CBC","escape","extractable","rv","xlen","oid","use","u"],"mappings":"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ACA,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,GAAA,gFA6DAC,GAAA,SACAC,GAAA,iEACAC,GAAA,4BACAC,GAAA,CACA,6EACA,oBAEAC,GAAA,yFACAC,GAAA,mCACAC,GAAA,oBACAC,GApNA,CACA,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,SAoHAhkC,OAbA,wEACA,qCACA,WAvGA,CACA,0FACA,sFACA,oFACA,6BA8GAujC,GA5EA,CACA,kFACA,iFACA,yEAGA,CACA,WACA,cACA,cACA,iBACA,mBACA,kBACA,eACA,aACA,gBACA,gBACA,iBACA,kBACA,cACA,eACA,iBACA,cACA,OACA,UACA,YACA,iBACA,YACA,cACA,WACA,UACA,aACA,eACA,UACA,0BACA,aACA,OACA,gBACA,6BACA,kBACA,qBACA,eACA,gBACA,iBACA,eACA,sBACA,iBACA,uBACA,kBACA,gBACA,iBACA,iBACA,iBACA,gBACA,eACA,gBACA,cACA,aACA,gCACA,mBACA,OACA,kBA2BA,SAAAU,GAAAh0C,EAAAmsC,EAAA8H,EAAA11C,GAGAyB,GAIA6jC,EAAA7jC,EAlBA,SAAAA,EAAAmsC,EAAA8H,GACA,IAAAA,GAAA,IAAAA,EAAAtxC,OACA,OAAAwpC,EAEA,IAAA+H,EAAAD,EAAAxnC,OAAA,SAAA0nC,GAAqD,OAAAA,EAAAn0C,aACrD,IAAAk0C,GAAA,IAAAA,EAAAvxC,OACA,OAAAwpC,EAEA,IAAAiI,EAAAF,EAAA,GAAAD,iBACA,OAAA9H,EAAA1/B,OAAA,SAAA4nC,GAA8C,WAAAD,EAAAtnC,QAAAunC,KAQ9CC,CAAAt0C,EAAAmsC,EAAA8H,GACA11C,GAEA,SAAAg2C,GAAAnQ,EAAAsG,GACA,IAAAxmB,GAAA+mB,EAAA,CAGA,IAAAuJ,EAAA,oBAAAC,UACA,GAuDA,WACA,IAAAzJ,GAAAC,KAAA5G,EAAAqQ,YAAAn2C,UAAA,YACA,oBAAAo2C,QAAA,CAGA,IAAArmC,EAAA+1B,EAAAsQ,QAAAp2C,UAAA,WACA,GAAA+P,MAAAC,aACA,SAEA,IACAqmC,EAAAC,eAAAt2C,UACAu2C,EAAAzQ,EAAAuQ,EAFA,sBASA,GAAAE,EAAA,CACAxQ,EAAAsQ,EAVA,qBAUA,CACAr3C,YAAA,EACAgR,cAAA,EACA/Q,IAAA,WACA,YAGA,IAAAu3C,EAAA,IAAAF,eACA9uC,IAAAgvC,EAAAC,mBAGA,OADA1Q,EAAAsQ,EApBA,qBAoBAE,GAAA,IACA/uC,EAGA,IAAAkvC,EAAA1K,EAAA,QACAjG,EAAAsQ,EAzBA,qBAyBA,CACAr3C,YAAA,EACAgR,cAAA,EACA/Q,IAAA,WACA,OAAA6F,KAAA4xC,IAEArqC,IAAA,SAAAhN,GACAyF,KAAA4xC,GAAAr3C,KAGA,IAAAm3C,EAAA,IAAAF,eACAK,EAAA,aACAH,EAAAC,mBAAAE,EACA,IAAAnvC,EAAAgvC,EAAAE,KAAAC,EAEA,OADAH,EAAAC,mBAAA,KACAjvC,EAxGAovC,GAAA,CACA,IAAAlB,EAAAvJ,EAAA,4BAEA,GAAAM,EAAA,CACA,IAAAP,EAAA/pC,OACA00C,EAAApI,EAAA,EAAiDhtC,OAAAyqC,EAAAwJ,iBAAA,YAAsD,GAGvGD,GAAAvJ,EAAAsJ,GAAAhkC,OAAA,kBAAAkkC,IAAAlkC,OAAAqlC,GAAAnB,EAAAtK,EAAAc,IACAuJ,GAAAqB,SAAA92C,UAAAw1C,GAAAE,QACA,IAAAxJ,EAAA,YACAuJ,GAAAvJ,EAAA,WAAAlsC,UAAAw1C,GAAAE,GAEAD,GAAAW,QAAAp2C,UAAAw1C,GAAAE,GACAD,GAAAU,YAAAn2C,UAAAw1C,GAAAE,GACAD,GAAAsB,iBAAA/2C,UAAAg1C,GAAAU,GACAD,GAAAuB,oBAAAh3C,UAAA+0C,GAAAvjC,OAAA0jC,IAAAQ,GACAD,GAAAwB,gBAAAj3C,UAAA+0C,GAAAvjC,OAAA0jC,IAAAQ,GACAD,GAAAyB,iBAAAl3C,UAAAi1C,GAAAS,GACAD,GAAA0B,kBAAAn3C,UAAAi1C,GAAAS,GACA,IAAA0B,EAAAlL,EAAA,mBACAkL,GACA3B,GAAA2B,EAAAp3C,UAAAm1C,GAAAO,GAEA,IAAA2B,EAAAnL,EAAA,OACAmL,GACA5B,GAAA4B,EAAAr3C,UAAAu1C,GAAAG,GAGAD,GAAAa,eAAAt2C,UAAAo1C,GAAAM,GACA,IAAA4B,EAAAnL,EAAA,0BACAmL,GACA7B,GAAA6B,KAAAt3C,UAAAo1C,GAAAM,GAEA,oBAAA6B,WACA9B,GAAA8B,SAAAv3C,UAAAq1C,GAAAK,GACAD,GAAA+B,WAAAx3C,UAAAq1C,GAAAK,GACAD,GAAAgC,iBAAAz3C,UAAAq1C,GAAAK,GACAD,GAAAiC,YAAA13C,UAAAq1C,GAAAK,GACAD,GAAAkC,eAAA33C,UAAAq1C,GAAAK,GACAD,GAAAmC,UAAA53C,UAAAq1C,GAAAK,IAEAO,GACAR,GAAAS,UAAAl2C,UAAAs1C,GAAAI,QAoEA,WAsBA,IArBA,IAAArP,EAAA,SAAAjoC,GACA,IAAA2B,EAAAy1C,GAAAp3C,GACAy5C,EAAA,KAAA93C,EACAsC,KAAAugB,iBAAA7iB,EAAA,SAAAsiB,GACA,IAAA4B,EAAAtjB,EAAAm3C,EAAAz1B,EAAA5gB,OAOA,IALAd,EADAm3C,EACAA,EAAAvyC,YAAA,SAAAsyC,EAGA,WAAAA,EAEAC,GACAA,EAAAD,KAAAC,EAAAD,GAAAE,OACA9zB,EAAA6nB,EAAAgM,EAAAD,GAAAl3C,IACAo3C,IAAAD,EAAAD,GACAC,EAAAD,GAAA5zB,GAEA6zB,IAAAE,gBAES,IAET55C,EAAA,EAAmBA,EAAAo3C,GAAApxC,OAAuBhG,IAC1CioC,EAAAjoC;;;;;;;GAtFA65C,GACAnK,EAAA,kBACAmI,GAzVA,SAAApQ,EAAAsG,GACA,IAAA+L,EAAA/L,EAAA+J,UAGA/J,EAAAgM,aACA9S,EAAA8G,EAAA,CAAA+L,EAAAl4C,YAEAmsC,EAAA+J,UAAA,SAAAx6B,EAAAoI,GACA,IACAs0B,EACAC,EAFAC,EAAAnyC,UAAA/B,OAAA,MAAA8zC,EAAAx8B,EAAAoI,GAAA,IAAAo0B,EAAAx8B,GAIA68B,EAAAzS,EAAAwS,EAAA,aA0BA,OAzBAC,IAAA,IAAAA,EAAAvoC,cACAooC,EAAA/M,EAAAiN,GAIAD,EAAAC,EACA,CAAA/M,EAAAC,EAAA,gBAAAl9B,QAAA,SAAAkqC,GACAJ,EAAAI,GAAA,WACA,IAAA73B,EAAA2qB,EAAA/sC,KAAA4H,WACA,GAAAqyC,IAAAjN,GAAAiN,IAAAhN,EAAA,CACA,IAAA+B,EAAA5sB,EAAAvc,OAAA,EAAAuc,EAAA,QAAAhf,EACA,GAAA4rC,EAAA,CACA,IAAAkL,EAAApb,KAAAH,WAAA,cAAAqQ,GACA+K,EAAAG,GAAAL,EAAAK,IAGA,OAAAH,EAAAE,GAAAtyC,MAAAoyC,EAAA33B,OAMAy3B,EAAAE,EAEAhT,EAAA8S,EAAA,mCAAAC,GACAD,GAEA,IAAAM,EAAAvM,EAAA,UACA,QAAAhC,KAAA+N,EACAQ,EAAAvO,GAAA+N,EAAA/N,GAgTAjkC,CAAA2/B,EAAAsG,IAwDA,IAAA4L,GAAA/L,EAAA,WAiIA,SAAA2M,GAAAv4C,EAAAylC,IAlxBA,SAAAzlC,EAAAylC,GACA,IAAA+S,EAAAx4C,EAAA,MACAw4C,KAAA54C,WACA6lC,EAAAN,YAAAqT,EAAA54C,UAAA,oCAAAihC,GAA0F,gBAAA5+B,EAAAse,GAC1Fte,EAAAqtC,IAAA,EAIAzO,KAAA/6B,MAAA7D,EAAAse,MA2wBAk4B,CAAAz4C,EAAAylC;;;;;;;GAUA,SAAAiT,GAAAr3C,EAAAs3C,EAAAnzC,EAAAozC,GACA,IAAA/T,EAAA5H,KAAAH,WAAAt3B,GACA,IAAAnE,EAAAwjC,GAAA,CAGA,IAAAgU,EAAAx3C,EAAAwjC,GAAAxjC,EAAAmE,GACAnE,EAAAmE,GAAA,SAAAjH,EAAAu6C,EAAAnV,GAoBA,OAnBAmV,KAAAl5C,WACAg5C,EAAA1qC,QAAA,SAAAkwB,GACA,IAzmBA0J,EAAAiC,EAAAp6B,EACA8kC,EAwmBAl0C,EAAAo4C,EAAA,IAAAnzC,EAAA,KAAA44B,EACAx+B,EAAAk5C,EAAAl5C,UACA,GAAAA,EAAAC,eAAAu+B,GAAA,CACA,IAAA3iB,EAAAiqB,EAAA9lC,EAAAw+B,GACA3iB,KAAAxc,OACAwc,EAAAxc,MAAAysC,EAAAjwB,EAAAxc,MAAAsB,GA9mBAunC,EA+mBAgR,EAAAl5C,UA/mBAmqC,EA+mBA3L,EA9mBAqW,GADA9kC,EA+mBA8L,GA9mBA7L,aAEA4kC,GAAA1M,EAAAiC,EADAp6B,EAAA2kC,GAAAxM,EAAAiC,EAAAp6B,GACA8kC,IA+mBA70C,EAAAw+B,GAAAsN,EAAA9rC,EAAAw+B,GAAA79B,QAGAX,EAAAw+B,KACAx+B,EAAAw+B,GAAAsN,EAAA9rC,EAAAw+B,GAAA79B,MAIAs4C,EAAA16C,KAAAkD,EAAA9C,EAAAu6C,EAAAnV,IAEAiK,EAAAvsC,EAAAmE,GAAAqzC;;;;;;;;AA4BA5b,KAAAc,aAAA,gBAAA/9B,EAAAi9B,EAAAwI,GACAA,EAAAP,oBACAO,EAAAN,cACAM,EAAAL,kBAEAnI,KAAAc,aAAA,kBAAA/9B,GAGAuzC,EAAAvzC,EAFA,MACA,QACA,WACAuzC,EAAAvzC,EAHA,MACA,QAEA,YACAuzC,EAAAvzC,EAJA,MACA,QAGA,eAEAi9B,KAAAc,aAAA,iCAAA/9B,GACAuzC,EAAAvzC,EAAA,qCACAuzC,EAAAvzC,EAAA,2CACAuzC,EAAAvzC,EAAA,mDAEAi9B,KAAAc,aAAA,oBAAA/9B,EAAAi9B,GAEA,IADA,IAAA8b,EAAA,6BACA/6C,EAAA,EAAmBA,EAAA+6C,EAAA/0C,OAA4BhG,IAAA,CAE/CmnC,EAAAnlC,EADA+4C,EAAA/6C,GACA,SAAA6iC,EAAAgE,EAAAtmC,GACA,gBAAAwB,EAAAwgB,GACA,OAAA0c,EAAAW,QAAA7b,IAAA8e,EAAA7gC,EAAAugB,EAAAhiB,SAKA0+B,KAAAc,aAAA,uBAAA/9B,EAAAi9B,EAAAwI,GAEA,IAAAuT,EAAA/b,EAAAH,WAAA,uBACA98B,EAAAg5C,KACA/b,EAAA+b,GAAAh5C,EAAAg5C,IAEAT,GAAAv4C,EAAAylC,GAhMA,SAAAsG,EAAAtG,GACA,IAAAwT,EAAA,4aACAC,EAAA,gXACAn1C,MAAA,KAEAwrC,EAAA,GACA4J,EAAApN,EAAA,IACAqN,EAAAH,EAAAl1C,MAAA,KACAo1C,EAEA5J,EAAA6J,EAAA7qC,IAAA,SAAAoC,GAAqD,aAAAA,EAAA,YAAiCS,OAAA8nC,GAEtFnN,EAAA,YACAwD,EAAAloC,KATA,eAcAkoC,EAAA2J,EASA,IAPA,IAAAG,EAAAtN,EAAA,4BACAuN,EAAAvN,EAAA,sCACAqC,EAAAG,IAGAgL,EAAA,+DAEAv7C,EAAA,EAAmBA,EAAAo3C,GAAApxC,OAAuBhG,IAAA,CAC1C,IAAAmvC,EAAAiI,GAAAp3C,GAGA6mC,EAAA4G,GAFA0B,EAAA3B,GAGAmH,EAAAlH,GAFA0B,EAAA5B,GAGA4D,EAAAhC,GAAA,GACAgC,EAAAhC,GAAA3B,GAAA3G,EACAsK,EAAAhC,GAAA5B,GAAAoH,EAGA,IAAA30C,EAAA,EAAmBA,EAAAi7C,EAAAj1C,OAA0BhG,IAG7C,IAFA,IAAAqD,EAAA+3C,EAAAp7C,GACAw7C,EAAApK,EAAA/tC,GAAA,GACAsd,EAAA,EAAuBA,EAAAy2B,GAAApxC,OAAuB2a,IAE9C66B,EADArM,EAAAiI,GAAAz2B,IACAtd,EApBA,qBAoBA8rC,EAGA,IAkCAsM,EAAA,GACA,IAAAz7C,EAAA,EAAmBA,EAAAuxC,EAAAvrC,OAAiBhG,IAAA,CACpC,IAAAsC,EAAAyrC,EAAAwD,EAAAvxC,IACAy7C,EAAApyC,KAAA/G,KAAAV,WAIAqlC,EAAA8G,EAAA0N,EAAA,CAAyC3I,GAzCzC,SAAA+H,EAAAhY,EAAAx/B,EAAAkf,GACA,IAAA84B,GAAAjL,GACA,GAAAkL,EACA,IACA,IAAAI,EACA,GA3BA,8BA0BAA,EAAA7Y,EAAA16B,aACAuzC,GAAAH,EAEA,OADAV,EAAA/yC,MAAAzE,EAAAkf,IACA,EAGA,MAAA8X,GAEA,OADAwgB,EAAA/yC,MAAAzE,EAAAkf,IACA,OAKA,GAvCA,8BAsCAm5B,EAAA7Y,EAAA16B,aACAuzC,GAAAH,EAEA,OADAV,EAAA/yC,MAAAzE,EAAAkf,IACA,OAIA,GAAA+4B,EACA,IACAzY,EAAA16B,WAEA,MAAAkyB,GAEA,OADAwgB,EAAA/yC,MAAAzE,EAAAkf,IACA,EAGA,YAUAklB,EAAAR,mBAyGA0U,CAAA35C,EAAAylC,GAEA,IAAAmU,EAAA55C,EAAA,0BACA45C,KAAAh6C,WACA6lC,EAAAR,iBAAAjlC,EAAA,CAAA45C,EAAAh6C,YAEA8tC,EAAA,oBACAA,EAAA,0BACAA,EAAA,wBACAA,EAAA,gBAEAzQ,KAAAc,aAAA,uBAAA/9B,EAAAi9B,EAAAwI,GACAmQ,GAAAnQ,EAAAzlC,GAvuBAtB,OAAAC,eAAA,SAAAmpC,EAAAiC,EAAAp6B,GACA,GAAA0kC,GAAAvM,EAAAiC,GACA,UAAAjoC,UAAA,wCAAAioC,EAAA,QAAAjC,GAEA,IAAA2M,EAAA9kC,EAAAC,aAIA,MAHA,cAAAm6B,IACAp6B,EAAA2kC,GAAAxM,EAAAiC,EAAAp6B,IAEA6kC,GAAA1M,EAAAiC,EAAAp6B,EAAA8kC,IAEA/1C,OAAA6kB,iBAAA,SAAAukB,EAAA+R,GAIA,OAHAn7C,OAAAwL,KAAA2vC,GAAA3rC,QAAA,SAAA67B,GACArrC,OAAAC,eAAAmpC,EAAAiC,EAAA8P,EAAA9P,MAEAjC,GAEAppC,OAAAY,OAAA,SAAAwoC,EAAAr6B,GAMA,MALA,iBAAAA,GAAA/O,OAAA61C,SAAA9mC,IACA/O,OAAAwL,KAAAuD,GAAAS,QAAA,SAAA67B,GACAt8B,EAAAs8B,GAAAuK,GAAAxM,EAAAiC,EAAAt8B,EAAAs8B,MAGAlhB,GAAAif,EAAAr6B,IAEA/O,OAAA6G,yBAAA,SAAAuiC,EAAAiC,GACA,IAAAp6B,EAAAwkC,EAAArM,EAAAiC,GAIA,OAHAp6B,GAAA0kC,GAAAvM,EAAAiC,KACAp6B,EAAAC,cAAA,GAEAD,KA6sBAstB,KAAAc,aAAA,0BAAA/9B,EAAAi9B,EAAAwI,GA5EA,IAAAsG,IA6EA/rC,GA5EAqsC,GAAAC,IAAA,oBAAAP,EAAAp4B,UAIA+kC,GAAA/kC,SAAA,6BADA,sFAGA,SAAAo4B,IACAM,GAAAC,IAAA,mBAAAP,GAIA2M,GAAA3M,EAAA+N,eAAA,0BADA,2FAmEAC,CAAA/5C,KAEAi9B,KAAAc,aAAA,kBAAA/9B,GACA,IAAAg6C,EAAAh6C,EAAA,uBACA,IAAAg6C,KAAAp6C,WACAo6C,EAAAp6C,UAAAq6C,QAxiDA,SAAAnS,EAAAoS,EAAAC,GACA,IAAAxG,EAAA,KACA,SAAA/T,EAAArZ,GACA,IAAA7V,EAAA6V,EAAA7V,KAKA,OAJAA,EAAA6P,KAAA7P,EAAA0pC,OAAA,WACA7zB,EAAApF,OAAArb,MAAApB,KAAAqB,YAEA4tC,EAAA7tC,MAAA4K,EAAArP,OAAAqP,EAAA6P,MACAgG,EAEAotB,EAAAxO,EAAA2C,EAAAoS,EAAA,SAAArZ,GAAgE,gBAAA5+B,EAAAse,GAChE,IAAA3N,EAAAunC,EAAAl4C,EAAAse,GACA,OAAA3N,EAAAwnC,OAAA,sBAAA75B,EAAA3N,EAAAwnC,OACAzO,EAAA/4B,EAAArU,KAAAgiB,EAAA3N,EAAAwnC,OAAAxnC,EAAAgtB,GAIAiB,EAAA/6B,MAAA7D,EAAAse,MAwhDA85B,CAAAL,EAAAp6C,UAAA,kBAAAqC,EAAAse,GACA,OAAoBhiB,KAAA,2BAAA8C,OAAAY,EAAAm4C,MAAA,EAAA75B,YAIpB0c,KAAAc,aAAA,eAAA/9B,EAAAi9B,IASA,SAAAl7B,GACA,IAAAk0C,EAAAC,eAAAt2C,UAIA,IAAA06C,EAAArE,EAAA5K,GACAkP,EAAAtE,EAAA3K,GACA,IAAAgP,EAAA,CACA,IAAApD,EAAAn1C,EAAA,0BACA,GAAAm1C,EAAA,CACA,IAAAsD,EAAAtD,EAAAt3C,UACA06C,EAAAE,EAAAnP,GACAkP,EAAAC,EAAAlP,IAGA,IAAAmP,EAAA,mBACAC,EAAA,YACA,SAAA9a,EAAArZ,GACA,IAAA7V,EAAA6V,EAAA7V,KACArP,EAAAqP,EAAArP,OACAA,EAAAs5C,IAAA,EACAt5C,EAAAu5C,IAAA,EAEA,IAAA54B,EAAA3gB,EAAAw5C,GACAP,IACAA,EAAAj5C,EAAAgqC,GACAkP,EAAAl5C,EAAAiqC,IAEAtpB,GACAu4B,EAAAp8C,KAAAkD,EAAAo5C,EAAAz4B,GAEA,IAAA84B,EAAAz5C,EAAAw5C,GAAA,WACA,GAAAx5C,EAAA05C,aAAA15C,EAAA25C,KAGA,IAAAtqC,EAAAo6B,SAAAzpC,EAAAs5C,IAAAp0B,EAAAsY,QAAA6b,EAAA,CAIA,IAAAO,EAAA55C,EAAA,yBACA,GAAA45C,KAAAj3C,OAAA,GACA,IAAAk3C,EAAA30B,EAAApF,OACAoF,EAAApF,OAAA,WAIA,IADA,IAAA85B,EAAA55C,EAAA,yBACArD,EAAA,EAA+CA,EAAAi9C,EAAAj3C,OAAsBhG,IACrEi9C,EAAAj9C,KAAAuoB,GACA00B,EAAApzB,OAAA7pB,EAAA,GAGA0S,EAAAo6B,SAAAvkB,EAAAsY,QAAA6b,GACAQ,EAAA/8C,KAAAooB,IAGA00B,EAAA5zC,KAAAkf,QAGAA,EAAApF,cAGAzQ,EAAAo6B,UAAA,IAAAzpC,EAAAs5C,KAEAt5C,EAAAu5C,IAAA,IAIAN,EAAAn8C,KAAAkD,EAAAo5C,EAAAK,GACA,IAAAK,EAAA95C,EAAA+5C,GAMA,OALAD,IACA95C,EAAA+5C,GAAA70B,GAEA80B,EAAAv1C,MAAAzE,EAAAqP,EAAA6P,MACAlf,EAAAs5C,IAAA,EACAp0B,EAEA,SAAA+0B,KACA,SAAA75B,EAAA8E,GACA,IAAA7V,EAAA6V,EAAA7V,KAIA,OADAA,EAAAo6B,SAAA,EACAP,EAAAzkC,MAAA4K,EAAArP,OAAAqP,EAAA6P,MAEA,IAAAg7B,EAAApW,EAAA8Q,EAAA,kBAAmF,gBAAAh0C,EAAAse,GAGnF,OAFAte,EAAAu5C,GAAA,GAAAj7B,EAAA,GACAte,EAAAw5C,GAAAl7B,EAAA,GACAg7B,EAAAz1C,MAAA7D,EAAAse,MAGA6pB,EAAAwB,EAAA,qBACAzB,EAAAyB,EAAA,uBACAyP,EAAAlW,EAAA8Q,EAAA,kBAAmF,gBAAAh0C,EAAAse,GACnF,QAAA0c,EAAAW,QAAAuM,GAIA,OAAAkR,EAAAv1C,MAAA7D,EAAAse,GAEA,GAAAte,EAAAu5C,GAEA,OAAAH,EAAAv1C,MAAA7D,EAAAse,GAGA,IAAAojB,EAAA,CAA+BtiC,OAAAY,EAAA0uB,IAAA1uB,EAAAw5C,GAAAlc,YAAA,EAAAhf,OAAAuqB,SAAA,GAC/BvkB,EAAAolB,EAhBA,sBAgBA2P,EAAA3X,EAAA/D,EAAAne,GACAxf,IAAA,IAAAA,EAAA24C,KAAAjX,EAAAmH,SACAvkB,EAAAsY,QAAA6b,GAIAn0B,EAAApF,YAIAopB,EAAApF,EAAA8Q,EAAA,mBAAqF,gBAAAh0C,EAAAse,GACrF,IAAAgG,EAAAtkB,EAjHAm5C,GAkHA,GAAA70B,GAAA,iBAAAA,EAAAjmB,KAAA,CAKA,SAAAimB,EAAAiZ,UAAAjZ,EAAA7V,MAAA6V,EAAA7V,KAAAo6B,QACA,OAEAvkB,EAAAoX,KAAA8C,WAAAla,QAEA,QAAA0W,EAAAW,QAAAwM,GAEA,OAAAG,EAAAzkC,MAAA7D,EAAAse,MAxIAm7B,CAAA17C,GACA,IAAAo7C,EAAAxP,EAAA,WACA4P,EAAA5P,EAAA,WACAiP,EAAAjP,EAAA,eACA+O,EAAA/O,EAAA,gBACA6P,EAAA7P,EAAA,UACAgP,EAAAhP,EAAA,6BA0IA3O,KAAAc,aAAA,uBAAA/9B,GAEAA,EAAA,WAAAA,EAAA,UAAA27C,aAjgEA,SAAA/7C,EAAAg8C,GAmBA,IAlBA,IAAAr7C,EAAAX,EAAAuF,YAAA,KACA8gC,EAAA,SAAAjoC,GACA,IAAA69C,EAAAD,EAAA59C,GACA6iC,EAAAjhC,EAAAi8C,GACA,GAAAhb,EAAA,CAEA,IAAAqL,EADAxG,EAAA9lC,EAAAi8C,IAEA,iBAEAj8C,EAAAi8C,GAAA,SAAAhb,GACA,IAAAqN,EAAA,WACA,OAAArN,EAAA/6B,MAAApB,KAAA0gC,EAAAr/B,UAAAxF,EAAA,IAAAs7C,KAGA,OADAjO,EAAAM,EAAArN,GACAqN,EALA,CAMarN,KAGb7iC,EAAA,EAAmBA,EAAA49C,EAAA53C,OAAoBhG,IACvCioC,EAAAjoC,GA8+DA89C,CAAA97C,EAAA,UAAA27C,YAAA,0CAGA1e,KAAAc,aAAA,iCAAA/9B,EAAAi9B,GAEA,SAAA8e,EAAA3I,GACA,gBAAAhxC,GACA4wC,EAAAhzC,EAAAozC,GACAllC,QAAA,SAAA6wB,GAGA,IAAAhI,EAAA/2B,EAAA,sBACA,GAAA+2B,EAAA,CACA,IAAAilB,EAAA,IAAAjlB,EAAAqc,EAAA,CAAkErwB,QAAA3gB,EAAA2gB,QAAAqV,OAAAh2B,EAAA0jC,YAClE/G,EAAA5d,OAAA66B,OAKAh8C,EAAA,wBACAi9B,EAAA2O,EAAA,qCACAmQ,EAAA,sBACA9e,EAAA2O,EAAA,4BACAmQ,EAAA,wBA7vG6DE,oDCR7Dr+C,EAAAkB,EAAAo9C,GAAAt+C,EAAAU,EAAA49C,EAAA,4BAAAC,IAAAv+C,EAAAU,EAAA49C,EAAA,4BAAAE,IAAAx+C,EAAAU,EAAA49C,EAAA,6BAAAG,IAAAz+C,EAAAU,EAAA49C,EAAA,iCAAAI,IAAA1+C,EAAAU,EAAA49C,EAAA,0BAAAhS,IAAA,IAAAqS,EAAA,CACAC,aAAA,oBAAAv6C,KACAmT,SAAA,WAAAnT,MAAA,aAAAlD,OACA09C,KACA,eAAAx6C,MACA,SAAAA,MACA,WACA,IAEA,OADA,IAAAy6C,MACA,EACO,MAAAt6C,GACP,UALA,GAQAu6C,SAAA,aAAA16C,KACA26C,YAAA,gBAAA36C,MAOA,GAAAs6C,EAAAK,YACA,IAAAC,EAAA,CACA,qBACA,sBACA,6BACA,sBACA,uBACA,sBACA,uBACA,wBACA,yBAGAC,EACA1zC,YAAAmwB,QACA,SAAAuO,GACA,OAAAA,GAAA+U,EAAA1uC,QAAAzP,OAAAkB,UAAAuG,SAAAhI,KAAA2pC,KAAA,GAIA,SAAAiV,EAAAx+C,GAIA,GAHA,iBAAAA,IACAA,EAAAkF,OAAAlF,IAEA,4BAAAsF,KAAAtF,GACA,UAAAuD,UAAA,0CAEA,OAAAvD,EAAAuF,cAGA,SAAAk5C,EAAA/9C,GAIA,MAHA,iBAAAA,IACAA,EAAAwE,OAAAxE,IAEAA,EAIA,SAAAg+C,EAAAC,GACA,IAAAnwC,EAAA,CACAK,KAAA,WACA,IAAAnO,EAAAi+C,EAAA/W,QACA,OAAc94B,UAAA9L,IAAAtC,aAUd,OANAs9C,EAAAnnC,WACArI,EAAAhO,OAAAgO,UAAA,WACA,OAAAA,IAIAA,EAGO,SAAAovC,EAAAgB,GACPz4C,KAAA6J,IAAA,GAEA4uC,aAAAhB,EACAgB,EAAAjvC,QAAA,SAAAjP,EAAAV,GACAmG,KAAA04C,OAAA7+C,EAAAU,IACKyF,MACFwE,MAAAuQ,QAAA0jC,GACHA,EAAAjvC,QAAA,SAAAmvC,GACA34C,KAAA04C,OAAAC,EAAA,GAAAA,EAAA,KACK34C,MACFy4C,GACHz+C,OAAA6V,oBAAA4oC,GAAAjvC,QAAA,SAAA3P,GACAmG,KAAA04C,OAAA7+C,EAAA4+C,EAAA5+C,KACKmG,MAgEL,SAAA44C,EAAAC,GACA,GAAAA,EAAAC,SACA,OAAAl4B,QAAAxC,OAAA,IAAAhhB,UAAA,iBAEAy7C,EAAAC,UAAA,EAGA,SAAAC,EAAAC,GACA,WAAAp4B,QAAA,SAAAzC,EAAAC,GACA46B,EAAAC,OAAA,WACA96B,EAAA66B,EAAAt2C,SAEAs2C,EAAAE,QAAA,WACA96B,EAAA46B,EAAArlB,UAKA,SAAAwlB,EAAApB,GACA,IAAAiB,EAAA,IAAAI,WACA/6B,EAAA06B,EAAAC,GAEA,OADAA,EAAAK,kBAAAtB,GACA15B,EAoBA,SAAAi7B,EAAAC,GACA,GAAAA,EAAA73C,MACA,OAAA63C,EAAA73C,MAAA,GAEA,IAAAgY,EAAA,IAAApV,WAAAi1C,EAAAjtC,YAEA,OADAoN,EAAAnS,IAAA,IAAAjD,WAAAi1C,IACA7/B,EAAArS,OAIA,SAAAmyC,IA0FA,OAzFAx5C,KAAA84C,UAAA,EAEA94C,KAAAy5C,UAAA,SAAAZ,GAhMA,IAAAzV,EAiMApjC,KAAA05C,UAAAb,EACAA,EAEK,iBAAAA,EACL74C,KAAA25C,UAAAd,EACKhB,EAAAE,MAAAC,KAAA98C,UAAA0+C,cAAAf,GACL74C,KAAA65C,UAAAhB,EACKhB,EAAAI,UAAA6B,SAAA5+C,UAAA0+C,cAAAf,GACL74C,KAAA+5C,cAAAlB,EACKhB,EAAAC,cAAAkC,gBAAA9+C,UAAA0+C,cAAAf,GACL74C,KAAA25C,UAAAd,EAAAp3C,WACKo2C,EAAAK,aAAAL,EAAAE,QA5ML3U,EA4MKyV,IA3MLj0C,SAAA1J,UAAA0+C,cAAAxW,KA4MApjC,KAAAi6C,iBAAAX,EAAAT,EAAAxxC,QAEArH,KAAA05C,UAAA,IAAA1B,KAAA,CAAAh4C,KAAAi6C,oBACKpC,EAAAK,cAAAxzC,YAAAxJ,UAAA0+C,cAAAf,IAAAT,EAAAS,IACL74C,KAAAi6C,iBAAAX,EAAAT,GAEA74C,KAAA25C,UAAAd,EAAA7+C,OAAAkB,UAAAuG,SAAAhI,KAAAo/C,GAhBA74C,KAAA25C,UAAA,GAmBA35C,KAAAy4C,QAAAt+C,IAAA,kBACA,iBAAA0+C,EACA74C,KAAAy4C,QAAAlxC,IAAA,2CACOvH,KAAA65C,WAAA75C,KAAA65C,UAAAj+C,KACPoE,KAAAy4C,QAAAlxC,IAAA,eAAAvH,KAAA65C,UAAAj+C,MACOi8C,EAAAC,cAAAkC,gBAAA9+C,UAAA0+C,cAAAf,IACP74C,KAAAy4C,QAAAlxC,IAAA,oEAKAswC,EAAAE,OACA/3C,KAAA+3C,KAAA,WACA,IAAAmC,EAAAtB,EAAA54C,MACA,GAAAk6C,EACA,OAAAA,EAGA,GAAAl6C,KAAA65C,UACA,OAAAj5B,QAAAzC,QAAAne,KAAA65C,WACO,GAAA75C,KAAAi6C,iBACP,OAAAr5B,QAAAzC,QAAA,IAAA65B,KAAA,CAAAh4C,KAAAi6C,oBACO,GAAAj6C,KAAA+5C,cACP,UAAA1hB,MAAA,wCAEA,OAAAzX,QAAAzC,QAAA,IAAA65B,KAAA,CAAAh4C,KAAA25C,cAIA35C,KAAAk4C,YAAA,WACA,OAAAl4C,KAAAi6C,iBACArB,EAAA54C,OAAA4gB,QAAAzC,QAAAne,KAAAi6C,kBAEAj6C,KAAA+3C,OAAAx2B,KAAA43B,KAKAn5C,KAAAm6C,KAAA,WACA,IA3FApC,EACAiB,EACA36B,EAyFA67B,EAAAtB,EAAA54C,MACA,GAAAk6C,EACA,OAAAA,EAGA,GAAAl6C,KAAA65C,UACA,OAjGA9B,EAiGA/3C,KAAA65C,UAhGAb,EAAA,IAAAI,WACA/6B,EAAA06B,EAAAC,GACAA,EAAAoB,WAAArC,GACA15B,EA8FK,GAAAre,KAAAi6C,iBACL,OAAAr5B,QAAAzC,QA5FA,SAAAo7B,GAIA,IAHA,IAAA7/B,EAAA,IAAApV,WAAAi1C,GACAc,EAAA,IAAA71C,MAAAkV,EAAApa,QAEAhG,EAAA,EAAiBA,EAAAogB,EAAApa,OAAiBhG,IAClC+gD,EAAA/gD,GAAAyF,OAAAgsB,aAAArR,EAAApgB,IAEA,OAAA+gD,EAAAt6C,KAAA,IAqFAu6C,CAAAt6C,KAAAi6C,mBACK,GAAAj6C,KAAA+5C,cACL,UAAA1hB,MAAA,wCAEA,OAAAzX,QAAAzC,QAAAne,KAAA25C,YAIA9B,EAAAI,WACAj4C,KAAAi4C,SAAA,WACA,OAAAj4C,KAAAm6C,OAAA54B,KAAAg5B,KAIAv6C,KAAAw6C,KAAA,WACA,OAAAx6C,KAAAm6C,OAAA54B,KAAA+C,KAAAm2B,QAGAz6C,KA1MAy3C,EAAAv8C,UAAAw9C,OAAA,SAAA7+C,EAAAU,GACAV,EAAAw+C,EAAAx+C,GACAU,EAAA+9C,EAAA/9C,GACA,IAAAmgD,EAAA16C,KAAA6J,IAAAhQ,GACAmG,KAAA6J,IAAAhQ,GAAA6gD,IAAA,KAAAngD,KAGAk9C,EAAAv8C,UAAA,gBAAArB,UACAmG,KAAA6J,IAAAwuC,EAAAx+C,KAGA49C,EAAAv8C,UAAAf,IAAA,SAAAN,GAEA,OADAA,EAAAw+C,EAAAx+C,GACAmG,KAAAT,IAAA1F,GAAAmG,KAAA6J,IAAAhQ,GAAA,MAGA49C,EAAAv8C,UAAAqE,IAAA,SAAA1F,GACA,OAAAmG,KAAA6J,IAAA1O,eAAAk9C,EAAAx+C,KAGA49C,EAAAv8C,UAAAqM,IAAA,SAAA1N,EAAAU,GACAyF,KAAA6J,IAAAwuC,EAAAx+C,IAAAy+C,EAAA/9C,IAGAk9C,EAAAv8C,UAAAsO,QAAA,SAAAkwB,EAAAihB,GACA,QAAA9gD,KAAAmG,KAAA6J,IACA7J,KAAA6J,IAAA1O,eAAAtB,IACA6/B,EAAAjgC,KAAAkhD,EAAA36C,KAAA6J,IAAAhQ,KAAAmG,OAKAy3C,EAAAv8C,UAAAsK,KAAA,WACA,IAAAgzC,EAAA,GAIA,OAHAx4C,KAAAwJ,QAAA,SAAAjP,EAAAV,GACA2+C,EAAA71C,KAAA9I,KAEA0+C,EAAAC,IAGAf,EAAAv8C,UAAAoK,OAAA,WACA,IAAAkzC,EAAA,GAIA,OAHAx4C,KAAAwJ,QAAA,SAAAjP,GACAi+C,EAAA71C,KAAApI,KAEAg+C,EAAAC,IAGAf,EAAAv8C,UAAAwK,QAAA,WACA,IAAA8yC,EAAA,GAIA,OAHAx4C,KAAAwJ,QAAA,SAAAjP,EAAAV,GACA2+C,EAAA71C,KAAA,CAAA9I,EAAAU,MAEAg+C,EAAAC,IAGAX,EAAAnnC,WACA+mC,EAAAv8C,UAAAb,OAAAgO,UAAAovC,EAAAv8C,UAAAwK,SAqJA,IAAAkO,EAAA,+CAOO,SAAA8jC,EAAAkD,EAAA3b,GAEP,IAPAn+B,EACA+5C,EAMAhC,GADA5Z,KAAA,IACA4Z,KAEA,GAAA+B,aAAAlD,EAAA,CACA,GAAAkD,EAAA9B,SACA,UAAA17C,UAAA,gBAEA4C,KAAAisB,IAAA2uB,EAAA3uB,IACAjsB,KAAA86C,YAAAF,EAAAE,YACA7b,EAAAwZ,UACAz4C,KAAAy4C,QAAA,IAAAhB,EAAAmD,EAAAnC,UAEAz4C,KAAAc,OAAA85C,EAAA95C,OACAd,KAAAvF,KAAAmgD,EAAAngD,KACAuF,KAAA+lC,OAAA6U,EAAA7U,OACA8S,GAAA,MAAA+B,EAAAlB,YACAb,EAAA+B,EAAAlB,UACAkB,EAAA9B,UAAA,QAGA94C,KAAAisB,IAAAltB,OAAA67C,GAYA,GATA56C,KAAA86C,YAAA7b,EAAA6b,aAAA96C,KAAA86C,aAAA,eACA7b,EAAAwZ,SAAAz4C,KAAAy4C,UACAz4C,KAAAy4C,QAAA,IAAAhB,EAAAxY,EAAAwZ,UAEAz4C,KAAAc,QAjCAA,EAiCAm+B,EAAAn+B,QAAAd,KAAAc,QAAA,MAhCA+5C,EAAA/5C,EAAAi6C,cACAnnC,EAAAnK,QAAAoxC,IAAA,EAAAA,EAAA/5C,GAgCAd,KAAAvF,KAAAwkC,EAAAxkC,MAAAuF,KAAAvF,MAAA,KACAuF,KAAA+lC,OAAA9G,EAAA8G,QAAA/lC,KAAA+lC,OACA/lC,KAAAg7C,SAAA,MAEA,QAAAh7C,KAAAc,QAAA,SAAAd,KAAAc,SAAA+3C,EACA,UAAAz7C,UAAA,6CAEA4C,KAAAy5C,UAAAZ,GAOA,SAAA0B,EAAA1B,GACA,IAAAoC,EAAA,IAAAnB,SAYA,OAXAjB,EACArnC,OACAnS,MAAA,KACAmK,QAAA,SAAA4P,GACA,GAAAA,EAAA,CACA,IAAA/Z,EAAA+Z,EAAA/Z,MAAA,KACAxF,EAAAwF,EAAAoiC,QAAAxiC,QAAA,WACA1E,EAAA8E,EAAAU,KAAA,KAAAd,QAAA,WACAg8C,EAAAvC,OAAAwC,mBAAArhD,GAAAqhD,mBAAA3gD,OAGA0gD,EAqBO,SAAAtD,EAAAwD,EAAAlc,GACPA,IACAA,EAAA,IAGAj/B,KAAApE,KAAA,UACAoE,KAAAo7C,YAAAv+C,IAAAoiC,EAAAmc,OAAA,IAAAnc,EAAAmc,OACAp7C,KAAA4yB,GAAA5yB,KAAAo7C,QAAA,KAAAp7C,KAAAo7C,OAAA,IACAp7C,KAAAq7C,WAAA,eAAApc,IAAAoc,WAAA,KACAr7C,KAAAy4C,QAAA,IAAAhB,EAAAxY,EAAAwZ,SACAz4C,KAAAisB,IAAAgT,EAAAhT,KAAA,GACAjsB,KAAAy5C,UAAA0B,GAjDAzD,EAAAx8C,UAAAogD,MAAA,WACA,WAAA5D,EAAA13C,KAAA,CAA4B64C,KAAA74C,KAAA05C,aAmC5BF,EAAA//C,KAAAi+C,EAAAx8C,WAgBAs+C,EAAA//C,KAAAk+C,EAAAz8C,WAEAy8C,EAAAz8C,UAAAogD,MAAA,WACA,WAAA3D,EAAA33C,KAAA05C,UAAA,CACA0B,OAAAp7C,KAAAo7C,OACAC,WAAAr7C,KAAAq7C,WACA5C,QAAA,IAAAhB,EAAAz3C,KAAAy4C,SACAxsB,IAAAjsB,KAAAisB,OAIA0rB,EAAAhkB,MAAA,WACA,IAAA4nB,EAAA,IAAA5D,EAAA,MAAqCyD,OAAA,EAAAC,WAAA,KAErC,OADAE,EAAA3/C,KAAA,QACA2/C,GAGA,IAAAC,EAAA,sBAEA7D,EAAA8D,SAAA,SAAAxvB,EAAAmvB,GACA,QAAAI,EAAA/xC,QAAA2xC,GACA,UAAA/2C,WAAA,uBAGA,WAAAszC,EAAA,MAA6ByD,SAAA3C,QAAA,CAA0BiD,SAAAzvB,MAGhD,IAAA2rB,EAAAr6C,KAAAq6C,aACP,IACA,IAAAA,EACC,MAAA1jB,IACD0jB,EAAA,SAAAvW,EAAAxnC,GACAmG,KAAAqhC,UACArhC,KAAAnG,OACA,IAAA85B,EAAA0E,MAAAgJ,GACArhC,KAAAshC,MAAA3N,EAAA2N,QAEApmC,UAAAlB,OAAAY,OAAAy9B,MAAAn9B,WACA08C,EAAA18C,UAAAuF,YAAAm3C,EAGO,SAAApS,EAAAoV,EAAA3lB,GACP,WAAArU,QAAA,SAAAzC,EAAAC,GACA,IAAAu9B,EAAA,IAAAjE,EAAAkD,EAAA3lB,GAEA,GAAA0mB,EAAA5V,QAAA4V,EAAA5V,OAAAK,QACA,OAAAhoB,EAAA,IAAAw5B,EAAA,yBAGA,IAAAgE,EAAA,IAAApK,eAEA,SAAAqK,IACAD,EAAAvV,QAGAuV,EAAA3C,OAAA,WACA,IAxFA6C,EACArD,EAuFAxZ,EAAA,CACAmc,OAAAQ,EAAAR,OACAC,WAAAO,EAAAP,WACA5C,SA3FAqD,EA2FAF,EAAAG,yBAAA,GA1FAtD,EAAA,IAAAhB,EAGAqE,EAAA78C,QAAA,oBACAI,MAAA,SAAAmK,QAAA,SAAAwyC,GACA,IAAAC,EAAAD,EAAA38C,MAAA,KACAxE,EAAAohD,EAAAxa,QAAAjwB,OACA,GAAA3W,EAAA,CACA,IAAAN,EAAA0hD,EAAAl8C,KAAA,KAAAyR,OACAinC,EAAAC,OAAA79C,EAAAN,MAGAk+C,IAgFAxZ,EAAAhT,IAAA,gBAAA2vB,IAAAM,YAAAjd,EAAAwZ,QAAAt+C,IAAA,iBACA,IAAA0+C,EAAA,aAAA+C,IAAAL,SAAAK,EAAAO,aACAh+B,EAAA,IAAAw5B,EAAAkB,EAAA5Z,KAGA2c,EAAA1C,QAAA,WACA96B,EAAA,IAAAhhB,UAAA,4BAGAw+C,EAAAQ,UAAA,WACAh+B,EAAA,IAAAhhB,UAAA,4BAGAw+C,EAAAS,QAAA,WACAj+B,EAAA,IAAAw5B,EAAA,0BAGAgE,EAAA1sC,KAAAysC,EAAA76C,OAAA66C,EAAA1vB,KAAA,GAEA,YAAA0vB,EAAAb,YACAc,EAAAU,iBAAA,EACK,SAAAX,EAAAb,cACLc,EAAAU,iBAAA,GAGA,iBAAAV,GAAA/D,EAAAE,OACA6D,EAAAW,aAAA,QAGAZ,EAAAlD,QAAAjvC,QAAA,SAAAjP,EAAAV,GACA+hD,EAAAY,iBAAA3iD,EAAAU,KAGAohD,EAAA5V,SACA4V,EAAA5V,OAAAjoB,iBAAA,QAAA+9B,GAEAD,EAAAjK,mBAAA,WAEA,IAAAiK,EAAAvF,YACAsF,EAAA5V,OAAA6C,oBAAA,QAAAiT,KAKAD,EAAAa,UAAA,IAAAd,EAAAjC,UAAA,KAAAiC,EAAAjC,aAIAlU,EAAAkX,UAAA,EAEAn/C,KAAAioC,QACAjoC,KAAAioC,QACAjoC,KAAAk6C,UACAl6C,KAAAm6C,UACAn6C,KAAAo6C,6BClgBA,IAAAgF,EAKArhD;;;;;;;;;;;AAAAA,EAYC,oBAAAiC,UAAAyC,UAPQnD,KAFQ8/C,EAAA,WACjB,OAQC,SAAArhD,GACD,aAEA,sBAAAslB,QACA,gCAEA,IAAAg8B,EAAAthD,EAAAuhD,QAAAvhD,EAAAwhD,SACA,GAAAF,EAAA,CAEA,IAAAG,EAAAH,EAAAI,QAAAJ,EAAAK,aACA,GAAAF,EAAA,CAEA,IAAAG,EAAA5hD,EAAA6hD,QAAAP,EAAAn8C,aAAAzG,OACAojD,EAAA9hD,EAAA+hD,cAAAN,EAAAt8C,aAAAzG,OAGAsjD,GAFAhiD,EAAAiiD,WAAAjiD,EAAAkiD,KAAAxjD,OAEAsB,EAAAkjB,UAAAC,UAAAhV,QAAA,aACAkgC,IAAAruC,EAAAwhD,WAAAQ,EACAG,GAAAb,EAAAI,UAAAJ,EAAAK,aACA,GAAAtT,GAAA8T,EAAA,CAgKA,IAAAC,EAAA,CAAmBC,aAAA,wBACnBC,EAAA,CAAmBC,uBAAA,gBAqXnB,GAhPA,wCACAr0C,QAAA,SAAA9P,GACA,IAAAokD,EAAAf,EAAArjD,GAEAqjD,EAAArjD,GAAA,SAAA6E,EAAA4C,EAAAxH,GACA,IACAokD,EAAAC,EAAAC,EAmEAjN,EAjQAkN,EA6LAriC,EAAA,GAAAna,MAAAjI,KAAA4H,WAGA,OAAA3H,GACA,kBACAqkD,EAAAI,EAAA5/C,GAAAy/C,EAAA78C,EAAA88C,EAAAtkD,EACA,MACA,gBACAokD,EAAAI,EAAAxkD,GAAAqkD,EAAAniC,EAAA,GAAAoiC,EAAApiC,EAAA,GACA,QAAAtd,KACA4C,EAAAi9C,EAAAj9C,IACAg9C,MAAAh9C,EAAAg9C,IAAAE,EAAAN,IACA58C,EAAAm9C,UAAAn9C,EAAAm9C,QAAA,QAAAn9C,EAAAo9C,IAAA,MAAAp9C,EAAA88C,EAAA70C,OAAAo1C,GAAAP,EAAA70C,OAAAq1C,GAAAR,EAAAv8C,SACAma,EAAA,IA1MAqiC,EAAAE,EA0MAj9C,GAzMAwoC,IAAAuU,EAAA,YAAAA,EAAAQ,WAAAR,EAAAQ,KACAC,EAAAC,SAAAC,mBAAAv6B,KAAAE,UAAA05B,MAAA72C,SA0MA,MACA,gBACA02C,EAAAliC,EAAA,GAAAmiC,EAAAniC,EAAA,GAAAoiC,EAAApiC,EAAA,GACAA,EAAA,GAAAliB,EAAAmlD,KAIA,mBAAAplD,GAAA,SAAAqkD,EAAAlkD,MAAAkkD,EAAAgB,KAEA,OADAhB,EAAAz+C,OAAAy+C,EAAAz+C,QAAA,CAA8C0/C,QAAA,IAAAC,UAAA,IAAAC,UAAA,KAAAC,UAAA,MAAiEpB,EAAAgB,KAAAllD,MAC/GkjD,EAAAqC,UAAA,MAAAxC,EAAAyC,gBAAA,IAAA/6C,WAAAy5C,EAAAz+C,OAAA,OAAAy+C,EAAAC,EAAAC,GAGA,GAAAR,GAAA,gBAAA/jD,GAAA,sBAAAqkD,EAAAlkD,QAAAkkD,EAAAuB,eAAAvB,EAAAuB,eAAA,MAEA,OADA/gD,EAAA4/C,EAAA5/C,IAAA1E,KAAA,0BAAA0E,EAAAwgD,KACAhC,EAAAwC,YAAAhhD,GAAA,yBACAgjB,KAAA,SAAA7F,GACA,OAAAkF,QAAA2T,IAAA,CACAwoB,EAAAyC,UAAA,MAAA9jC,EAAA+jC,WACA1C,EAAAyC,UAAA,MAAA9jC,EAAAgkC,gBAGAn+B,KAAA,SAAA/b,GAGA,OAFAA,EAAA,GAAA24C,IAAA34C,EAAA,GAAA24C,IAAAE,EAAAN,GACAv4C,EAAA,GAAA84C,QAAAL,EAAA70C,OAAAq1C,GAAAj5C,EAAA,GAAA84C,QAAAL,EAAA70C,OAAAo1C,GACA59B,QAAA2T,IAAA,CACAwoB,EAAAqC,UAAA,MAAA55C,EAAA,GAAAu4C,GAAA,EAAAv4C,EAAA,GAAA84C,SACAvB,EAAAqC,UAAA,MAAA55C,EAAA,GAAAu4C,EAAAC,EAAAx4C,EAAA,GAAA84C,aAGA/8B,KAAA,SAAA/b,GACA,OACAi6C,UAAAj6C,EAAA,GACAk6C,WAAAl6C,EAAA,MAKA,IAAAi4C,GAAA9T,GAA4D,WAA5DoU,EAAAgB,MAAA,IAA4DllD,OAC5D,cAAAH,GAAA,QAAA6E,GAAA,SAAAw/C,EAAAlkD,MAAA,QAAAsH,EAAAo9C,IACA,OAAAxB,EAAAqC,UAAA,MAAAT,EAAAgB,EAAAx+C,EAAAua,IAAA/hB,EAAAkiB,EAAA,GAAAA,EAAA,IAGA,GAAA4hC,GAAA,cAAA/jD,IAAA,SAAA6E,GAAA,UAAAA,GACA,OAAAw+C,EAAAqC,UAAA,MAlPA,SAAA1jC,GACA,IAAAkkC,EAAAC,EAAAnkC,GAAAokC,GAAA,EACAF,EAAAtgD,OAAA,IAAAwgD,GAAA,EAAAF,EAAAne,SACA,IAAAyc,EAAA,CAAmBQ,KAAA,GACnB,OAAAkB,EAAA,OACA,2BACA,IAAAG,EAAA,qCACAC,EAAAH,EAAAD,EAAA,IACAE,GAAAE,EAAAve,QACA,QAAAnoC,EAAA,EAAgCA,EAAA0mD,EAAA1gD,OAAmBhG,IACnD0mD,EAAA1mD,GAAA,KAAA0mD,EAAA1mD,GAAA0mD,EAAA1mD,GAAA4Q,SAAA,IACAg0C,EAAA6B,EAAAzmD,IAAA2mD,EAAAC,EAAAF,EAAA1mD,KAEA4kD,EAAA,UACA,MACA,QACA,UAAA9gD,UAAA,wBAEA,OAAA8gD,EAgOAiC,CAAAh/C,GAAAxH,EAAAkiB,EAAA,GAAAA,EAAA,IAGA,GAAA8tB,GAAA,cAAAjwC,EACA,OAAAqjD,EAAAqD,QAAAvkC,EAAA,GAAAliB,EAAAwH,GACAogB,KAAA,SAAA7F,GACA,OAAAqhC,EAAAqC,UAAA7gD,EAAAmd,EAAAG,EAAA,GAAAA,EAAA,GAAAA,EAAA,MAKA,IACAm1B,EAAA8M,EAAA18C,MAAA27C,EAAAlhC,GAEA,MAAAne,GACA,OAAAkjB,QAAAxC,OAAA1gB,GA+BA,OA5BAisC,IACAqH,EAAA,IAAApwB,QAAA,SAAApe,EAAAshC,GACAkN,EAAAqL,QACArL,EAAAkI,QAAA,SAAAx7C,GAAwDomC,EAAApmC,IACxDszC,EAAAqP,WAAA,SAAAjmD,GAAwDoI,EAAApI,EAAAuC,OAAA+F,YAIxDsuC,IAAAzvB,KAAA,SAAA7F,GAiBA,MAhBA,SAAAqiC,EAAAlkD,OACAkkD,EAAAz+C,SAAAy+C,EAAAz+C,OAAA,EAAAoc,EAAA4kC,UAAAhhD,SAEA,GAAAy+C,EAAAlkD,KAAA+xB,OAAA,SACAmyB,EAAAuB,gBAAAvB,EAAAuB,eAAA5jC,EAAA+jC,WAAA/jC,GAAA4kC,UAAAhB,eACAvB,EAAAwC,iBAAAxC,EAAAwC,gBAAA7kC,EAAA+jC,WAAA/jC,GAAA4kC,UAAAC,iBAGA7kC,EADAA,EAAA+jC,WAAA/jC,EAAAgkC,WACA,CACAD,UAAA,IAAAlC,EAAA7hC,EAAA+jC,UAAA1B,EAAAC,EAAAC,EAAA70C,OAAAq1C,IACAiB,WAAA,IAAAnC,EAAA7hC,EAAAgkC,WAAA3B,EAAAC,EAAAC,EAAA70C,OAAAo1C,KAIA,IAAAjB,EAAA7hC,EAAAqiC,EAAAC,EAAAC,QASA,wBACAz0C,QAAA,SAAA9P,GACA,IAAAokD,EAAAf,EAAArjD,GAEAqjD,EAAArjD,GAAA,SAAA6E,EAAA4C,EAAAxH,GACA,IA4BAq3C,EA5BAn1B,EAAA,GAAAna,MAAAjI,KAAA4H,WAEA,OAAA3H,GACA,gBACAmiB,EAAA,GAAA1a,EAAA29C,KACA,MACA,cACAjjC,EAAA,GAAA1a,EAAA29C,KAAAjjC,EAAA,GAAAliB,EAAAmlD,KAaA,IATArB,GAAA9T,GAAqE,WAArExoC,EAAAm/C,UAAAvB,MAAA,IAAqEllD,OACrE,cAAAH,GAAA,QAAA6E,GAAA,SAAA4C,EAAAm/C,UAAAzmD,OACAgiB,EAAA,WAGA4hC,GAAA,cAAA/jD,GAAA,SAAA6E,GAAA,UAAAA,IACAsd,EAAA,UAGA8tB,GAAA,YAAAjwC,EACA,OAAAqjD,EAAAyC,UAAAjhD,EAAA4C,GACAogB,KAAA,SAAA7F,GAEA,MADA,QAAAnd,IAAAmd,EAAAijC,EAAAC,SAAAC,mBAAAv6B,KAAAE,UAAA45B,EAAA1iC,QACAqhC,EAAAyD,QAAA3kC,EAAA,GAAAliB,EAAA+hB,KAKA,IACAs1B,EAAA8M,EAAA18C,MAAA27C,EAAAlhC,GAEA,MAAAne,GACA,OAAAkjB,QAAAxC,OAAA1gB,GA+BA,OA5BAisC,IACAqH,EAAA,IAAApwB,QAAA,SAAApe,EAAAshC,GACAkN,EAAAqL,QACArL,EAAAkI,QAAA,SAAAx7C,GAAwDomC,EAAApmC,IACxDszC,EAAAqP,WAAA,SAAAjmD,GAAwDoI,EAAApI,EAAAuC,OAAA+F,YAIxD,cAAAhJ,GAAA,QAAA6E,IACAyyC,IAAAzvB,KAAA,SAAA7F,GACA,OAAA+hC,GAAA9T,GAA6E,WAA7ExoC,EAAAm/C,UAAAvB,MAAA,IAA6EllD,OAC7E,SAAAsH,EAAAm/C,UAAAzmD,KACA,CAAoC0kD,IAAA,MAAAJ,IAAAE,EAAAl9C,EAAAm/C,WAAAhC,QAAAn9C,EAAAs/C,OAAA/+C,QAAAg9C,KAAA,EAAAhjC,EAAAukC,EAAAC,EAAAxkC,OAEpCA,EAAA0iC,EAAA1iC,IACAyiC,MAAAziC,EAAA,IAAA2iC,EAAAl9C,EAAAm/C,YACA5kC,EAAA4iC,UAAA5iC,EAAA,mBAAAva,EAAAvF,KAAAuF,EAAAs/C,OAAAr3C,OAAAq1C,GAAA,YAAAt9C,EAAAvF,KAAAuF,EAAAs/C,OAAAr3C,OAAAo1C,GAAAr9C,EAAAs/C,OAAA/+C,SACAga,OAIA+hC,GAAA,cAAA/jD,GAAA,SAAA6E,GAAA,UAAAA,IACAyyC,IAAAzvB,KAAA,SAAA7F,GAEA,OADAA,EA/UA,SAAAA,GACA,IAAA7gB,EAAA+kD,EAAA,YAAAE,GAAA,EACA,OAAApkC,EAAA6iC,KACA,UAGA,IAFA,IAAAwB,EAAA,qCACAC,EAAA,GACA1mD,EAAA,EAAgCA,EAAAymD,EAAAzgD,QAChCygD,EAAAzmD,KAAAoiB,EADoDpiB,IAAA,CAEpD,IAAA6H,EAAA6+C,EAAA1mD,GAAAqlD,EAAAgB,EAAAjkC,EAAAqkC,EAAAzmD,MACA,IAAA6H,EAAA,KAAA6+C,EAAA1mD,GAAA,IAAAgL,WAAAnD,EAAA7B,OAAA,GAAA0gD,EAAA1mD,GAAAiO,IAAApG,EAAA,IAEA6+C,EAAA1gD,OAAA,IAAAwgD,GAAA,EAAAE,EAAA5R,QAAA,IAAA9pC,WAAA,OACAs7C,EAAA,6BACA/kD,EAAAmlD,EACA,MACA,QACA,UAAA5iD,UAAA,wBAKA,OAHAwiD,EAAAj9C,KAAA,IAAA2B,WAAAo8C,EAAA7lD,IAAAwM,QACAy4C,EACAF,EAAAxR,QAAA,IAAA9pC,WAAA,MADAs7C,EAAA,IAA+B/gD,IAAA,EAAAtE,MAAAqlD,EAAA,IAE/B,IAAAt7C,WAAAo8C,EAAAd,IAAAv4C,OA0TAs5C,CAAAvC,EAAA1iC,OAKAs1B,KAIA,sCACAxnC,QAAA,SAAA9P,GACA,IAAAokD,EAAAf,EAAArjD,GAEAqjD,EAAArjD,GAAA,SAAA6E,EAAA4C,EAAAxH,EAAAC,GACA,GAAA+vC,KAAAhwC,EAAA2S,YAAA1S,MAAA0S,YACA,UAAA+rB,MAAA,6BAEA,IAWA2Y,EAXAn1B,EAAA,GAAAna,MAAAjI,KAAA4H,WACA08C,EAAAI,EAAA5/C,GAEA,GAAAorC,GAAA,YAAAjwC,GAAA,YAAAqkD,EAAAlkD,KAAA,CACA,IAAA+mD,EAAAriD,EAAAsiD,WAAA,EACAhlC,EAAA,IAAAliB,EAAA0N,QAAA1N,GAAA+H,MAAA,EAAA/H,EAAA2S,WAAAs0C,GACAriD,EAAAM,KAAAlF,EAAA0N,QAAA1N,GAAA+H,MAAA/H,EAAA2S,WAAAs0C,GAGA/kC,EAAA,GAAA1a,EAAA29C,KAGA,IACA9N,EAAA8M,EAAA18C,MAAA27C,EAAAlhC,GAEA,MAAAne,GACA,OAAAkjB,QAAAxC,OAAA1gB,GA0BA,OAvBAisC,IACAqH,EAAA,IAAApwB,QAAA,SAAApe,EAAAshC,GACAkN,EAAAqL,QACArL,EAAAkI,QAAA,SAAAx7C,GACAomC,EAAApmC,IAGAszC,EAAAqP,WAAA,SAAAjmD,GAGA,GAFAA,IAAAuC,OAAA+F,OAEA,YAAAhJ,GAAAU,aAAA0mD,oBAAA,CACA,IAAAnnD,EAAAS,EAAA2mD,WAAAvmD,EAAAJ,EAAAyE,KACAzE,EAAA,IAAAkK,WAAA3K,EAAA2S,WAAA9R,EAAA8R,aACA/E,IAAA,IAAAjD,WAAA3K,GAAA,GACAS,EAAAmN,IAAA,IAAAjD,WAAA9J,GAAAb,EAAA2S,YACAlS,IAAAiN,OAGA7E,EAAApI,OAKA42C,KAIArH,EAAA,CACA,IAAAqX,EAAAjE,EAAAkE,OAEAlE,EAAA,gBAAAx+C,EAAA4C,GACA,IAAAA,EAAAmL,WACA,UAAA+rB,MAAA,6BAEA,IAAA2Y,EACA,IACAA,EAAAgQ,EAAAvnD,KAAAsjD,EAAAx+C,EAAA4C,GAEA,MAAAzD,GACA,OAAAkjB,QAAAxC,OAAA1gB,GASA,OANAszC,EAAA,IAAApwB,QAAA,SAAApe,EAAAshC,GACAkN,EAAAqL,QACArL,EAAAkI,QAAA,SAAAx7C,GAAgDomC,EAAApmC,IAChDszC,EAAAqP,WAAA,SAAAjmD,GAAgDoI,EAAApI,EAAAuC,OAAA+F,YAMhDpH,EAAAuhD,OAAA7iD,OAAAY,OAAAgiD,EAAA,CACAyC,gBAAA,CAA8B9kD,MAAA,SAAAgE,GAAwB,OAAAq+C,EAAAyC,gBAAA9gD,KACtDy+C,OAAA,CAA8BziD,MAAAwiD,KAG9BzhD,EAAAiiD,YAGAE,IACAb,EAAAI,OAAAD,EAEAzhD,EAAA6hD,OAAAD,EACA5hD,EAAA+hD,aAAAD,EACA9hD,EAAAiiD,eAzjBA,SAAA0C,EAAA5kD,GACA,OAAA6lD,KAAA7lD,GAAA4D,QAAA,WAAAA,QAAA,WAAAA,QAAA,WAGA,SAAA0gD,EAAAtkD,GAEA,OADAA,MAAA,OAAAqG,MAAA,GAAArG,EAAAiE,OAAA,GACA6hD,KAAA9lD,EAAA4D,QAAA,UAAAA,QAAA,WAGA,SAAA0/C,EAAAtjD,GAEA,IADA,IAAA8F,EAAA,IAAAmD,WAAAjJ,EAAAiE,QACAhG,EAAA,EAAwBA,EAAA+B,EAAAiE,OAAchG,IAAA6H,EAAA7H,GAAA+B,EAAA6Z,WAAA5b,GACtC,OAAA6H,EAGA,SAAA++C,EAAA/+C,GAEA,OADAA,aAAAuD,cAAAvD,EAAA,IAAAmD,WAAAnD,IACApC,OAAAgsB,aAAA3pB,MAAArC,OAAAoC,GAGA,SAAAg9C,EAAA5/C,GACA,IAAAnE,EAAA,CAAiBP,MAAA0E,EAAA1E,MAAA0E,GAAA,IAAAw8C,cAAA97C,QAAA,UACjB,OAAA7E,EAAAP,MACA,YACA,cACA,cACA,cACA,MACA,cACA,cACA,aACA0E,EAAAe,SAAAlF,EAAA,OAAAmE,EAAAe,QACA,MACA,WACAf,EAAAwgD,OAAA3kD,EAAA,KAAA+jD,EAAA5/C,EAAAwgD,OACAxgD,EAAAe,SAAAlF,EAAA,OAAAmE,EAAAe,QACA,MACA,uBACAf,EAAAgiD,iBAAAnmD,EAAA,mBAAAkK,WAAA/F,EAAAgiD,iBACAhiD,EAAA+gD,gBAAAllD,EAAA,cAAAmE,EAAA+gD,eACA,MACA,wBACA,eACA/gD,EAAAwgD,OAAA3kD,EAAA,KAAA+jD,EAAA5/C,EAAAwgD,OACAxgD,EAAAgiD,iBAAAnmD,EAAA,mBAAAkK,WAAA/F,EAAAgiD,iBACAhiD,EAAA+gD,gBAAAllD,EAAA,cAAAmE,EAAA+gD,eACA,MACA,QACA,UAAA8B,YAAA,sBAEA,OAAAhnD,EAGA,SAAAikD,EAAA9/C,GACA,OACA8iD,KAAA,CACArC,QAAA,MACAC,UAAA,QACAC,UAAA,QACAC,UAAA,SAEAmC,oBAAA,CACAtC,QAAA,MACAC,UAAA,QACAC,UAAA,QACAC,UAAA,SAEAoC,mBAAA,CACAC,GAAA,UAEAC,WAAA,CACAzC,QAAA,WACAC,UAAA,gBAEAyC,SAAA,CACAC,IAAA,SACAC,IAAA,SACAC,IAAA,UAEAC,UAAA,CACAH,IAAA,UACAC,IAAA,UACAC,IAAA,WAEAE,UAAA,CACAJ,IAAA,UACAC,IAAA,UACAC,IAAA,YAEStjD,EAAA1E,OAAA0E,EAAAwgD,MAAA,IAAwBllD,MAAA0E,EAAAe,QAAA,IAGjC,SAAA8+C,EAAA1iC,IACAA,aAAAhX,aAAAgX,aAAApX,cAAAoX,EAAA4I,KAAAm2B,MAAAS,mBAAA8G,OAAA9B,EAAAxkC,OACA,IAAAwiC,EAAA,CAAmBK,IAAA7iC,EAAA6iC,IAAAJ,IAAAziC,EAAAyiC,IAAAO,IAAAhjC,EAAAgjC,KAAAhjC,EAAAumC,aACnB,OAAA/D,EAAAK,KACA,UACAL,EAAAxiC,MACA,UACA,2CAAAlS,QAAA,SAAAoN,GAA8FA,KAAA8E,IAAAwiC,EAAAtnC,GAAA8E,EAAA9E,MAC9F,MACA,QACA,UAAAxZ,UAAA,wBAEA,OAAA8gD,EAyDA,SAAA2B,EAAAtG,EAAA79C,GAIA,GAHA69C,aAAA70C,cAAA60C,EAAA,IAAAj1C,WAAAi1C,IACA79C,MAAA,CAA2BuZ,IAAA,EAAA7K,IAAAmvC,EAAAj6C,SAE3B5D,EAAA0O,IAAA1O,EAAAuZ,IAAA,GAAAvZ,EAAA0O,IAAAmvC,EAAAj6C,OAAA,UAAA+E,WAAA,iBAEA,IAYA69C,EAZArjD,EAAA06C,EAAA79C,EAAAuZ,OACArK,EAAA2uC,EAAA79C,EAAAuZ,OAEA,GAAArK,GAAA,KAEA,GADAA,GAAA,IACAlP,EAAA0O,IAAA1O,EAAAuZ,IAAArK,EAAA,UAAAvG,WAAA,iBACA,QAAA89C,EAAA,EAA+Bv3C,KAAOu3C,IAAA,EAAAA,GAAA5I,EAAA79C,EAAAuZ,OACtCrK,EAAAu3C,EAGA,GAAAzmD,EAAA0O,IAAA1O,EAAAuZ,IAAArK,EAAA,UAAAvG,WAAA,iBAIA,OAAAxF,GACA,OACAqjD,EAAA3I,EAAArvC,SAAAxO,EAAAuZ,IAAAvZ,EAAAuZ,KAAArK,GACA,MACA,OACA,GAAA2uC,EAAA79C,EAAAuZ,OAAA,UAAAojB,MAAA,0BACAztB,IACA,OACAs3C,EAAA,IAAA59C,WAAAi1C,EAAArvC,SAAAxO,EAAAuZ,IAAAvZ,EAAAuZ,KAAArK,IAAAvD,OACA,MACA,OACA66C,EAAA,KACA,MACA,OACA,IAAAE,EAAAlB,KAAAhB,EAAA3G,EAAArvC,SAAAxO,EAAAuZ,IAAAvZ,EAAAuZ,KAAArK,KACA,KAAAw3C,KAAA1E,GAAA,UAAArlB,MAAA,yBAAA+pB,GACAF,EAAAxE,EAAA0E,GACA,MACA,QACAF,EAAA,GACA,QAAA93C,EAAA1O,EAAAuZ,IAAArK,EAA8ClP,EAAAuZ,IAAA7K,GAAe83C,EAAAv/C,KAAAk9C,EAAAtG,EAAA79C,IAC7D,MACA,QACA,UAAA28B,MAAA,yBAAAx5B,EAAA4C,SAAA,KAGA,OAAAygD,EAGA,SAAAxB,EAAA9gD,EAAA25C,GACAA,MAAA,IAEA,IAAA16C,EAAA,EAAA+L,EAAA,EACAqK,EAAAskC,EAAAj6C,OAAA,EAIA,GAFAi6C,EAAA52C,KAAA,KAEA/C,aAAA0E,WAAA,CACAzF,EAAA,EAAA+L,EAAAhL,EAAAN,OACA,QAAAhG,EAAA,EAA4BA,EAAAsR,EAAStR,IAAAigD,EAAA52C,KAAA/C,EAAAtG,SAErC,GAAAsG,aAAA8E,YAAA,CACA7F,EAAA,EAAA+L,EAAAhL,EAAA0M,WAAA1M,EAAA,IAAA0E,WAAA1E,GACA,QAAAtG,EAAA,EAA4BA,EAAAsR,EAAStR,IAAAigD,EAAA52C,KAAA/C,EAAAtG,SAErC,UAAAsG,EACAf,EAAA,EAAA+L,EAAA,OAEA,oBAAAhL,QAAAg+C,EAAA,CACA,IAAAwE,EAAAzD,EAAAwC,KAAAvD,EAAAh+C,KACAf,EAAA,EAAA+L,EAAAw3C,EAAA9iD,OACA,QAAAhG,EAAA,EAA4BA,EAAAsR,EAAStR,IAAAigD,EAAA52C,KAAAy/C,EAAA9oD,SAErC,GAAAsG,aAAA4E,MAAA,CACA,QAAAlL,EAAA,EAA4BA,EAAAsG,EAAAN,OAAgBhG,IAAAonD,EAAA9gD,EAAAtG,GAAAigD,GAC5C16C,EAAA,GAAA+L,EAAA2uC,EAAAj6C,OAAA2V,MAEA,uBAAArV,GAAA,IAAAA,EAAAf,KAAAe,EAAArF,iBAAAmK,aAMA,UAAA2zB,MAAA,yBAAAz4B,GALAA,EAAA,IAAA0E,WAAA1E,EAAArF,OAAAsE,EAAA,EAAA+L,EAAAhL,EAAA0M,WACAitC,EAAA52C,KAAA,GAAwB,QAAArJ,EAAA,EAAiBA,EAAAsR,EAAStR,IAAAigD,EAAA52C,KAAA/C,EAAAtG,IAClDsR,IAMA,GAAAA,GAAA,KACA,IAAAu3C,EAAAv3C,IAAA,EAEA,IADA2uC,EAAAp2B,OAAAlO,EAAA,EAAAktC,GAAA,OAAAA,GAAA,OAAAA,GAAA,UAAAA,GACAv3C,EAAA,KAAAu3C,GAAA,KAAAA,IAAA,EAAAv3C,IACAA,EAAA,GAAA2uC,EAAAp2B,OAAAlO,EAAA,EAAArK,GACAA,GAAA,IAKA,OAFA2uC,EAAAp2B,OAAAlO,EAAA,IAAApW,EAAA+L,GAEA2uC,EAGA,SAAAgE,EAAA1iD,EAAAsjD,EAAAO,EAAA2D,GACAroD,OAAA6kB,iBAAA7e,KAAA,CACA8+C,KAAA,CACAvkD,MAAAM,GAEAe,KAAA,CACArB,MAAAM,EAAAe,KACA1B,YAAA,GAEA+nD,YAAA,CACA1nD,WAAAsC,IAAA6hD,EAAA7jD,EAAAonD,YAAAvD,EACAxkD,YAAA,GAEAomD,UAAA,CACA/lD,WAAAsC,IAAAshD,EAAAtjD,EAAAylD,UAAAnC,EACAjkD,YAAA,GAEAumD,OAAA,CACAlmD,WAAAsC,IAAAwlD,EAAAxnD,EAAA4lD,OAAA4B,EACAnoD,YAAA,KAKA,SAAAukD,EAAA6D,GACA,iBAAAA,GAAA,YAAAA,GAAA,YAAAA,EAGA,SAAA9D,EAAA8D,GACA,eAAAA,GAAA,YAAAA,GAAA,cAAAA,GA9TA/K,CAAAj8C,IACS8F,MAAAhI,EAFM,OAENC,EAAAD,QAAAujD","file":"app/polyfills.f2c043f2c68a31a9eee7.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 = 667);\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","// 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","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.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.6.2' };\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","// 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","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.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","// 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","// 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 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","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 || new Function(\"return 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","// 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","'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 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: '© 2019 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';\n\nvar classof = require('./_classof');\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n","'use strict';\nrequire('./es6.regexp.exec');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\nvar regexpExec = require('./_regexp-exec');\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\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","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 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","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';\n\nvar regexpFlags = require('./_flags');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\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","'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","// 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","'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","'use strict';\nvar regexpExec = require('./_regexp-exec');\nrequire('./_export')({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\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","// 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","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\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 },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\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 },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar sameValue = require('./_same-value');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\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 },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative($search, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\n\n// eslint-disable-next-line no-empty\nvar SUPPORTS_Y = !!(function () { try { return new RegExp('x', 'y'); } catch (e) {} })();\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\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 // based on es5-shim implementation, need to rework it\n internalSplit = 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 match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\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 internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? 0xffffffff : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\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.exec');\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 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 var checkDuplicate = global[('__zone_symbol__forceDuplicateZoneCheck')] === true;\n if (global['Zone']) {\n // if global['Zone'] already exists (maybe zone.js was already loaded or\n // some other lib also registered a global object named Zone), we may need\n // to throw an error, but sometimes user may not want this error.\n // For example,\n // we have two web pages, page1 includes zone.js, page2 doesn't.\n // and the 1st time user load page1 and page2, everything work fine,\n // but when user load page2 again, error occurs because global['Zone'] already exists.\n // so we add a flag to let user choose whether to throw this error or not.\n // By default, if existing Zone is from zone.js, we will not throw the error.\n if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') {\n throw new Error('Zone already loaded.');\n }\n else {\n return global['Zone'];\n }\n }\n var Zone = /** @class */ (function () {\n function Zone(parent, zoneSpec) {\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 if (checkDuplicate) {\n throw Error('Already loaded patch: ' + name);\n }\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 _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 _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 if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) {\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 = undefined;\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.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, undefined));\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) { return delegate.hasTask(target, hasTaskState); },\n onScheduleTask: function (delegate, _, target, task) {\n return delegate.scheduleTask(target, task);\n },\n onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) {\n return delegate.invokeTask(target, task, applyThis, applyArgs);\n },\n onCancelTask: function (delegate, _, target, task) { return delegate.cancelTask(target, task); }\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 = zoneSpec &&\n (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 ? 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 ? 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 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 ? ' or \\'' + fromState2 + '\\'' : '') + \", was '\" + this._state + \"'.\");\n }\n };\n ZoneTask.prototype.toString = function () {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId.toString();\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 var nativeThen = nativeMicroTaskQueuePromise[symbolThen];\n if (!nativeThen) {\n // native Promise is not patchable, we need to use `then` directly\n // issue 1078\n nativeThen = nativeMicroTaskQueuePromise['then'];\n }\n nativeThen.call(nativeMicroTaskQueuePromise, 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 []; },\n patchThen: function () { return noop; },\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\nvar __values = (undefined && undefined.__values) || function (o) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\n if (m) return m.call(o);\n return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\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 ?\n [] :\n [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 e_1, _a;\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 try {\n for (var values_1 = __values(values), values_1_1 = values_1.next(); !values_1_1.done; values_1_1 = values_1.next()) {\n var value = values_1_1.value;\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (values_1_1 && !values_1_1.done && (_a = values_1.return)) _a.call(values_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return promise;\n };\n ZoneAwarePromise.all = function (values) {\n var e_2, _a;\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n // Start at 2 to prevent prematurely resolving if .then is called immediately.\n var unresolvedCount = 2;\n var valueIndex = 0;\n var resolvedValues = [];\n var _loop_2 = function (value) {\n if (!isThenable(value)) {\n value = this_1.resolve(value);\n }\n var curValueIndex = valueIndex;\n value.then(function (value) {\n resolvedValues[curValueIndex] = value;\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }, reject);\n unresolvedCount++;\n valueIndex++;\n };\n var this_1 = this;\n try {\n for (var values_2 = __values(values), values_2_1 = values_2.next(); !values_2_1.done; values_2_1 = values_2.next()) {\n var value = values_2_1.value;\n _loop_2(value);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (values_2_1 && !values_2_1.done && (_a = values_2.return)) _a.call(values_2);\n }\n finally { if (e_2) throw e_2.error; }\n }\n // Make the unresolvedCount zero-based again.\n unresolvedCount -= 2;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\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 api.patchThen = patchThen;\n if (NativePromise) {\n patchThen(NativePromise);\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 */\nZone.__load_patch('fetch', function (global, Zone, api) {\n var fetch = global['fetch'];\n var ZoneAwarePromise = global.Promise;\n var symbolThenPatched = api.symbol('thenPatched');\n var fetchTaskScheduling = api.symbol('fetchTaskScheduling');\n var fetchTaskAborting = api.symbol('fetchTaskAborting');\n if (typeof fetch !== 'function') {\n return;\n }\n var OriginalAbortController = global['AbortController'];\n var supportAbort = typeof OriginalAbortController === 'function';\n var abortNative = null;\n if (supportAbort) {\n global['AbortController'] = function () {\n var abortController = new OriginalAbortController();\n var signal = abortController.signal;\n signal.abortController = abortController;\n return abortController;\n };\n abortNative = api.patchMethod(OriginalAbortController.prototype, 'abort', function (delegate) { return function (self, args) {\n if (self.task) {\n return self.task.zone.cancelTask(self.task);\n }\n return delegate.apply(self, args);\n }; });\n }\n var placeholder = function () { };\n global['fetch'] = function () {\n var _this = this;\n var args = Array.prototype.slice.call(arguments);\n var options = args.length > 1 ? args[1] : null;\n var signal = options && options.signal;\n return new Promise(function (res, rej) {\n var task = Zone.current.scheduleMacroTask('fetch', placeholder, args, function () {\n var fetchPromise;\n var zone = Zone.current;\n try {\n zone[fetchTaskScheduling] = true;\n fetchPromise = fetch.apply(_this, args);\n }\n catch (error) {\n rej(error);\n return;\n }\n finally {\n zone[fetchTaskScheduling] = false;\n }\n if (!(fetchPromise instanceof ZoneAwarePromise)) {\n var ctor = fetchPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n api.patchThen(ctor);\n }\n }\n fetchPromise.then(function (resource) {\n if (task.state !== 'notScheduled') {\n task.invoke();\n }\n res(resource);\n }, function (error) {\n if (task.state !== 'notScheduled') {\n task.invoke();\n }\n rej(error);\n });\n }, function () {\n if (!supportAbort) {\n rej('No AbortController supported, can not cancel fetch');\n return;\n }\n if (signal && signal.abortController && !signal.aborted &&\n typeof signal.abortController.abort === 'function' && abortNative) {\n try {\n Zone.current[fetchTaskAborting] = true;\n abortNative.call(signal.abortController);\n }\n finally {\n Zone.current[fetchTaskAborting] = false;\n }\n }\n else {\n rej('cancel fetch need a AbortController.signal');\n }\n });\n if (signal && signal.abortController) {\n signal.abortController.task = task;\n }\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 * 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;\n if (isBrowser && target === internalWindow && event.type === 'error') {\n // window.onerror have different signiture\n // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror\n // and onerror callback will prevent default when callback return true\n var errorEvent = event;\n result = listener &&\n listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error);\n if (result === true) {\n event.preventDefault();\n }\n }\n else {\n result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\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 var onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched');\n if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) {\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 obj[onPropPatchedSymbol] = true;\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 copySymbolProperties(src, dest) {\n if (typeof Object.getOwnPropertySymbols !== 'function') {\n return;\n }\n var symbols = Object.getOwnPropertySymbols(src);\n symbols.forEach(function (symbol) {\n var desc = Object.getOwnPropertyDescriptor(src, symbol);\n Object.defineProperty(dest, symbol, {\n get: function () {\n return src[symbol];\n },\n set: function (value) {\n if (desc && (!desc.writable || typeof desc.set !== 'function')) {\n // if src[symbol] is not writable or not have a setter, just return\n return;\n }\n src[symbol] = value;\n },\n enumerable: desc ? desc.enumerable : true,\n configurable: desc ? desc.configurable : true\n });\n });\n}\nvar shouldCopySymbolProperties = false;\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 = null;\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 if (shouldCopySymbolProperties) {\n copySymbolProperties(delegate, proto[name]);\n }\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);\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 isIE() {\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) {\n return true;\n }\n }\n catch (error) {\n }\n return false;\n}\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 */\nvar passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\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 var eventNameToString = patchOptions && patchOptions.eventNameToString;\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 function checkIsPassive(task) {\n if (!passiveSupported && typeof taskData.options !== 'boolean' &&\n typeof taskData.options !== 'undefined' && taskData.options !== null) {\n // options is a non-null non-undefined object\n // passive is not supported\n // don't pass options as object\n // just pass capture as a boolean\n task.options = !!taskData.options.capture;\n taskData.options = task.options;\n }\n }\n var customScheduleGlobal = function (task) {\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 checkIsPassive(task);\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 checkIsPassive(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 eventName = arguments[0];\n var delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n if (isNode && eventName === 'uncaughtException') {\n // don't patch uncaughtException of nodejs to prevent endless loop\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 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 = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR;\n var trueEventName = (eventNameToString ? eventNameToString(eventName) : 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 +\n (eventNameToString ? eventNameToString(eventName) : 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 : undefined;\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 if (!(!passiveSupported && typeof task.options === 'boolean')) {\n // if not support passive, and we pass an option object\n // to addEventListener, we should save the options to task\n task.options = options;\n }\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, eventNameToString ? eventNameToString(eventName) : 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 isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 :\n undefined,\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 (desc && 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', 'freeze', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange', 'resume'\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 || ignoreProperties.length === 0) {\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 var ignoreErrorProperties = isIE ? [{ target: internalWindow, ignoreProperties: ['error'] }] : [];\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 ? ignoreProperties.concat(ignoreErrorProperties) : 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_1 = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget_1) {\n patchFilteredProperties(XMLHttpRequestEventTarget_1 && XMLHttpRequestEventTarget_1.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 patchCallbacks(target, targetName, method, callbacks) {\n var symbol = Zone.__symbol__(method);\n if (target[symbol]) {\n return;\n }\n var nativeDelegate = target[symbol] = target[method];\n target[method] = function (name, opts, options) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n var source = targetName + \".\" + method + \"::\" + 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 nativeDelegate.call(target, name, opts, options);\n };\n attachOriginToPatched(target[method], nativeDelegate);\n}\nfunction registerElementPatch(_global) {\n if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) {\n return;\n }\n var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback'];\n patchCallbacks(document, 'Document', 'registerElement', callbacks);\n}\nfunction patchCustomElements(_global) {\n if ((!isBrowser && !isMix) || !('customElements' in _global)) {\n return;\n }\n var callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback'];\n patchCallbacks(_global.customElements, 'customElements', 'define', callbacks);\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});\nZone.__load_patch('customElements', function (global, Zone, api) {\n registerElementPatch(global);\n patchCustomElements(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 var XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled');\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_1 = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget_1) {\n var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget_1.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 var data = task.data;\n var target = data.target;\n target[XHR_SCHEDULED] = false;\n target[XHR_ERROR_BEFORE_SCHEDULED] = false;\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 && target[XHR_SCHEDULED] && task.state === SCHEDULED) {\n // check whether the xhr has registered onload listener\n // if that is the case, the task should invoke after all\n // onload listeners finish.\n var loadTasks = target['__zone_symbol__loadfalse'];\n if (loadTasks && loadTasks.length > 0) {\n var oriInvoke_1 = task.invoke;\n task.invoke = function () {\n // need to load the tasks again, because in other\n // load listener, they may remove themselves\n var loadTasks = target['__zone_symbol__loadfalse'];\n for (var i = 0; i < loadTasks.length; i++) {\n if (loadTasks[i] === task) {\n loadTasks.splice(i, 1);\n }\n }\n if (!data.aborted && task.state === SCHEDULED) {\n oriInvoke_1.call(task);\n }\n };\n loadTasks.push(task);\n }\n else {\n task.invoke();\n }\n }\n else if (!data.aborted && target[XHR_SCHEDULED] === false) {\n // error occurs when xhr.send()\n target[XHR_ERROR_BEFORE_SCHEDULED] = true;\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 target[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 fetchTaskAborting = zoneSymbol('fetchTaskAborting');\n var fetchTaskScheduling = zoneSymbol('fetchTaskScheduling');\n var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) {\n if (Zone.current[fetchTaskScheduling] === true) {\n // a fetch is scheduling, so we are using xhr to polyfill fetch\n // and because we already schedule macroTask for fetch, we should\n // not schedule a macroTask for xhr again\n return sendNative.apply(self, args);\n }\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 = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false };\n var task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted &&\n task.state === SCHEDULED) {\n // xhr request throw error when send\n // we should invoke task instead of leaving a scheduled\n // pending macroTask\n task.invoke();\n }\n }\n }; });\n var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self, args) {\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 else if (Zone.current[fetchTaskAborting] === true) {\n // the abort is called from fetch polyfill, we need to call native abort of XHR.\n return abortNative.apply(self, args);\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.24b12cf2806f2044ae5c.js b/app/vendor.f2c043f2c68a31a9eee7.js similarity index 97% rename from app/vendor.24b12cf2806f2044ae5c.js rename to app/vendor.f2c043f2c68a31a9eee7.js index 3ca6501a..5447ff82 100644 --- a/app/vendor.24b12cf2806f2044ae5c.js +++ b/app/vendor.f2c043f2c68a31a9eee7.js @@ -1572,7 +1572,7 @@ var r=n(770),a=n(771),i=n(535);function o(){return l.TYPED_ARRAY_SUPPORT?2147483 * * Date: 2016-08-08 */ -function(e){var t,n,r,a,i,o,s,l,c,u,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,O=[],z=O.pop,A=O.push,I=O.push,D=O.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("^"+M+"$"),G={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+q),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-]+))$/,J=/[+~]/,X=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{I.apply(O=D.call(w.childNodes),w.childNodes),O[w.childNodes.length].nodeType}catch(e){I={apply:O.length?function(e,t){A.apply(e,D.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,c,u,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(!(c=t.getElementById(i)))return r;if(c.id===i)return r.push(c),r}else if(b&&(c=b.getElementById(i))&&v(t,c)&&c.id===i)return r.push(c),r}else{if(d[2])return I.apply(r,t.getElementsByTagName(e)),r;if((i=d[3])&&n.getElementsByClassName&&t.getElementsByClassName)return I.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((u=t.getAttribute("id"))?u=u.replace(te,ne):t.setAttribute("id",u=k),s=(f=o(e)).length;s--;)f[s]="#"+u+" "+ye(f[s]);y=f.join(","),b=J.test(e)&&me(t.parentNode)||t}if(y)try{return I.apply(r,b.querySelectorAll(y)),r}catch(e){}finally{u===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 ce(e,t){for(var n=e.split("|"),a=n.length;a--;)r.attrHandle[n[a]]=t}function ue(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(X,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(X,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:u?N(u,e)-N(u,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:u?N(u,e)-N(u,t):0;if(a===i)return ue(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?ue(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,u=!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 u=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(X,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(X,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(X,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 c,u,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=(c=(u=(d=(h=g)[k]||(h[k]={}))[h.uniqueID]||(d[h.uniqueID]={}))[e]||[])[0]===_&&c[1])&&c[2],h=p&&g.childNodes[p];h=++p&&h&&h[m]||(v=p=0)||f.pop();)if(1===h.nodeType&&++v&&h===t){u[e]=[_,p,v];break}}else if(b&&(v=p=(c=(u=(d=(h=t)[k]||(h[k]={}))[h.uniqueID]||(d[h.uniqueID]={}))[e]||[])[0]===_&&c[1]),!1===v)for(;(h=++p&&h&&h[m]||(v=p=0)||f.pop())&&((s?h.nodeName.toLowerCase()!==y:1!==h.nodeType)||!++v||(b&&((u=(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(X,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(X,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,c=null!=t;s-1&&(i[c]=!(o[c]=d))}}else y=ke(y===o?y.splice(f,y.length):y),a?a(null,o,y,l):I.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,u=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!==c)||((t=n).nodeType?u(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,u){var d,f,g,y=0,b="0",v=i&&[],k=[],w=c,j=i||a&&r.find.TAG("*",u),x=_+=null==w?1:Math.random()||.1,E=j.length;for(u&&(c=o===p||o||u);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}u&&(_=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]=z.call(l));k=ke(k)}I.apply(l,k),u&&!i&&k.length>0&&y+t.length>1&&ie.uniqueSort(l)}return u&&(_=x,c=w),v};return n?se(i):i}(i,a))).selector=e}return s},l=ie.select=function(e,t,n,a){var i,l,c,u,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"===(c=l[0]).type&&9===t.nodeType&&m&&r.relative[l[1].type]){if(!(t=(r.find.ID(c.matches[0].replace(X,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--&&(c=l[i],!r.relative[u=c.type]);)if((d=r.find[u])&&(a=d(c.matches[0].replace(X,ee),J.test(l[0].type)&&me(t.parentNode)||t))){if(l.splice(i,1),!(e=a.length&&ye(l)))return I.apply(n,a),n;break}}return(h||s(e,p))(a,t,!m,n,!t||J.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")})||ce("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")})||ce("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),le(function(e){return null==e.getAttribute("disabled")})||ce(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},O=j.expr.match.needsContext;function z(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function I(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(I(this,e||[],!1))},not:function(e){return this.pushStack(I(this,e||[],!0))},is:function(e){return!!I(this,"string"==typeof e&&O.test(e)?j(e):e||[],!1).length}});var D,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(j.fn.init=function(e,t,n){var r,a;if(!e)return this;if(n=n||D,"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)),A.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,D=j(o);var R=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};function M(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 M(e,"nextSibling")},prev:function(e){return M(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 z(e,"iframe")?e.contentDocument:(z(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 q=/[^\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(q)||[],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 c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},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,c=function(){var n,c;if(!(e=i&&(r!==L&&(s=void 0,l=[n]),t.rejectWith(s,l))}};e?u():(j.Deferred.getStackHook&&(u.stackTrace=j.Deferred.getStackHook()),n.setTimeout(u))}}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,c=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),c&&(o?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(j(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){X.remove(this,e)})}}),j.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=J.get(e,t),n&&(!r||Array.isArray(n)?r=J.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 J.get(e,n)||J.access(e,n,{empty:j.Callbacks("once memory").add(function(){J.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&&z(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(c=j.contains(i.ownerDocument,i),o=ge(d.appendChild(i),"script"),c&&ye(o),n)for(u=0;i=o[u++];)fe.test(i.type||"")&&n.push(i);return d}be=o.createDocumentFragment().appendChild(o.createElement("div")),(ve=o.createElement("input")).setAttribute("type","radio"),ve.setAttribute("checked","checked"),ve.setAttribute("name","t"),be.appendChild(ve),y.checkClone=be.cloneNode(!0).cloneNode(!0).lastChild.checked,be.innerHTML="",y.noCloneChecked=!!be.cloneNode(!0).lastChild.defaultValue;var _e=o.documentElement,je=/^key/,xe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function Ce(){return!0}function Se(){return!1}function Te(){try{return o.activeElement}catch(e){}}function Oe(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)Oe(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=Se;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,c,u,d,h,p,f,m,g=J.get(e);if(g)for(n.handler&&(n=(i=n).handler,a=i.selector),a&&j.find.matchesSelector(_e,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}),c=(t=(t||"").match(q)||[""]).length;c--;)p=m=(s=Ee.exec(t[c])||[])[1],f=(s[2]||"").split(".").sort(),p&&(d=j.event.special[p]||{},p=(a?d.delegateType:d.bindType)||p,d=j.event.special[p]||{},u=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,u),u.handler.guid||(u.handler.guid=n.guid)),a?h.splice(h.delegateCount++,0,u):h.push(u),j.event.global[p]=!0)},remove:function(e,t,n,r,a){var i,o,s,l,c,u,d,h,p,f,m,g=J.hasData(e)&&J.get(e);if(g&&(l=g.events)){for(c=(t=(t||"").match(q)||[""]).length;c--;)if(p=m=(s=Ee.exec(t[c])||[])[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--;)u=h[i],!a&&m!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(h.splice(i,1),u.selector&&h.delegateCount--,d.remove&&d.remove.call(e,u));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[c],n,r,!0);j.isEmptyObject(l)&&J.remove(e,"handle events")}},dispatch:function(e){var t,n,r,a,i,o,s=j.event.fix(e),l=new Array(arguments.length),c=(J.get(this,"events")||{})[s.type]||[],u=j.event.special[s.type]||{};for(l[0]=s,t=1;t=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(i=[],o={},n=0;n-1:j.find(a,this,null,[c]).length),o[a]&&i.push(r);i.length&&s.push({elem:c,handlers:i})}return c=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,Ae=/\s*$/g;function Ne(e,t){return z(e,"table")&&z(11!==t.nodeType?t:t.firstChild,"tr")&&j(e).children("tbody")[0]||e}function Re(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Pe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,a,i,o,s,l,c;if(1===t.nodeType){if(J.hasData(e)&&(i=J.access(e),o=J.set(t,i),c=i.events))for(a in delete o.handle,o.events={},c)for(n=0,r=c[a].length;n1&&"string"==typeof f&&!y.checkClone&&Ie.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=we(t,e[0].ownerDocument,!1,e,r)).firstChild,1===a.childNodes.length&&(a=i),i||r)){for(s=(o=j.map(ge(a,"script"),Re)).length;d")},clone:function(e,t,n){var r,a,i,o,s,l,c,u=e.cloneNode(!0),d=j.contains(e.ownerDocument,e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||j.isXMLDoc(e)))for(o=ge(u),r=0,a=(i=ge(e)).length;r0&&ye(o,!d&&ge(e,"script")),u},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[J.expando]){if(t.events)for(r in t.events)a[r]?j.event.remove(n,r):j.removeEvent(n,r,t.handle);n[J.expando]=void 0}n[X.expando]&&(n[X.expando]=void 0)}}}),j.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(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||Ne(this,e).appendChild(e)})},prepend:function(){return qe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ne(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&&!Ae.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 et(e,t,n){var r=Fe(e),a=Ve(e,t,r),i="border-box"===j.css(e,"boxSizing",!1,r),o=i;if(Le.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 tt(e,t,n,r,a){return new tt.prototype.init(e,t,n,r,a)}j.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Ve(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=We.test(t),c=e.style;if(l||(t=Ze(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:c[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")||(c[t]="inherit"),o&&"set"in o&&void 0===(n=o.set(e,n,r))||(l?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var a,i,o,s=$(t);return We.test(t)||(t=Ze(s)),(o=j.cssHooks[t]||j.cssHooks[s])&&"get"in o&&(a=o.get(e,!0,n)),void 0===a&&(a=Ve(e,t,r)),"normal"===a&&t in Qe&&(a=Qe[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!Ke.test(j.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):se(e,Ge,function(){return et(e,t,r)})},set:function(e,n,r){var a,i=Fe(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)),Je(0,n,s)}}}),j.cssHooks.marginLeft=He(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Ve(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=Je)}),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=Fe(e),a=t.length;o1)}}),j.Tween=tt,tt.prototype={constructor:tt,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=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.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):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.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)}}},tt.propHooks.scrollTop=tt.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=tt.prototype.init,j.fx.step={};var nt,rt,at=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){rt&&(!1===o.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(ot):n.setTimeout(ot,j.fx.interval),j.fx.tick())}function st(){return n.setTimeout(function(){nt=void 0}),nt=Date.now()}function lt(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 ct(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)?dt: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&&z(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(q);if(a&&1===e.nodeType)for(;n=a[r++];)e.removeAttribute(n)}}),dt={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=ht[t]||j.find.attr;ht[t]=function(e,t,r){var a,i,o=t.toLowerCase();return r||(i=ht[o],ht[o]=a,a=null!=n(e,t,r)?o:null,ht[o]=i),a}});var pt=/^(?:input|select|textarea|button)$/i,ft=/^(?:a|area)$/i;function mt(e){return(e.match(q)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function yt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(q)||[]}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):pt.test(e.nodeName)||ft.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,gt(this)))});if((t=yt(e)).length)for(;n=this[l++];)if(a=gt(n),r=1===n.nodeType&&" "+mt(a)+" "){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");a!==(s=mt(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,gt(this)))});if(!arguments.length)return this.attr("class","");if((t=yt(e)).length)for(;n=this[l++];)if(a=gt(n),r=1===n.nodeType&&" "+mt(a)+" "){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>-1;)r=r.replace(" "+i+" "," ");a!==(s=mt(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,gt(this),t),t)}):this.each(function(){var t,a,i,o;if(r)for(a=0,i=j(this),o=yt(e);t=o[a++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||((t=gt(this))&&J.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":J.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+mt(gt(n))+" ").indexOf(t)>-1)return!0;return!1}});var bt=/\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(bt,""):null==n?"":n:void 0}}),j.extend({valHooks:{option:{get:function(e){var t=j.find.attr(e,"value");return null!=t?t:mt(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 vt=/^(?:focusinfocus|focusoutblur)$/,kt=function(e){e.stopPropagation()};j.extend(j.event,{trigger:function(e,t,r,a){var i,s,l,c,u,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&&!vt.test(g+j.event.triggered)&&(g.indexOf(".")>-1&&(y=g.split("."),g=y.shift(),y.sort()),u=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(c=h.delegateType||g,vt.test(c+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?c:h.bindType||g,(d=(J.get(s,"events")||{})[e.type]&&J.get(s,"handle"))&&d.apply(s,t),(d=u&&s[u])&&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)||u&&b(r[g])&&!v(r)&&((l=r[u])&&(r[u]=null),j.event.triggered=g,e.isPropagationStopped()&&p.addEventListener(g,kt),r[g](),e.isPropagationStopped()&&p.removeEventListener(g,kt),j.event.triggered=void 0,l&&(r[u]=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=J.access(r,t);a||r.addEventListener(e,n,!0),J.access(r,t,(a||0)+1)},teardown:function(){var r=this.ownerDocument||this,a=J.access(r,t)-1;a?J.access(r,t,a):(r.removeEventListener(e,n,!0),J.remove(r,t))}}});var wt=n.location,_t=Date.now(),jt=/\?/;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 xt=/\[\]$/,Et=/\r?\n/g,Ct=/^(?:submit|button|image|reset|file)$/i,St=/^(?:input|select|textarea|keygen)/i;function Tt(e,t,n,r){var a;if(Array.isArray(t))j.each(t,function(t,a){n||xt.test(e)?r(e,a):Tt(e+"["+("object"==typeof a&&null!=a?t:"")+"]",a,n,r)});else if(n||"object"!==_(t))r(e,t);else for(a in t)Tt(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)Tt(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")&&St.test(this.nodeName)&&!Ct.test(e)&&(this.checked||!he.test(e))}).map(function(e,t){var n=j(this).val();return null==n?null:Array.isArray(n)?j.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Ot=/%20/g,zt=/#.*$/,At=/([?&])_=[^&]*/,It=/^(.*?):[ \t]*([^\r\n]*)$/gm,Dt=/^(?:GET|HEAD)$/,Nt=/^\/\//,Rt={},Pt={},Mt="*/".concat("*"),qt=o.createElement("a");function Bt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,a=0,i=t.toLowerCase().match(q)||[];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 Lt(e,t,n,r){var a={},i=e===Pt;function o(s){var l;return a[s]=!0,j.each(e[s]||[],function(e,s){var c=s(t,n,r);return"string"!=typeof c||i||a[c]?i?!(l=c):void 0:(t.dataTypes.unshift(c),o(c),!1)}),l}return o(t.dataTypes[0])||!a["*"]&&o("*")}function Ft(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=wt.href,j.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:wt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(wt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Mt,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?Ft(Ft(e,j.ajaxSettings),t):Ft(j.ajaxSettings,e)},ajaxPrefilter:Bt(Rt),ajaxTransport:Bt(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,a,i,s,l,c,u,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(u){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 u?i:null},setRequestHeader:function(e,t){return null==u&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,k[e]=t),this},overrideMimeType:function(e){return null==u&&(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(u)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||wt.href)+"").replace(Nt,wt.protocol+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(q)||[""],null==f.crossDomain){c=o.createElement("a");try{c.href=f.url,c.href=c.href,f.crossDomain=qt.protocol+"//"+qt.host!=c.protocol+"//"+c.host}catch(e){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=j.param(f.data,f.traditional)),Lt(Rt,f,t,x),u)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(Ot,"+")):(p=f.url.slice(a.length),f.data&&(f.processData||"string"==typeof f.data)&&(a+=(jt.test(a)?"&":"?")+f.data,delete f.data),!1===f.cache&&(a=a.replace(At,"$1"),p=(jt.test(a)?"&":"?")+"_="+_t+++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]?", "+Mt+"; q=0.01":""):f.accepts["*"]),f.headers)x.setRequestHeader(h,f.headers[h]);if(f.beforeSend&&(!1===f.beforeSend.call(m,x,f)||u))return x.abort();if(_="abort",b.add(f.complete),x.done(f.success),x.fail(f.error),r=Lt(Pt,f,t,x)){if(x.readyState=1,d&&g.trigger("ajaxSend",[x,f]),u)return x;f.async&&f.timeout>0&&(l=n.setTimeout(function(){x.abort("timeout")},f.timeout));try{u=!1,r.send(k,E)}catch(e){if(u)throw e;E(-1,e)}}else E(-1,"No Transport");function E(e,t,o,s){var c,h,p,k,w,_=t;u||(u=!0,l&&n.clearTimeout(l),r=void 0,i=s||"",x.readyState=e>0?4:0,c=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,c={},u=e.dataTypes.slice();if(u[1])for(o in e.converters)c[o.toLowerCase()]=e.converters[o];for(i=u.shift();i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=i,i=u.shift())if("*"===i)i=l;else if("*"!==l&&l!==i){if(!(o=c[l+" "+i]||c["* "+i]))for(a in c)if((s=a.split(" "))[1]===i&&(o=c[l+" "+s[0]]||c["* "+s[0]])){!0===o?o=c[a]:!0!==c[a]&&(i=s[0],u.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,c),c?(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,c=!(p=k.error))):(p=_,!e&&_||(_="error",e<0&&(e=0))),x.status=e,x.statusText=(t||_)+"",c?y.resolveWith(m,[h,_,x]):y.rejectWith(m,[x,_,p]),x.statusCode(v),v=void 0,d&&g.trigger(c?"ajaxSuccess":"ajaxError",[x,f,c?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 Ut={0:200,1223:204},Vt=j.ajaxSettings.xhr();y.cors=!!Vt&&"withCredentials"in Vt,y.ajax=Vt=!!Vt,j.ajaxTransport(function(e){var t,r;if(y.cors||Vt&&!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(Ut[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 39bb4819..9780c4e2 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@ - + @@ -26,6 +26,6 @@ - + diff --git a/locales/ca/messages.json b/locales/ca/messages.json index 764ff817..538cd5a0 100644 --- a/locales/ca/messages.json +++ b/locales/ca/messages.json @@ -1,6 +1,6 @@ { "pageTitle": { - "message": "Dipòsit web $APP_NAME$", + "message": "Caixa forta web $APP_NAME$", "description": "The title of the website in the browser window.", "placeholders": { "app_name": { @@ -128,7 +128,7 @@ "message": "Sra." }, "ms": { - "message": "Sra." + "message": "Srta." }, "dr": { "message": "Dr." @@ -218,7 +218,7 @@ "message": "Comprova si la contrasenya ha estat exposada." }, "passwordExposed": { - "message": "Aquesta contrasenya ha estat exposada $VALUE$ vegades en errors de seguretat de dades. Heu de canviar-la.", + "message": "Aquesta contrasenya ha estat exposada $VALUE$ vegades en filtracions de seguretat de dades. Heu de canviar-la.", "placeholders": { "value": { "content": "$1", @@ -267,7 +267,7 @@ "description": "Search item type" }, "searchVault": { - "message": "Cerca en el dipòsit" + "message": "Cerca en la caixa forta" }, "allItems": { "message": "Tots els elements" @@ -366,7 +366,7 @@ "description": "Copy value to clipboard" }, "copyPassword": { - "message": "Copia contrasenya", + "message": "Copia la contrasenya", "description": "Copy password to clipboard" }, "copyUsername": { @@ -386,10 +386,10 @@ "description": "Copy URI to clipboard" }, "myVault": { - "message": "El meu dipòsit" + "message": "La meua caixa forta" }, "vault": { - "message": "Dipòsit" + "message": "Caixa forta" }, "shareSelected": { "message": "Comparteix selecció" @@ -482,7 +482,7 @@ "message": "Carpeta suprimida" }, "loggedOut": { - "message": "Desconnectar-se" + "message": "Sessió tancada" }, "loginExpired": { "message": "La vostra sessió ha caducat." @@ -503,7 +503,7 @@ "message": "No" }, "loginOrCreateNewAccount": { - "message": "Inicieu sessió o creeu un compte nou per accedir al dipòsit segur." + "message": "Inicieu sessió o creeu un compte nou per accedir a la caixa forta." }, "createAccount": { "message": "Crea un compte" @@ -521,40 +521,40 @@ "message": "El vostre nom" }, "yourNameDesc": { - "message": "Com et dius?" + "message": "Com vols que et diguen?" }, "masterPass": { "message": "Contrasenya mestra" }, "masterPassDesc": { - "message": "La contrasenya mestra és la contrasenya que utilitzeu per accedir al vostre dipòsit. És molt important que no oblideu la vostra contrasenya mestra. No hi ha manera de recuperar la contrasenya en cas que l'oblideu." + "message": "La contrasenya mestra és la clau que utilitzeu per accedir a la vostra caixa forta. És molt important que no la oblideu. No hi ha manera de recuperar-la en cas que la oblideu." }, "masterPassHintDesc": { - "message": "Un suggeriment de contrasenya mestra pot ajudar-vos a recordar-la si la oblideu." + "message": "Una pista de la contrasenya mestra pot ajudar-vos a recordar-la si la oblideu." }, "reTypeMasterPass": { "message": "Torneu a escriure la contrasenya mestra" }, "masterPassHint": { - "message": "Suggeriment de la contrasenya mestra (opcional)" + "message": "Pista de la contrasenya mestra (opcional)" }, "masterPassHintLabel": { - "message": "Suggeriment de contrasenya mestra" + "message": "Pista de la contrasenya mestra" }, "settings": { "message": "Configuració" }, "passwordHint": { - "message": "Suggeriment de contrasenya" + "message": "Pista de la contrasenya" }, "enterEmailToGetHint": { "message": "Introduïu l'adreça electrònica del vostre compte per rebre la contrasenya mestra." }, "getMasterPasswordHint": { - "message": "Obteniu el suggeriment de contrasenya mestra" + "message": "Obteniu la pista de la contrasenya mestra" }, "emailRequired": { - "message": "L'adreça de correu electrònic és obligatoria." + "message": "L'adreça de correu electrònic és obligatòria." }, "invalidEmail": { "message": "L’adreça electrònica no és vàlida." @@ -581,7 +581,7 @@ "message": "Adreça electrònica" }, "yourVaultIsLocked": { - "message": "El dipòsit està bloquejat. Verifiqueu la contrasenya mestra per continuar." + "message": "La caixa forta està bloquejada. Verifiqueu la contrasenya mestra per continuar." }, "unlock": { "message": "Desbloqueja" @@ -620,7 +620,7 @@ "message": "Organització nova" }, "noOrganizationsList": { - "message": "No pertanyeu a cap organització. Les organitzacions permeten compartir elements amb seguretat amb altres usuaris." + "message": "No pertanyeu a cap organització. Les organitzacions permeten compartir elements amb altres usuaris de forma segura." }, "versionNumber": { "message": "Versió $VERSION_NUMBER$", @@ -728,10 +728,10 @@ "message": "Organitzacions" }, "shareDesc": { - "message": "Trieu una organització amb la qual vulgueu compartir aquest element. Compartir transfereix la propietat de l'element a l'organització. Ja no sereu el propietari directe d'aquest element una vegada que s'haja compartit." + "message": "Trieu una organització amb la qual vulgueu compartir aquest element. La compartició transfereix la propietat de l'element a l'organització. Ja no sereu el propietari directe d'aquest element una vegada que s'haja compartit." }, "shareManyDesc": { - "message": "Trieu una organització amb la qual vulgueu compartir aquests elements. Compartir transfereix la propietat de l'element a l'organització. Ja no sereu el propietari directe d'aquests elements una vegada que s'haja compartit." + "message": "Trieu una organització amb la qual vulgueu compartir aquests elements. La compartició transfereix la propietat de l'element a l'organització. Ja no sereu el propietari directe d'aquests elements una vegada que s'haja compartit." }, "collectionsDesc": { "message": "Editeu les col·leccions amb les què es comparteix aquest element. Només els usuaris de l'organització que tinguen accés a aquestes col·leccions podran veure'l." @@ -746,7 +746,7 @@ } }, "moveSelectedItemsDesc": { - "message": "Trieu una carpeta a la que vulgueu moure els $COUNT$ elements seleccionats.", + "message": "Trieu una carpeta a la que vulgueu desplaçar els $COUNT$ elements seleccionats.", "placeholders": { "count": { "content": "$1", @@ -781,28 +781,28 @@ "message": "Advertiment" }, "exportWarningDesc": { - "message": "Aquesta exportació conté les dades del vostre dipòsit en un format no xifrat. No hauríeu d'emmagatzemar o enviar el fitxer exportat a través de canals no segurs (com ara el correu electrònic). Elimineu-lo immediatament després d'haver acabat d'usar-lo." + "message": "Aquesta exportació conté les dades de la vostra caixa forta en un format no xifrat. No hauríeu d'emmagatzemar o enviar el fitxer exportat a través de canals no segurs (com ara el correu electrònic). Elimineu-lo immediatament després d'haver acabat d'usar-lo." }, "exportMasterPassword": { - "message": "Introduïu la contrasenya mestra per exportar les dades del dipòsit." + "message": "Introduïu la contrasenya mestra per exportar les dades de la caixa forta." }, "exportVault": { - "message": "Exporta dipòsit" + "message": "Exporta la caixa forta" }, "fileFormat": { "message": "Format de fitxer" }, "exportSuccess": { - "message": "S'han exportat les vostres dades del vostre dipòsit." + "message": "S'han exportat les dades de la vostra caixa forta." }, "passwordGenerator": { "message": "Generador de contrasenyes" }, "minNumbers": { - "message": "Mínim de números" + "message": "Mínim de caràcters númerics" }, "minSpecial": { - "message": "Mínim d'especials", + "message": "Mínim de caràcters especials", "description": "Minimum Special Characters" }, "ambiguous": { @@ -851,7 +851,7 @@ } }, "loggedOutWarning": { - "message": "Si es procedeix, tancarà la vostra sessió actual i haureu de tornar a iniciar-la. Les sessions d'altres dispositius poden continuar mantenint-se actives fins a una hora." + "message": "Si es procedeix, es tancarà la vostra sessió actual i haureu de tornar a iniciar-la. Les sessions d'altres dispositius poden continuar mantenint-se actives fins a una hora." }, "emailChanged": { "message": "El correu electrònic s'ha canviat" @@ -878,7 +878,7 @@ "message": "Confirma la contrasenya nova" }, "encKeySettings": { - "message": "Configuració de clau d'encriptació" + "message": "Configuració de claus de xifratge" }, "kdfAlgorithm": { "message": "Algorisme de KDF" @@ -887,7 +887,7 @@ "message": "Iteracions de KDF" }, "kdfIterationsDesc": { - "message": "Més quantitat d'iteracions de KDF poden ajudar a protegir la contrasenya mestra d'un atac per força bruta. Recomanem un valor de $VALUE$ o més.", + "message": "Més quantitat d'iteracions de KDF ajuden a protegir la contrasenya mestra d'un atac per força bruta. Recomanem un valor de $VALUE$ o més.", "placeholders": { "value": { "content": "$1", @@ -896,7 +896,7 @@ } }, "kdfIterationsWarning": { - "message": "Establir massa iteracions de KDF pot provocar un rendiment deficient en l'inici de sessió (i desbloqueig) de Bitwarden en dispositius amb CPUs lentes. Recomanem que augmenteu el valor en increments de $INCREMENT$ i, a continuació, proveu-ho en tots els vostres dispositius.", + "message": "L'establiment de massa iteracions de KDF pot provocar un rendiment deficient en els inicis de sessió (i desbloqueig) de Bitwarden en dispositius amb CPUs lentes. Recomanem que augmenteu el valor en increments de $INCREMENT$ i, a continuació, proveu-ho en tots els vostres dispositius.", "placeholders": { "increment": { "content": "$1", @@ -908,43 +908,43 @@ "message": "Canvia KDF" }, "encKeySettingsChanged": { - "message": "S'ha canviat la configuració de claus de xifrat" + "message": "S'ha canviat la configuració de les claus de xifratge" }, "dangerZone": { - "message": "Zona de perill" + "message": "Zona perillosa" }, "dangerZoneDesc": { "message": "Aneu amb compte, aquestes accions no són reversibles!" }, "deauthorizeSessions": { - "message": "Desautoritzar sessions" + "message": "Desautoritza sessions" }, "deauthorizeSessionsDesc": { - "message": "Voleu evitar que el vostre compte estiga iniciat en un altre dispositiu? Seguiu aquestes passes per desautoritzar tots els ordinadors o dispositius que hàgiu utilitzat prèviament. Aquest pas de seguretat es recomana si anteriorment heu utilitzat un ordinador públic o si heu guardat la contrasenya accidentalment en un dispositiu que no és vostre. Aquest pas també esborrarà totes les sessions d'inici de sessió en dues passes recordades prèviament." + "message": "Voleu evitar que el vostre compte s'inicie en un altre dispositiu? Seguiu aquestes passes per desautoritzar tots els ordinadors o dispositius que hàgeu utilitzat prèviament. Aquest pas de seguretat es recomana si anteriorment heu utilitzat un ordinador públic o si heu guardat la contrasenya accidentalment en un dispositiu que no és vostre. Aquest pas també esborrarà totes les sessions d'inici de sessió en dues passes recordades prèviament." }, "deauthorizeSessionsWarning": { - "message": "El procediment també tancarà la sessió actual, i l'heu de tornar a iniciar. També demanarà iniciar la sessió de dues passes, si està habilitada. Les sessions actives d'altres dispositius poden continuar mantenint-se actives fins a una hora." + "message": "El procediment també tancarà la sessió actual, i l'heu de tornar a iniciar. També demanarà iniciar la sessió en dues passes, si està habilitada. Les sessions actives d'altres dispositius poden continuar mantenint-se actives fins a una hora." }, "sessionsDeauthorized": { "message": "Totes les sessions estan desautoritzades" }, "purgeVault": { - "message": "Purga dipòsit" + "message": "Purga la caixa forta" }, "purgedOrganizationVault": { - "message": "S'ha purgat el dipòsit d'organització." + "message": "S'ha purgat la caixa forta de l'organització." }, "purgeVaultDesc": { - "message": "Procediu a continuació per esborrar tots els elements i carpetes del vostre dipòsit. Els elements compartits i que pertanyen a una organització no se suprimiran." + "message": "Procediu a continuació per esborrar tots els elements i carpetes de la vostra caixa forta. Els elements compartits i que pertanyen a una organització no se suprimiran." }, "purgeOrgVaultDesc": { - "message": "Procediu a continuació per esborrar tots els elements del dipòsit de l'organització." + "message": "Procediu a continuació per esborrar tots els elements de la caixa forta de l'organització." }, "purgeVaultWarning": { - "message": "La purga del diposit és permanent. No es pot desfer." + "message": "La purga de la caixa forta és permanent. No es pot desfer." }, "vaultPurged": { - "message": "S'ha purgat el vostre dipòsit." + "message": "S'ha purgat la vostra caixa forta." }, "deleteAccount": { "message": "Suprimeix el compte" @@ -968,13 +968,13 @@ "message": "Eines" }, "importData": { - "message": "Importa les dades" + "message": "Importa dades" }, "importSuccess": { - "message": "Les dades s'han importat amb èxit al vostre dipòsit." + "message": "Les dades s'han importat amb èxit a la vostra caixa forta." }, "importFormatError": { - "message": "Les dades no estan formatejades correctament. Comproveu el fitxer d'importació i torneu-ho a provar." + "message": "Les dades no estan formatades correctament. Comproveu el fitxer d'importació i torneu-ho a provar." }, "importNothingError": { "message": "No s'ha importat res." @@ -1002,47 +1002,47 @@ "message": "Opcions" }, "optionsDesc": { - "message": "Customize your web vault experience." + "message": "Personalitzeu la vostra caixa forta web." }, "optionsUpdated": { - "message": "Options updated" + "message": "Opcions actualitzades" }, "language": { "message": "Idioma" }, "languageDesc": { - "message": "Change the language used by the web vault." + "message": "Canvia l'idioma utilitzat per la caixa forta web." }, "disableIcons": { - "message": "Deshabilita icones del lloc web" + "message": "Deshabilita les icones del lloc web" }, "disableIconsDesc": { - "message": "Les icones del lloc web proporcionen una imatge que es pot reconèixer al costat de cada element d'inici de sessió al vostre dipòsit." + "message": "Les icones del lloc web proporcionen una imatge que es pot reconèixer al costat de cada element d'inici de sessió a la vostra caixa forta." }, "enableGravatars": { "message": "Habilita Gravatars", "description": "'Gravatar' is the name of a service. See www.gravatar.com" }, "enableGravatarsDesc": { - "message": "Use avatar images loaded from gravatar.com." + "message": "Utilitzeu imatges d'avatar carregades de gravatar.com." }, "default": { "message": "Per defecte" }, "domainRules": { - "message": "Domain Rules" + "message": "Regles de domini" }, "domainRulesDesc": { - "message": "If you have the same login across multiple different website domains, you can mark the website as \"equivalent\". \"Global\" domains are ones already created for you by Bitwarden." + "message": "Si teniu el mateix inici de sessió en diversos dominis web diferents, podeu marcar el lloc web com a \"equivalent\". Els dominis \"globals\" són els que Bitwarden ja ha creat per a vosaltres." }, "globalEqDomains": { - "message": "Global Equivalent Domains" + "message": "Dominis equivalents globals" }, "customEqDomains": { - "message": "Custom Equivalent Domains" + "message": "Dominis equivalents personalitzats" }, "exclude": { - "message": "Exclude" + "message": "Exclou" }, "include": { "message": "Inclou" @@ -1057,7 +1057,7 @@ "message": "Introduïu una llista de dominis separats per comes. Només es permeten els dominis \"base\". No introduïu els subdominis. Per exemple, introduïu \"google.com\" en lloc de \"www.google.com\". També podeu introduir \"androidapp:\/\/package.name\" per associar una aplicació d'android amb altres dominis del lloc web." }, "customDomainX": { - "message": "Custom Domain $INDEX$", + "message": "Domini personalitzat $INDEX$", "placeholders": { "index": { "content": "$1", @@ -1066,22 +1066,22 @@ } }, "domainsUpdated": { - "message": "Domains updated" + "message": "Dominis actualitzats" }, "twoStepLogin": { "message": "Inici de sessió en dues passes" }, "twoStepLoginDesc": { - "message": "Secure your account by requiring an additional step when logging in." + "message": "Protegiu el vostre compte exigint un pas addicional en iniciar sessió." }, "twoStepLoginOrganizationDesc": { - "message": "Require two-step login for your organization's users by configuring providers at the organization level." + "message": "Demana un inici de sessió en dues passes per als usuaris de la vostra organització mitjançant la configuració de proveïdors a nivell de l'organització." }, "twoStepLoginRecoveryWarning": { - "message": "Enabling two-step login can permanently lock you out of your Bitwarden account. A recovery code allows you to access your account in the event that you can no longer use your normal two-step login provider (ex. you lose your device). Bitwarden support will not be able to assist you if you lose access to your account. We recommend you write down or print the recovery code and keep it in a safe place." + "message": "Si habiliteu l'inici de sessió en dues passes, pot bloquejar-vos de manera definitiva del compte de Bitwarden. Un codi de recuperació us permet accedir al vostre compte en cas que no pugueu utilitzar el proveïdor d'inici de sessió en dues passes (p. Ex. Perdreu el dispositiu). El suport Bitwarden no podrà ajudar-vos si perdeu l'accés al vostre compte. Us recomanem que escriviu o imprimiu el codi de recuperació i el mantingueu en un lloc segur." }, "viewRecoveryCode": { - "message": "View Recovery Code" + "message": "Mostra el codi de recuperació" }, "providers": { "message": "Proveïdors", @@ -1107,10 +1107,10 @@ "message": "Cal una subscripció premium per utilitzar aquesta característica." }, "youHavePremiumAccess": { - "message": "You have premium access" + "message": "Teniu accés premium" }, "alreadyPremiumFromOrg": { - "message": "You already have access to premium features because of an organization you are a member of." + "message": "Ja teniu accés a les funcions premium degut a que sou membre d'una organització." }, "manage": { "message": "Administra" @@ -1119,10 +1119,10 @@ "message": "Deshabilita" }, "twoStepLoginProviderEnabled": { - "message": "This two-step login provider is enabled on your account." + "message": "Aquest proveïdor d'inici de sessió en dues passes està habilitat al vostre compte." }, "twoStepLoginAuthDesc": { - "message": "Enter your master password to modify two-step login settings." + "message": "Introduïu la vostra contrasenya mestra per modificar la configuració d'inici de sessió en dues passes." }, "twoStepAuthenticatorDesc": { "message": "Seguiu aquestes passes per configurar l'inici de sessió en dues passes amb una aplicació autenticadora:" @@ -1134,16 +1134,16 @@ "message": "Necessiteu una aplicació d'autenticació en dues passes? Baixeu-ne una de les següents" }, "iosDevices": { - "message": "iOS devices" + "message": "Dispositius iOS" }, "androidDevices": { - "message": "Android devices" + "message": "Dispositius Android" }, "windowsDevices": { - "message": "Windows devices" + "message": "Dispositius Windows" }, "twoStepAuthenticatorAppsRecommended": { - "message": "Es recomana aquestes aplicacions, però, altres aplicacions autenticadores també funcionaran." + "message": "Es recomanen aquestes aplicacions, però, altres aplicacions autenticadores també funcionaran." }, "twoStepAuthenticatorScanCode": { "message": "Escanegeu aquest codi QR amb l'aplicació autenticadora" @@ -1155,37 +1155,37 @@ "message": "Introduïu el codi de verificació de 6 dígits generat a l'aplicació" }, "twoStepAuthenticatorReaddDesc": { - "message": "En cas que hàgiu d'afegir-lo a un altre dispositiu, a continuació teniu el codi QR (o clau) requerit per l'aplicació autenticadora." + "message": "En cas que hàgeu d'afegir-lo a un altre dispositiu, a continuació teniu el codi QR (o clau) requerit per l'aplicació autenticadora." }, "twoStepDisableDesc": { - "message": "Are you sure you want to disable this two-step login provider?" + "message": "Esteu segur que voleu inhabilitar aquest proveïdor d'inici de sessió en dues passes?" }, "twoStepDisabled": { - "message": "Two-step login provider disabled." + "message": "El proveïdor d'inici de sessió en dues passes està deshabilitat." }, "twoFactorYubikeyAdd": { - "message": "Add a new YubiKey to your account" + "message": "Afegiu una nova YubiKey al vostre compte" }, "twoFactorYubikeyPlugIn": { - "message": "Plug the YubiKey into your computer's USB port." + "message": "Connecteu la YubiKey al port USB de l'ordinador." }, "twoFactorYubikeySelectKey": { - "message": "Select the first empty YubiKey input field below." + "message": "Seleccioneu a continuació el primer camp d'entrada buit de YubiKey." }, "twoFactorYubikeyTouchButton": { - "message": "Touch the YubiKey's button." + "message": "Toqueu el botó de la YubiKey." }, "twoFactorYubikeySaveForm": { - "message": "Save the form." + "message": "Guardeu el formulari." }, "twoFactorYubikeyWarning": { - "message": "A causa de les limitacions de la plataforma, els YubiKeys no es poden utilitzar en totes les aplicacions Bitwarden. Heu d'habilitar un altre proveïdor d'inici de sessió en dues passes per accedir al compte quan no es puga utilitzar YubiKeys. Plataformes compatibles:" + "message": "A causa de les limitacions de la plataforma, les YubiKeys no es poden utilitzar en totes les aplicacions de Bitwarden. Heu d'habilitar un altre proveïdor d'inici de sessió en dues passes per accedir al compte quan no es puguen utilitzar les YubiKeys. Plataformes compatibles:" }, "twoFactorYubikeySupportUsb": { - "message": "Dipòsit web, aplicació d'escriptori, CLI i totes les extensions de navegador en un dispositiu amb un port USB que puga acceptar el vostre YubiKey." + "message": "Caixa forta web, aplicació d'escriptori, CLI i totes les extensions de navegador en un dispositiu amb un port USB que puga acceptar la vostra YubiKey." }, "twoFactorYubikeySupportMobile": { - "message": "Aplicacions mòbils en un dispositiu amb NFC o un port USB que puga acceptar el vostre YubiKey." + "message": "Aplicacions mòbils en un dispositiu amb NFC o un port USB que puga acceptar la vostra YubiKey." }, "yubikeyX": { "message": "YubiKey $INDEX$", @@ -1197,7 +1197,7 @@ } }, "u2fkeyX": { - "message": "U2F Key $INDEX$", + "message": "Clau U2F $INDEX$", "placeholders": { "index": { "content": "$1", @@ -1206,107 +1206,107 @@ } }, "nfcSupport": { - "message": "NFC Support" + "message": "Suport NFC" }, "twoFactorYubikeySupportsNfc": { - "message": "One of my keys supports NFC." + "message": "Una de les meues claus és compatible amb NFC." }, "twoFactorYubikeySupportsNfcDesc": { - "message": "If one of your YubiKeys supports NFC (such as a YubiKey NEO), you will be prompted on mobile devices whenever NFC availability is detected." + "message": "Si una de les vostres YubiKeys és compatible amb NFC (com ara una NEO YubiKey), se us demanarà als dispositius mòbils quan es detecte la disponibilitat de NFC." }, "yubikeysUpdated": { - "message": "YubiKeys updated" + "message": "S'han actualitzat les YubiKeys" }, "disableAllKeys": { - "message": "Disable All Keys" + "message": "Deshabilita totes les claus" }, "twoFactorDuoDesc": { "message": "Introduïu la informació de l'aplicació Bitwarden des del vostre tauler d'Administrador de Duo." }, "twoFactorDuoIntegrationKey": { - "message": "Integration Key" + "message": "Clau d'integració" }, "twoFactorDuoSecretKey": { "message": "Clau Secreta" }, "twoFactorDuoApiHostname": { - "message": "API Hostname" + "message": "Nom de l'amfitrió d'API" }, "twoFactorEmailDesc": { - "message": "Follow these steps to set up two-step login with email:" + "message": "Seguiu aquestes passes per configurar l'inici de sessió en dues passes amb el correu electrònic:" }, "twoFactorEmailEnterEmail": { - "message": "Enter the email that you wish to receive verification codes" + "message": "Introduïu el correu electrònic amb el que voleu rebre els codis de verificació" }, "twoFactorEmailEnterCode": { - "message": "Enter the resulting 6 digit verification code from the email" + "message": "Introduïu el codi de verificació resultant de 6 dígits del correu electrònic" }, "sendEmail": { "message": "Envia un correu electrònic" }, "twoFactorU2fAdd": { - "message": "Add a FIDO U2F security key to your account" + "message": "Afegeix una clau de seguretat FIDO U2F al vostre compte" }, "removeU2fConfirmation": { - "message": "Are you sure you want to remove this security key?" + "message": "Segur que voleu suprimir aquesta clau de seguretat?" }, "readKey": { - "message": "Read Key" + "message": "Llegeix la clau" }, "keyCompromised": { - "message": "Key is compromised." + "message": "La clau està compromesa." }, "twoFactorU2fGiveName": { - "message": "Give the security key a friendly name to identify it." + "message": "Doneu un nom amigable a la clau de seguretat per identificar-la." }, "twoFactorU2fPlugInReadKey": { - "message": "Plug the security key into your computer's USB port and click the \"Read Key\" button." + "message": "Connecteu la clau de seguretat al port USB de l'ordinador i feu clic al botó \"Llegeix la clau\"." }, "twoFactorU2fTouchButton": { - "message": "If the security key has a button, touch it." + "message": "Si la clau de seguretat té un botó, toqueu-lo." }, "twoFactorU2fSaveForm": { - "message": "Save the form." + "message": "Guardeu el formulari." }, "twoFactorU2fWarning": { - "message": "A causa de les limitacions de la plataforma, FIDO U2F no es pot utilitzar en totes les aplicacions Bitwarden. Heu d'habilitar un altre proveïdor d'inici de sessió en dues passes perquè pugueu accedir al vostre compte quan FIDO U2F no es puga utilitzar. Plataformes compatibles:" + "message": "A causa de les limitacions de la plataforma, FIDO U2F no es pot utilitzar en totes les aplicacions de Bitwarden. Heu d'habilitar un altre proveïdor d'inici de sessió en dues passes perquè pugueu accedir al vostre compte quan FIDO U2F no es puga utilitzar. Plataformes compatibles:" }, "twoFactorU2fSupportWeb": { - "message": "Web vault and browser extensions on a desktop\/laptop with a U2F enabled browser (Chrome, Opera, Vivaldi, or Firefox with FIDO U2F enabled)." + "message": "Caixa forta web i extensions de navegador en un escriptori\/portàtil amb un navegador compatible amb U2F (Chrome, Opera, Vivaldi, o Firefox amb FIDO U2F activat)." }, "twoFactorU2fWaiting": { - "message": "Waiting for you to touch the button on your security key" + "message": "S'està esperant que toqueu el botó de la vostra clau de seguretat" }, "twoFactorU2fClickSave": { - "message": "Click the \"Save\" button below to enable this security key for two-step login." + "message": "Feu clic al botó \"Guarda\" que apareix a continuació per habilitar aquesta clau de seguretat per iniciar sessió en dues passes." }, "twoFactorU2fProblemReadingTryAgain": { - "message": "There was a problem reading the security key. Try again." + "message": "Hi ha hagut un problema en llegir la clau de seguretat. Torneu-ho a provar." }, "twoFactorRecoveryYourCode": { - "message": "Your Bitwarden two-step login recovery code" + "message": "El codi de recuperació d'inici de sessió en dues passes de Bitwarden" }, "twoFactorRecoveryNoCode": { - "message": "You have not enabled any two-step login providers yet. After you have enabled a two-step login provider you can check back here for your recovery code." + "message": "Encara no heu habilitat cap proveïdor d'inici de sessió en dues passes. Després d'activar-lo, podeu consultar ací el codi de recuperació." }, "printCode": { - "message": "Print Code", + "message": "Imprimeix el codi", "description": "Print 2FA recovery code" }, "reports": { - "message": "Reports" + "message": "Informes" }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Informe de llocs web no segurs" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:\/\/ scheme can be dangerous. If the website allows, you should always access it using the https:\/\/ scheme so that your connection is encrypted." + "message": "L'ús de llocs web no segurs amb l'esquema http:\/\/ pot ser perillós. Si el lloc web ho permet, sempre haureu d'accedir-hi mitjançant l'esquema https:\/\/ perquè la vostra connexió estiga xifrada." }, "unsecuredWebsitesFound": { - "message": "Unsecured Websites Found" + "message": "S'han trobat llocs web no segurs" }, "unsecuredWebsitesFoundDesc": { - "message": "We found $COUNT$ items in your vault with unsecured URIs. You should change their URI scheme to https:\/\/ if the website allows it.", + "message": "Hem trobat $COUNT$ elements a la vostra caixa forta amb URI no segures. Heu de canviar el seu esquema URI a https:\/\/ si el lloc web ho permet.", "placeholders": { "count": { "content": "$1", @@ -1315,19 +1315,19 @@ } }, "noUnsecuredWebsites": { - "message": "No items in your vault have unsecured URIs." + "message": "Cap element de la vostra caixa forta té URI no segures." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Informe 2FA inactiu" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "L'autenticació de dos factors (2FA) és una configuració de seguretat important que ajuda a assegurar els vostres comptes. Si el lloc web ho ofereix, sempre haureu d'activar l'autenticació de dos factors." }, "inactive2faFound": { - "message": "Logins Without 2FA Found" + "message": "S'han trobat registres sense 2FA" }, "inactive2faFoundDesc": { - "message": "We found $COUNT$ website(s) in your vault that may not be configured with two-factor authentication (according to twofactorauth.org). To further protect these accounts, you should enable two-factor authentication.", + "message": "Hem trobat $COUNT$ llocs web a la vostra caixa forta que no es poden configurar amb l'autenticació de dos factors (d'acord amb twofactorauth.org). Per protegir encara més aquests comptes, haureu d'habilitar l'autenticació de dos factors.", "placeholders": { "count": { "content": "$1", @@ -1336,22 +1336,22 @@ } }, "noInactive2fa": { - "message": "No websites were found in your vault with a missing two-factor authentication configuration." + "message": "No s'han trobat llocs web a la vostra caixa forta sense configuració d'autenticació de dos factors." }, "instructions": { "message": "Instruccions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Informe de contrasenyes exposades" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Les contrasenyes exposades són claus que s'han descobert en filtracions de dades conegudes que es van fer públiques o que es van vendre a la web fosca per part d'hackers." }, "exposedPasswordsFound": { - "message": "Exposed Passwords Found" + "message": "S'han trobat contrasenyes exposades" }, "exposedPasswordsFoundDesc": { - "message": "We found $COUNT$ items in your vault that have passwords that were exposed in known data breaches. You should change them to use a new password.", + "message": "Hem trobat $COUNT$ elements a la vostra caixa forta que tenen contrasenyes que van ser exposades a filtracions de dades conegudes. Heu de canviar-les amb una contrasenya nova.", "placeholders": { "count": { "content": "$1", @@ -1360,13 +1360,13 @@ } }, "noExposedPasswords": { - "message": "No items in your vault have passwords that have been exposed in known data breaches." + "message": "Cap element de la vostra caixa forta conté contrasenyes que s'hagen exposat a filtracions de dades conegudes." }, "checkExposedPasswords": { - "message": "Check Exposed Passwords" + "message": "Comprova les contrasenyes exposades" }, "exposedXTimes": { - "message": "Exposed $COUNT$ time(s)", + "message": "S'han exposat $COUNT$ vegades", "placeholders": { "count": { "content": "$1", @@ -1375,16 +1375,16 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Informe de contrasenyes poc segures" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Les contrasenyes poc segures poden ser descobertes fàcilment per pirates informàtics amb eines automatitzades que s'utilitzen per trencar contrasenyes. El generador de contrasenyes Bitwarden us pot ajudar a crear contrasenyes fortes." }, "weakPasswordsFound": { - "message": "Weak Passwords Found" + "message": "S'han trobat contrasenyes poc segures" }, "weakPasswordsFoundDesc": { - "message": "We found $COUNT$ items in your vault with passwords that are not strong. You should update them to use stronger passwords.", + "message": "Hem trobat $COUNT$ elements a la vostra caixa forta amb contrasenyes que no són fortes. Heu d'actualitzar-les i utilitzar contrasenyes més fortes.", "placeholders": { "count": { "content": "$1", @@ -1393,19 +1393,19 @@ } }, "noWeakPasswords": { - "message": "No items in your vault have weak passwords." + "message": "Cap element de la vostra caixa forta té contrasenyes poc segures." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Informe de contrasenyes reutilitzades" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Si un servei que utilitzeu està compromès, la reutilització de la mateixa contrasenya en altres llocs pot permetre als hackers accedir fàcilment a més comptes en línia vostres. Heu d'utilitzar una contrasenya exclusiva per a cada compte o servei." }, "reusedPasswordsFound": { - "message": "Reused Passwords Found" + "message": "S'han trobat contrasenyes reutilitzades" }, "reusedPasswordsFoundDesc": { - "message": "We found $COUNT$ passwords that are being reused in your vault. You should change them to a unique value.", + "message": "Hem trobat $COUNT$ contrasenyes que s'estan reutilitzant a la vostra caixa forta. Heu de canviar-les a un valor únic.", "placeholders": { "count": { "content": "$1", @@ -1414,10 +1414,10 @@ } }, "noReusedPasswords": { - "message": "No logins in your vault have passwords that are being reused." + "message": "Cap inici de sessió a la vostra caixa forta té contrasenyes que s'estiguen reutilitzant." }, "reusedXTimes": { - "message": "Reused $COUNT$ times", + "message": "S'ha reutilitzat $COUNT$ vegades", "placeholders": { "count": { "content": "$1", @@ -1426,19 +1426,19 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Informe de filtració de dades" }, "breachDesc": { - "message": "Un \"incompliment\" és un incident on les dades dels llocs han estat accessades il·legalment pels pirates informàtics i, posteriorment, es mostren públicament. Reviseu els tipus de dades que havien quedat compromeses (adreces de correu electrònic, contrasenyes, targetes de crèdit, etc.) i preneu les mesures adequades, com ara canviar les contrasenyes." + "message": "Un \"filtració\" és un incident on les dades dels llocs han estat accessades il·legalment pels pirates informàtics i, posteriorment, es mostren públicament. Reviseu els tipus de dades que han quedat compromeses (adreces de correu electrònic, contrasenyes, targetes de crèdit, etc.) i preneu les mesures adequades, com ara canviar les contrasenyes." }, "breachCheckUsernameEmail": { - "message": "Check any usernames or email addresses that you use." + "message": "Comproveu qualsevol nom d'usuari o adreça electrònica que utilitzeu." }, "checkBreaches": { - "message": "Check Breaches" + "message": "Comprova filtracions" }, "breachUsernameNotFound": { - "message": "$USERNAME$ was not found in any known data breaches.", + "message": "No s'ha trobat $USERNAME$ en cap filtració de dades coneguda.", "placeholders": { "username": { "content": "$1", @@ -1451,7 +1451,7 @@ "description": "ex. Good News, No Breached Accounts Found!" }, "breachUsernameFound": { - "message": "$USERNAME$ was found in $COUNT$ different data breaches online.", + "message": "S'ha trobat $USERNAME$ en $COUNT$ diferents filtracions de dades en línia.", "placeholders": { "username": { "content": "$1", @@ -1464,10 +1464,10 @@ } }, "breachFound": { - "message": "Breached Accounts Found" + "message": "S'han trobat comptes compromesos" }, "compromisedData": { - "message": "Compromised data" + "message": "Dades compromeses" }, "website": { "message": "Lloc web" @@ -1476,26 +1476,26 @@ "message": "Usuaris afectats" }, "breachOccurred": { - "message": "Breach Occurred" + "message": "S'ha produït una filtració" }, "breachReported": { - "message": "Breach Reported" + "message": "S'ha informat de la filtració" }, "reportError": { - "message": "An error occurred trying to load the report. Try again" + "message": "S'ha produït un error en intentar carregar l'informe. Torneu-ho a provar" }, "billingAndLicensing": { - "message": "Billing & Licensing" + "message": "Facturació i llicències" }, "goPremium": { "message": "Fes-te Premium", "description": "Another way of saying \"Get a premium membership\"" }, "premiumUpdated": { - "message": "You've upgraded to premium." + "message": "Heu actualitzat a la versió premium." }, "premiumUpgradeUnlockFeatures": { - "message": "Upgrade your account to a premium membership and unlock some great additional features." + "message": "Actualitzeu el vostre compte a una subscripció premium i desbloquegeu algunes característiques addicionals excel·lents." }, "premiumSignUpStorage": { "message": "1 GB d'emmagatzematge xifrat per als fitxers adjunts." @@ -1504,10 +1504,10 @@ "message": "Opcions addicionals d'inici de sessió en dues passes com ara YubiKey, FIDO U2F i Duo." }, "premiumSignUpReports": { - "message": "Requisits d'higiene de la contrasenya, salut del compte i informe d'infraccions de dades per mantenir la seguretat del vostre dipòsit." + "message": "Requisits d'higiene de la contrasenya, salut del compte i informe d'infraccions de dades per mantenir la seguretat de la vostra caixa forta." }, "premiumSignUpTotp": { - "message": "Generador de codi de verificació TOTP (2FA) per a inici de sessió al vostre dipòsit." + "message": "Generador de codi de verificació TOTP (2FA) per a inici de sessió a la vostra caixa forta." }, "premiumSignUpSupport": { "message": "Prioritat d'atenció al client." @@ -1516,7 +1516,7 @@ "message": "Totes les funcions premium futures. Aviat, més!" }, "premiumPrice": { - "message": "All for just $PRICE$ \/year!", + "message": "Tot per només $PRICE$ \/any!", "placeholders": { "price": { "content": "$1", @@ -1525,13 +1525,13 @@ } }, "addons": { - "message": "Addons" + "message": "Complements" }, "premiumAccess": { - "message": "Premium Access" + "message": "Accés premium" }, "premiumAccessDesc": { - "message": "You can add premium access to all members of your organization for $PRICE$ \/$INTERVAL$.", + "message": "Podeu afegir accés premium a tots els membres de la vostra organització per $PRICE$\/$INTERVAL$.\n \n", "placeholders": { "price": { "content": "$1", @@ -1544,13 +1544,13 @@ } }, "additionalStorageGb": { - "message": "Additional Storage (GB)" + "message": "Emmagatzematge suplementari (GB)" }, "additionalStorageGbDesc": { - "message": "# of additional GB" + "message": "# de GB addicionals" }, "additionalStorageIntervalDesc": { - "message": "Your plan comes with $SIZE$ of encrypted file storage. You can add additional storage for $PRICE$ per GB \/$INTERVAL$.", + "message": "El vostre pla inclou $SIZE$ d'emmagatzematge encriptat de fitxers. Podeu afegir un emmagatzematge addicional per a $PRICE$ per GB\/$INTERVAL$.", "placeholders": { "size": { "content": "$1", @@ -1579,14 +1579,14 @@ "message": "mes" }, "monthAbbr": { - "message": "mo.", + "message": "mes.", "description": "Short abbreviation for 'month'" }, "paymentChargedAnnually": { - "message": "Your payment method will be charged immediately and then on a recurring basis each year. You may cancel at any time." + "message": "El mètode de pagament es cobrarà de manera immediata i després de forma recurrent cada any. Podeu cancel·lar-ho en qualsevol moment." }, "paymentChargedWithTrial": { - "message": "Your plan comes with a free 7 day trial. Your payment method will not be charged until the trial has ended. Billing will occur on a recurring basis each $INTERVAL$. You may cancel at any time.", + "message": "El vostre pla inclou una prova gratuïta de 7 dies. El mètode de pagament no es cobrarà fins que no s'haja acabat la prova. La facturació es farà de manera recurrent cada $INTERVAL$. Podeu cancel·lar-ho en qualsevol moment.", "placeholders": { "interval": { "content": "$1", @@ -1601,7 +1601,7 @@ "message": "Targeta de crèdit" }, "paypalClickSubmit": { - "message": "Click the PayPal button to log into your PayPal account, then click the Submit button below to continue." + "message": "Feu clic al botó de PayPal per iniciar sessió al vostre compte i, a continuació, feu clic al botó Envia per continuar." }, "cancelSubscription": { "message": "Cancel·la la subscripció" @@ -1610,22 +1610,22 @@ "message": "S'ha cancel·lat la subscripció." }, "pendingCancellation": { - "message": "Pending Cancellation" + "message": "Pendent de cancel·lació" }, "subscriptionPendingCanceled": { - "message": "The subscription has been marked for cancellation at the end of the current billing period." + "message": "La subscripció s'ha marcat per cancel·lació al final del període de facturació actual." }, "reinstateSubscription": { - "message": "Reinstate Subscription" + "message": "Reinicia la subscripció" }, "reinstateConfirmation": { - "message": "Are you sure you want to remove the pending cancellation request and reinstate your subscription?" + "message": "Esteu segur que voleu eliminar la sol·licitud de cancel·lació pendent i restablir la vostra subscripció?" }, "reinstated": { - "message": "The subscription has been reinstated." + "message": "S'ha restablert la subscripció." }, "cancelConfirmation": { - "message": "Are you sure you want to cancel? You will lose access to all of this subscription's features at the end of this billing cycle." + "message": "Esteu segur que voleu cancel·lar? Perdreu l'accés a totes les característiques d'aquesta subscripció al final d'aquest cicle de facturació." }, "canceledSubscription": { "message": "S'ha cancel·lat la subscripció." @@ -1637,19 +1637,19 @@ "message": "Estat" }, "nextCharge": { - "message": "Next Charge" + "message": "Càrrec següent" }, "details": { "message": "Detall" }, "downloadLicense": { - "message": "Download License" + "message": "Baixa la llicència" }, "updateLicense": { - "message": "Update License" + "message": "Actualitza la llicència" }, "updatedLicense": { - "message": "Updated license" + "message": "Llicència actualitzada" }, "manageSubscription": { "message": "Administra la subscripció" @@ -1661,10 +1661,10 @@ "message": "Afegeix emmagatzematge" }, "removeStorage": { - "message": "Remove Storage" + "message": "Suprimeix emmagatzematge" }, "subscriptionStorage": { - "message": "Your subscription has a total of $MAX_STORAGE$ GB of encrypted file storage. You are currently using $USED_STORAGE$.", + "message": "La vostra subscripció té un total de $MAX_STORAGE$ GB d'emmagatzematge xifrat de fitxers. Esteu utilitzant $USED_STORAGE$.", "placeholders": { "max_storage": { "content": "$1", @@ -1680,7 +1680,7 @@ "message": "Mètode de pagament" }, "noPaymentMethod": { - "message": "No payment method on file." + "message": "No hi ha cap mètode de pagament en el fitxer." }, "addPaymentMethod": { "message": "Afegir Mètode de Pagament" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Canvia la forma de pagament" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Qualsevol càrrec apareixerà a la vostra declaració com a $STATEMENT_NAME$.", @@ -1705,19 +1727,19 @@ } }, "gbStorageAdd": { - "message": "GB of Storage To Add" + "message": "GB d'emmagatzematge a afegir" }, "gbStorageRemove": { - "message": "GB of Storage To Remove" + "message": "GB d'emmagatzematge a suprimir" }, "storageAddNote": { - "message": "Adding storage will result in adjustments to your billing totals and immediately charge your payment method on file. The first charge will be prorated for the remainder of the current billing cycle." + "message": "L'addició d'emmagatzematge generarà ajustos al total de facturació i carregarà immediatament el vostre mètode de pagament al fitxer. El primer càrrec serà prorratejat per a la resta del cicle de facturació actual." }, "storageRemoveNote": { - "message": "Removing storage will result in adjustments to your billing totals that will be prorated as credits toward your next billing charge." + "message": "Si elimineu l'emmagatzematge, es generaran ajustos al total de facturació que es prorratejaran com a crèdits per al vostre càrrec de facturació següent." }, "adjustedStorage": { - "message": "Adjusted $AMOUNT$ GB of storage.", + "message": "S'han ajustat $AMOUNT$ GB d'emmagatzematge.", "placeholders": { "amount": { "content": "$1", @@ -1728,20 +1750,17 @@ "contactSupport": { "message": "Contacteu amb atenció al client" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { - "message": "Updated payment method." + "message": "Mètode de pagament actualitzat." }, "purchasePremium": { "message": "Compra Premium" }, "licenseFile": { - "message": "License File" + "message": "Fitxer de llicència" }, "licenseFileDesc": { - "message": "Your license file will be named something like $FILE_NAME$", + "message": "El vostre fitxer de llicència s'anomenarà $FILE_NAME$", "placeholders": { "file_name": { "content": "$1", @@ -1750,16 +1769,16 @@ } }, "uploadLicenseFilePremium": { - "message": "To upgrade your account to a premium membership you need to upload a valid license file." + "message": "Per actualitzar el vostre compte a una subscripció premium, cal carregar un fitxer de llicència vàlid." }, "uploadLicenseFileOrg": { - "message": "To create an on-premise hosted organization you need to upload a valid license file." + "message": "Per crear una organització en allotjament propi cal carregar un fitxer de llicència vàlid." }, "accountEmailMustBeVerified": { - "message": "Your account's email address must be verified." + "message": "L'adreça de correu electrònic del vostre compte s'ha de verificar." }, "newOrganizationDesc": { - "message": "Organizations allow you to share parts of your vault with others as well as manage related users for a specific entity such as a family, small team, or large company." + "message": "Les organitzacions us permeten compartir parts de la vostra caixa forta amb altres persones i gestionar usuaris relacionats amb una entitat específica, com ara una família, un equip menut o una empresa gran." }, "generalInformation": { "message": "Informació general" @@ -1768,10 +1787,10 @@ "message": "Nom de l'organització" }, "accountOwnedBusiness": { - "message": "This account is owned by a business." + "message": "Aquest compte és propietat d'una empresa." }, "billingEmail": { - "message": "Billing Email" + "message": "Correu electrònic de facturació" }, "businessName": { "message": "Nom comercial" @@ -1783,16 +1802,16 @@ "message": "Usuaris" }, "userSeats": { - "message": "User Seats" + "message": "Reserves d'usuari" }, "additionalUserSeats": { - "message": "Additional User Seats" + "message": "Reserves d'usuari addicionals" }, "userSeatsDesc": { - "message": "# of user seats" + "message": "# de reserves d'usuari" }, "userSeatsAdditionalDesc": { - "message": "Your plan comes with $BASE_SEATS$ user seats. You can add additional users for $SEAT_PRICE$ per user \/month.", + "message": "El vostre pla inclou reserves d'usuari de $BASE_SEATS$. Podeu afegir usuaris addicionals per $SEAT_PRICE$ per usuari\/mes.", "placeholders": { "base_seats": { "content": "$1", @@ -1805,14 +1824,14 @@ } }, "userSeatsHowManyDesc": { - "message": "How many user seats do you need? You can also add additional seats later if needed." + "message": "Quantes reserves d'usuari necessiteu? També podeu afegir reserves addicionals més endavant, si és necessari." }, "planNameFree": { - "message": "Free", + "message": "Gratuït", "description": "Free as in 'free beer'." }, "planDescFree": { - "message": "For testing or personal users to share with $COUNT$ other user.", + "message": "Per a usuaris de prova o personals, permet compartir amb $COUNT$ altres usuaris.", "placeholders": { "count": { "content": "$1", @@ -1821,28 +1840,28 @@ } }, "planNameFamilies": { - "message": "Families" + "message": "Famílies" }, "planDescFamilies": { - "message": "For personal use, to share with family & friends." + "message": "Per a ús personal, per compartir amb familiars i amics." }, "planNameTeams": { - "message": "Teams" + "message": "Equips" }, "planDescTeams": { - "message": "For businesses and other team organizations." + "message": "Per a empreses i altres equips organitzats." }, "planNameEnterprise": { "message": "Empresa" }, "planDescEnterprise": { - "message": "For businesses and other large organizations." + "message": "Per a empreses i altres grans organitzacions." }, "freeForever": { - "message": "Free Forever" + "message": "Gratuït per sempre" }, "includesXUsers": { - "message": "includes $COUNT$ users", + "message": "inclou $COUNT$ usuaris", "placeholders": { "count": { "content": "$1", @@ -1851,10 +1870,10 @@ } }, "additionalUsers": { - "message": "Additional Users" + "message": "Usuaris addicionals" }, "costPerUser": { - "message": "$COST$ per user", + "message": "$COST$ per usuari", "placeholders": { "cost": { "content": "$1", @@ -1863,7 +1882,7 @@ } }, "limitedUsers": { - "message": "Limited to $COUNT$ users (including you)", + "message": "Limitat a $COUNT$ usuaris (vosaltres inclosos)", "placeholders": { "count": { "content": "$1", @@ -1872,7 +1891,7 @@ } }, "limitedCollections": { - "message": "Limited to $COUNT$ collections", + "message": "Limitat a $COUNT$ col·leccions", "placeholders": { "count": { "content": "$1", @@ -1881,7 +1900,7 @@ } }, "addShareLimitedUsers": { - "message": "Add and share with up to $COUNT$ users", + "message": "Afegiu i compartiu fins a $COUNT$ usuaris", "placeholders": { "count": { "content": "$1", @@ -1890,13 +1909,13 @@ } }, "addShareUnlimitedUsers": { - "message": "Add and share with unlimited users" + "message": "Afegiu i compartiu amb usuaris il·limitats" }, "createUnlimitedCollections": { - "message": "Create unlimited collections" + "message": "Crea col·leccions il·limitades" }, "gbEncryptedFileStorage": { - "message": "$SIZE$ encrypted file storage", + "message": "Emmagatzematge de fitxers xifrat de $SIZE$", "placeholders": { "size": { "content": "$1", @@ -1905,28 +1924,28 @@ } }, "onPremHostingOptional": { - "message": "On-premise hosting (optional)" + "message": "Allotjament propi (opcional)" }, "usersGetPremium": { - "message": "Users get access to premium membership features" + "message": "Els usuaris aconsegueixen accés a característiques de membres premium" }, "controlAccessWithGroups": { - "message": "Control user access with groups" + "message": "Controla l'accés dels usuaris amb grups" }, "syncUsersFromDirectory": { - "message": "Sync your users and groups from a directory" + "message": "Sincronitza els usuaris i grups d'un directori" }, "trackAuditLogs": { - "message": "Track user actions with audit logs" + "message": "Fes el seguiment de les accions de l'usuari amb registres d'auditoria" }, "enforce2faDuo": { - "message": "Enforce 2FA with Duo" + "message": "Reforça 2FA amb Duo" }, "priorityCustomerSupport": { "message": "Atenció al client prioritària" }, "xDayFreeTrial": { - "message": "$COUNT$ day free trial, cancel anytime", + "message": "Prova gratuïta de $COUNT$ dies, cancel·leu-la en qualsevol moment", "placeholders": { "count": { "content": "$1", @@ -1944,10 +1963,10 @@ "message": "Preu base" }, "organizationCreated": { - "message": "Organization Created" + "message": "S'ha creat l'organització" }, "organizationReadyToGo": { - "message": "Your new organization is ready to go!" + "message": "La vostra organització nova està preparada per començar!" }, "leave": { "message": "Abandona" @@ -1956,16 +1975,16 @@ "message": "Esteu segur que voleu abandonar aquesta organització?" }, "leftOrganization": { - "message": "You have left the organization." + "message": "Heu deixat l'organització." }, "defaultCollection": { - "message": "Default Collection" + "message": "Col·lecció per defecte" }, "getHelp": { - "message": "Obtin ajuda" + "message": "Obteniu ajuda" }, "getApps": { - "message": "Aconseguiu les aplicacions" + "message": "Aconseguiu aplicacions" }, "loggedInAs": { "message": "Has iniciat sessió com" @@ -1992,22 +2011,22 @@ "message": "Esteu segur que voleu suprimir aquest grup?" }, "removeUserConfirmation": { - "message": "Segur que voleu esborrar aquest usuari?" + "message": "Esteu segur que voleu suprimir aquest usuari?" }, "externalId": { - "message": "External Id" + "message": "Id extern" }, "externalIdGroupDesc": { - "message": "The external id is used to link this group to an external system such as a user directory." + "message": "L'id extern s'utilitza per vincular aquest grup a un sistema extern, com ara un directori d'usuari." }, "accessControl": { "message": "Control d'accés" }, "groupAccessAllItems": { - "message": "This group can access and modify all items." + "message": "Aquest grup pot accedir i modificar tots els elements." }, "groupAccessSelectedCollections": { - "message": "This group can access only the selected collections." + "message": "Aquest grup només pot accedir a les col·leccions seleccionades." }, "readOnly": { "message": "Només de lectura" @@ -2022,19 +2041,19 @@ "message": "Edita col·lecció" }, "deleteCollectionConfirmation": { - "message": "Are you sure you want to delete this collection?" + "message": "Esteu segur que voleu suprimir aquesta col·lecció?" }, "editUser": { "message": "Edita usuari" }, "inviteUser": { - "message": "Convideu a l'usuari" + "message": "Convida usuari" }, "inviteUserDesc": { - "message": "Invite a new user to your organization by entering their Bitwarden account email address below. If they do not have a Bitwarden account already, they will be prompted to create a new account." + "message": "Convida un nou usuari a la vostra organització introduint l'adreça electrònica del compte de Bitwarden a continuació. Si encara no tenen un compte de Bitwarden, se us demanarà que creeu un compte nou." }, "inviteMultipleEmailDesc": { - "message": "You can invite up to $COUNT$ users at a time by comma separating a list of email addresses.", + "message": "Podeu convidar fins a $COUNT$ usuaris alhora separant per comes les adreces de correu electrònic.", "placeholders": { "count": { "content": "$1", @@ -2043,13 +2062,13 @@ } }, "userUsingTwoStep": { - "message": "This user is using two-step login to protect their account." + "message": "Aquest usuari fa servir l'inici de sessió en dues passes per protegir el seu compte." }, "userAccessAllItems": { - "message": "This user can access and modify all items." + "message": "Aquest usuari pot accedir i modificar tots els elements." }, "userAccessSelectedCollections": { - "message": "This user can access only the selected collections." + "message": "Aquest usuari només pot accedir a les col·leccions seleccionades." }, "search": { "message": "Cerca" @@ -2067,25 +2086,25 @@ "message": "Propietari" }, "ownerDesc": { - "message": "The highest access user that can manage all aspects of your organization." + "message": "L'usuari d'accés més elevat que pot gestionar tots els aspectes de la vostra organització." }, "admin": { "message": "Administrador" }, "adminDesc": { - "message": "Admins can access and manage all items, collections and users in your organization." + "message": "Els administradors poden accedir i gestionar tots els elements, col·leccions i usuaris de la vostra organització." }, "user": { "message": "Usuari" }, "userDesc": { - "message": "A regular user with access to assigned collections in your organization." + "message": "Un usuari habitual amb accés a les col·leccions assignades a la vostra organització." }, "manager": { "message": "Gestor" }, "managerDesc": { - "message": "Managers can access and manage assigned collections in your organization." + "message": "Els administradors poden accedir i gestionar les col·leccions assignades a la vostra organització." }, "all": { "message": "Tot" @@ -2094,23 +2113,23 @@ "message": "Actualitza" }, "timestamp": { - "message": "Timestamp" + "message": "Data i hora" }, "event": { "message": "Esdeveniment" }, "unknown": { - "message": "Unknown" + "message": "Desconegut" }, "loadMore": { - "message": "Load More" + "message": "Carrega'n més" }, "mobile": { "message": "Mòbil", "description": "Mobile app" }, "extension": { - "message": "Extension", + "message": "Extensió", "description": "Browser extension\/addon" }, "desktop": { @@ -2118,34 +2137,34 @@ "description": "Desktop app" }, "webVault": { - "message": "Web Vault" + "message": "Caixa forta web" }, "loggedIn": { - "message": "Logged in." + "message": "Heu iniciat sessió." }, "changedPassword": { - "message": "Changed account password." + "message": "S'ha canviat la contrasenya del compte." }, "enabledUpdated2fa": { - "message": "Enabled\/updated two-step login." + "message": "Inici de sessió en dues passes habilitat\/actualitzat." }, "disabled2fa": { - "message": "Disabled two-step login." + "message": "S'ha deshabilitat l'inici de sessió en dues passes." }, "recovered2fa": { - "message": "Recovered account from two-step login." + "message": "S'ha recuperat el compte des de l'inici de sessió en dues passes." }, "failedLogin": { - "message": "Login attempt failed with incorrect password." + "message": "S'ha produït un error d'inici de sessió amb una contrasenya incorrecta." }, "failedLogin2fa": { - "message": "Login attempt failed with incorrect two-step login." + "message": "S'ha produït un error amb un inici de sessió en dues passes incorrecte." }, "editedOrgSettings": { - "message": "Edited organization settings." + "message": "S'ha editat la configuració de l'organització." }, "createdItemId": { - "message": "Created item $ID$.", + "message": "S'ha creat l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2154,7 +2173,7 @@ } }, "editedItemId": { - "message": "Edited item $ID$.", + "message": "S'ha editat l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2163,7 +2182,7 @@ } }, "deletedItemId": { - "message": "Deleted item $ID$.", + "message": "S'ha suprimit l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2172,7 +2191,7 @@ } }, "sharedItemId": { - "message": "Shared item $ID$.", + "message": "S'ha compartit l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2181,7 +2200,7 @@ } }, "createdCollectionId": { - "message": "Created collection $ID$.", + "message": "S'ha creat la col·lecció $ID$.", "placeholders": { "id": { "content": "$1", @@ -2190,7 +2209,7 @@ } }, "editedCollectionId": { - "message": "Edited collection $ID$.", + "message": "S'ha editat la col·lecció $ID$.", "placeholders": { "id": { "content": "$1", @@ -2199,7 +2218,7 @@ } }, "deletedCollectionId": { - "message": "Deleted collection $ID$.", + "message": "S'ha suprimit la col·lecció $ID$.", "placeholders": { "id": { "content": "$1", @@ -2208,7 +2227,7 @@ } }, "createdGroupId": { - "message": "Created group $ID$.", + "message": "S'ha creat el grup $ID$.", "placeholders": { "id": { "content": "$1", @@ -2217,7 +2236,7 @@ } }, "editedGroupId": { - "message": "Edited group $ID$.", + "message": "S'ha editat el grup $ID$.", "placeholders": { "id": { "content": "$1", @@ -2226,7 +2245,7 @@ } }, "deletedGroupId": { - "message": "Deleted group $ID$.", + "message": "S'ha suprimit el grup $ID$.", "placeholders": { "id": { "content": "$1", @@ -2235,7 +2254,7 @@ } }, "removedUserId": { - "message": "Removed user $ID$.", + "message": "S'ha suprimit l'usuari $ID$.", "placeholders": { "id": { "content": "$1", @@ -2244,7 +2263,7 @@ } }, "createdAttachmentForItem": { - "message": "Created attachment for item $ID$.", + "message": "S'ha creat el fitxer adjunt per l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2253,7 +2272,7 @@ } }, "deletedAttachmentForItem": { - "message": "Deleted attachment for item $ID$.", + "message": "S'ha suprimit el fitxer adjunt per l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2262,7 +2281,7 @@ } }, "editedCollectionsForItem": { - "message": "Edited collections for item $ID$.", + "message": "S'han editat les col·leccions per a l'element $ID$.", "placeholders": { "id": { "content": "$1", @@ -2271,7 +2290,7 @@ } }, "invitedUserId": { - "message": "Invited user $ID$.", + "message": "S'ha convidat a l'usuari $ID$.", "placeholders": { "id": { "content": "$1", @@ -2280,7 +2299,7 @@ } }, "confirmedUserId": { - "message": "Confirmed user $ID$.", + "message": "S'ha confirmat l'usuari $ID$.", "placeholders": { "id": { "content": "$1", @@ -2289,7 +2308,7 @@ } }, "editedUserId": { - "message": "Edited user $ID$.", + "message": "S'ha editat l'usuari $ID$.", "placeholders": { "id": { "content": "$1", @@ -2298,7 +2317,7 @@ } }, "editedGroupsForUser": { - "message": "Edited groups for user $ID$.", + "message": "S'han editat grups de l'usuari $ID$.", "placeholders": { "id": { "content": "$1", @@ -2328,16 +2347,16 @@ "message": "Accés de grup" }, "groupAccessUserDesc": { - "message": "Edit the groups that this user belongs to." + "message": "Editeu els grups als quals pertany aquest usuari." }, "invitedUsers": { - "message": "Invited user(s)." + "message": "Usuaris convidats." }, "resendInvitation": { "message": "Tornar a enviar invitació" }, "hasBeenReinvited": { - "message": "$USER$ has been reinvited.", + "message": "S'ha reconvidat a $USER$.", "placeholders": { "user": { "content": "$1", @@ -2349,10 +2368,10 @@ "message": "Confirma" }, "confirmUser": { - "message": "Confirm User" + "message": "Confirma usuari" }, "hasBeenConfirmed": { - "message": "$USER$ has been confirmed.", + "message": "S'ha confirmat a $USER$.", "placeholders": { "user": { "content": "$1", @@ -2361,10 +2380,10 @@ } }, "confirmUsers": { - "message": "Confirm Users" + "message": "Confirma usuaris" }, "usersNeedConfirmed": { - "message": "You have users that have accepted their invitation, but still need to be confirmed. Users will not have access to the organization until they are confirmed." + "message": "Teniu usuaris que han acceptat la seua invitació, però encara cal confirmar-la. Els usuaris no tindran accés a l'organització fins que estiguen confirmats." }, "startDate": { "message": "Data d'inici" @@ -2376,82 +2395,82 @@ "message": "Comproveu el correu electrònic" }, "verifyEmailDesc": { - "message": "Verify your account's email address to unlock access to all features." + "message": "Verifiqueu l'adreça de correu electrònic del vostre compte per desbloquejar l'accés a totes les característiques." }, "verifyEmailFirst": { - "message": "Your account's email address first must be verified." + "message": "S'ha de verificar primer l'adreça electrònica del vostre compte." }, "checkInboxForVerification": { - "message": "Check your email inbox for a verification link." + "message": "Consulteu la safata d'entrada del correu electrònic per obtenir un enllaç de verificació." }, "emailVerified": { - "message": "Your email has been verified." + "message": "S'ha verificat el vostre correu electrònic." }, "emailVerifiedFailed": { - "message": "Unable to verify your email. Try sending a new verification email." + "message": "No es pot verificar el vostre correu electrònic. Proveu d'enviar un nou correu electrònic de verificació." }, "updateBrowser": { - "message": "Update Browser" + "message": "Actualitza el navegador" }, "updateBrowserDesc": { - "message": "You are using an unsupported web browser. The web vault may not function properly." + "message": "Esteu utilitzant un navegador web no compatible. La caixa forta web pot no funcionar correctament." }, "joinOrganization": { - "message": "Join Organization" + "message": "Uneix-te a l'organització" }, "joinOrganizationDesc": { - "message": "You've been invited to join the organization listed above. To accept the invitation, you need to log in or create a new Bitwarden account." + "message": "Heu estat convidat a unir-vos a l'organització llistada més amunt. Per acceptar la invitació, heu d'iniciar sessió o crear un compte nou a Bitwarden." }, "inviteAccepted": { - "message": "Invitation Accepted" + "message": "Invitació acceptada" }, "inviteAcceptedDesc": { "message": "Podeu accedir a aquesta organització una vegada que un administrador confirme la vostra pertinença. Rebreu un correu electrònic quan això passe." }, "inviteAcceptFailed": { - "message": "Unable to accept invitation. Ask an organization admin to send a new invitation." + "message": "No es pot acceptar la invitació. Demaneu a l'administrador d'una organització que envie una invitació nova." }, "rememberEmail": { - "message": "Remember email" + "message": "Recorda el correu electronic" }, "recoverAccountTwoStepDesc": { - "message": "If you cannot access your account through your normal two-step login methods, you can use your two-step login recovery code to disable all two-step providers on your account." + "message": "Si no podeu accedir al vostre compte a través dels vostres mètodes d'inici de sessió de dues passes, podeu utilitzar el codi de recuperació de l'inici de sessió en dues passes per desactivar tots els proveïdors del vostre compte." }, "recoverAccountTwoStep": { - "message": "Recover Account Two-Step Login" + "message": "Recupera l'inici de sessió en dues passes del compte" }, "twoStepRecoverDisabled": { - "message": "Two-step login has been disabled on your account." + "message": "S'ha inhabilitat l'inici de sessió en dues passes al vostre compte." }, "learnMore": { "message": "Més informació" }, "deleteRecoverDesc": { - "message": "Enter your email address below to recover and delete your account." + "message": "Introduïu la vostra adreça de correu electrònic a continuació per recuperar i eliminar el vostre compte." }, "deleteRecoverEmailSent": { - "message": "If your account exists, we've sent you an email with further instructions." + "message": "Si el vostre compte existeix, rebreu un correu electrònic amb més instruccions." }, "deleteRecoverConfirmDesc": { - "message": "You have requested to delete your Bitwarden account. Click the button below to confirm." + "message": "Heu sol·licitat suprimir el compte de Bitwarden. Feu clic al botó seguüent per confirmar-ho." }, "myOrganization": { "message": "La meua organització" }, "deleteOrganization": { - "message": "Delete Organization" + "message": "Suprimeix l'organització" }, "deleteOrganizationDesc": { - "message": "Proceed below to delete this organization and all associated data. Individual user accounts will remain, though they will not be associated to this organization anymore. " + "message": "Procediu a eliminar aquesta organització i totes les dades associades. Els comptes d'usuari individuals es mantindran, encara que ja no hi estaran associats. " }, "deleteOrganizationWarning": { - "message": "Deleting the organization is permanent. It cannot be undone." + "message": "La supressió de l'organització és permanent. No es pot desfer." }, "organizationDeleted": { - "message": "Organization Deleted" + "message": "S'ha suprimit l'organització" }, "organizationDeletedDesc": { - "message": "The organization and all associated data has been deleted." + "message": "S'ha suprimit l'organització i totes les dades associades." }, "organizationUpdated": { "message": "S'ha actualitzat l'organització" @@ -2460,43 +2479,56 @@ "message": "Informació fiscal" }, "taxInformationDesc": { - "message": "Please contact support to provide (or update) tax information for your invoices." + "message": "Poseu-vos en contacte amb el servei d'assistència per proporcionar-vos (o actualitzar) la informació fiscal de les vostres factures." }, "billingPlan": { "message": "Pla", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlan": { - "message": "Change Plan", + "message": "Canvi de pla", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlanDesc": { - "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", + "message": "Poseu-vos en contacte amb l'assistència al client si voleu canviar el vostre pla. Assegureu-vos que heu afegit un mètode de pagament actiu al compte.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Factura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Comproveu compte" }, "verifyBankAccountDesc": { - "message": "We have made two micro-deposits to your bank account (it may take 1-2 business days to show up). Enter these amounts to verify the bank account." + "message": "Hem realitzat dos dipòsits en el vostre compte bancari (pot tardar entre 1-2 dies laborables). Introduïu aquests imports per verificar el compte bancari." }, "verifyBankAccountInitialDesc": { - "message": "Payment with a bank account is only available to customers in the United States. You will be required to verify your bank account. We will make two micro-deposits within the next 1-2 business days. Enter these amounts on the organization's billing page to verify the bank account." + "message": "El pagament amb un compte bancari només està disponible per als clients dels Estats Units. Se us demanarà que verifiqueu el vostre compte bancari. Realitzarem dos micro-dipòsits en els pròxims 1-2 dies laborables. Introduïu aquests imports a la pàgina de facturació de l'organització per verificar el compte bancari." }, "verifyBankAccountFailureWarning": { - "message": "Failure to verify the bank account will result in a missed payment and your subscription being disabled." + "message": "Si no es verifica el compte bancari, es produirà un pagament perdut i la vostra subscripció s'inhabilitarà." }, "verifiedBankAccount": { - "message": "Bank account has been verified." + "message": "S'ha verificat el compte bancari." }, "bankAccount": { "message": "Compte bancari" }, "amountX": { - "message": "Amount $COUNT$", + "message": "L'import $COUNT$", "description": "Used in bank account verification of micro-deposits. Amount, as in a currency amount. Ex. Amount 1 is $2.00, Amount 2 is $1.50", "placeholders": { "count": { @@ -2506,37 +2538,37 @@ } }, "routingNumber": { - "message": "Routing Number", + "message": "Número d'encaminament", "description": "Bank account routing number" }, "accountNumber": { "message": "Número de compte" }, "accountHolderName": { - "message": "Account Holder Name" + "message": "Titular del compte" }, "bankAccountType": { "message": "Tipus de compte" }, "bankAccountTypeCompany": { - "message": "Company (Business)" + "message": "Empresa (negocis)" }, "bankAccountTypeIndividual": { "message": "Individual (Personal)" }, "enterInstallationId": { - "message": "Enter your installation id" + "message": "Introduïu la vostra id d'instal·lació" }, "addSeats": { - "message": "Add Seats", + "message": "Afegeix reserves", "description": "Seat = User Seat" }, "removeSeats": { - "message": "Remove Seats", + "message": "Suprimeix llocs", "description": "Seat = User Seat" }, "subscriptionUserSeats": { - "message": "Your subscription allows for a total of $COUNT$ users.", + "message": "La vostra subscripció permet un total de $COUNT$ usuaris.", "placeholders": { "count": { "content": "$1", @@ -2545,19 +2577,19 @@ } }, "seatsToAdd": { - "message": "Seats To Add" + "message": "Reserves a afegir" }, "seatsToRemove": { - "message": "Seats To Remove" + "message": "Reserves a suprimir" }, "seatsAddNote": { - "message": "Adding user seats will result in adjustments to your billing totals and immediately charge your payment method on file. The first charge will be prorated for the remainder of the current billing cycle." + "message": "Si afegiu reserves d'usuari, es generaran ajustos al total de facturació i carregarem el mètode de pagament immediatament al fitxer. El primer càrrec serà prorratejat per a la resta del cicle de facturació actual." }, "seatsRemoveNote": { - "message": "Removing user seats will result in adjustments to your billing totals that will be prorated as credits toward your next billing charge." + "message": "Si suprimiut reserves d'usuari, es generaran ajustos al total de facturació que es prorratejaran com a crèdits per al vostre càrrec de facturació següent." }, "adjustedSeats": { - "message": "Adjusted $AMOUNT$ user seats.", + "message": "Ajustades $AMOUNT$ reserves d'usuari.", "placeholders": { "amount": { "content": "$1", @@ -2566,22 +2598,22 @@ } }, "keyUpdated": { - "message": "Key Updated" + "message": "Clau actualitzada" }, "updateKeyTitle": { "message": "Actualitza clau" }, "updateEncryptionKey": { - "message": "Update Encryption Key" + "message": "Actualitzeu la clau de xifratge" }, "updateEncryptionKeyShortDesc": { - "message": "You are currently using an outdated encryption scheme." + "message": "Esteu fent servir un esquema de xifrage antiquat." }, "updateEncryptionKeyDesc": { - "message": "We've moved to larger encryption keys that provide better security and access to newer features. Updating your encryption key is quick and easy. Just type your master password below. This update will eventually become mandatory." + "message": "Hem canviat a claus de xifratge més grans que proporcionen una millor seguretat i accés a característiques més noves. L'actualització de la vostra clau de xifratge és ràpida i senzilla. Només cal que introduïu la vostra contrasenya mestra a continuació. Aquesta actualització es convertirà en obligatòria en qualsevol moment." }, "updateEncryptionKeyWarning": { - "message": "Després d'actualitzar la vostra clau de xifratge, heu de tancar la sessió i tornar a entrar a totes les aplicacions Bitwarden que esteu utilitzant actualment (com ara l'aplicació mòbil o les extensions del navegador). Si no es tanca i torna a iniciar la sessió (la qual descarrega la vostra nova clau de xifratge) pot provocar la corrupció de dades. Intentarem registrar-vos automàticament, però, es pot retardar." + "message": "Després d'actualitzar la vostra clau de xifratge, heu de tancar la sessió i tornar a entrar a totes les aplicacions de Bitwarden que esteu utilitzant actualment (com ara l'aplicació mòbil o les extensions del navegador). Si no es tanca i torna a iniciar la sessió (la qual descarrega la vostra nova clau de xifratge) pot provocar corrupció en les dades. Intentarem registrar-vos automàticament, però, es pot retardar." }, "subscription": { "message": "Subscripció" @@ -2593,29 +2625,29 @@ "message": "Actualitza" }, "upgradeOrganization": { - "message": "Upgrade Organization" + "message": "Actualitza l'organització" }, "upgradeOrganizationDesc": { - "message": "This feature is not available for free organizations. Switch to a paid plan to unlock more features." + "message": "Aquesta característica no està disponible per a organitzacions gratuïtes. Canvieu a un pla de pagament per desbloquejar més característiques." }, "createOrganizationStep1": { - "message": "Create Organization: Step 1" + "message": "Crea l'organització: Pas 1" }, "createOrganizationCreatePersonalAccount": { - "message": "Before creating your organization, you first need to create a free personal account." + "message": "Abans de crear l'organització, primer heu de crear un compte personal gratuït." }, "refunded": { "message": "Reemborsat" }, "nothingSelected": { - "message": "You have not selected anything." + "message": "No heu seleccionat res." }, "submitAgreePolicies": { - "message": "By clicking the \"Submit\" button, you agree to the following policies:", + "message": "Fent clic al botó \"Envia\", accepteu les polítiques següents:", "description": "A policy is something like Terms of Service, Privacy Policy, etc." }, "termsOfService": { - "message": "Terms of Service" + "message": "Condicions del servei" }, "privacyPolicy": { "message": "Política de privacitat" @@ -2627,7 +2659,7 @@ "message": "Opcions de bloqueig" }, "lockOptionsDesc": { - "message": "Trieu quan es bloqueja el vostre dipòsit. Una volta bloquejat requereix que torneu a introduir la vostra contrasenya mestra per accedir-hi de nou." + "message": "Trieu quan es bloqueja la vostra caixa forta. Una volta bloquejada requereix que torneu a introduir la vostra contrasenya mestra per accedir-hi de nou." }, "oneMinute": { "message": "1 minut" @@ -2648,7 +2680,7 @@ "message": "4 hores" }, "onRefresh": { - "message": "En actualitzar navegador" + "message": "En actualitzar el navegador" }, "dateUpdated": { "message": "Actualitzat", @@ -2659,7 +2691,7 @@ "description": "ex. Date this password was updated" }, "organizationIsDisabled": { - "message": "L'organització està deshabilitada." + "message": "L'organització està inhabilitada." }, "licenseIsExpired": { "message": "Llicència caducada." @@ -2696,40 +2728,40 @@ "message": "Contrasenya mestra poc segura" }, "weakMasterPasswordDesc": { - "message": "La contrasenya mestra que heu triat és poc segura. Heu d'utilitzar una contrasenya mestra segura (o una frase de pas) per protegir correctament el vostre compte Bitwarden. Esteu segur que voleu utilitzar aquesta contrasenya mestra?" + "message": "La contrasenya mestra que heu triat és poc segura. Heu d'utilitzar una contrasenya mestra segura (o una frase de pas) per protegir correctament el vostre compte de Bitwarden. Esteu segur que voleu utilitzar aquesta contrasenya mestra?" }, "rotateAccountEncKey": { - "message": "Gira tambè la clau de xifratge del meu compte" + "message": "Rota també la clau de xifratge del meu compte" }, "rotateEncKeyTitle": { - "message": "Gira la clau de xifratge" + "message": "Rota la clau de xifratge" }, "rotateEncKeyConfirmation": { - "message": "Esteu segur que voleu girar la clau de xifratge del vostre compte?" + "message": "Esteu segur que voleu rotar la clau de xifratge del vostre compte?" }, "attachmentsNeedFix": { - "message": "This item has old file attachments that need to be fixed." + "message": "Aquest element té fitxers adjunts antics que s'han de corregir." }, "attachmentFixDesc": { - "message": "This is an old file attachment the needs to be fixed. Click to learn more." + "message": "Es tracta d'un arxiu adjunt antic que cal corregir. Feu clic per obtenir més informació." }, "fix": { "message": "Corregeix", "description": "This is a verb. ex. 'Fix The Car'" }, "oldAttachmentsNeedFixDesc": { - "message": "There are old file attachments in your vault that need to be fixed before you can rotate your account's encryption key." + "message": "Hi ha arxius adjunts antics a la vostra caixa forta que s'han de corregir abans de poder rotar la clau de xifratge del vostre compte." }, "yourAccountsFingerprint": { "message": "Frase d'empremta digital del vostre compte", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "fingerprintEnsureIntegrityVerify": { - "message": "To ensure the integrity of your encryption keys, please verify the user's fingerprint phrase before continuing.", + "message": "Per assegurar la integritat de les vostres claus de xifratge, comproveu la frase de l'empremta digital de l'usuari abans de continuar.", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "dontAskFingerprintAgain": { - "message": "Don't ask to verify fingerprint phrase again", + "message": "No sol·liciteu tornar a comprovar la frase de les empremtes dactilars", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "free": { diff --git a/locales/cs/messages.json b/locales/cs/messages.json index 2133ccce..5b5d5f3b 100644 --- a/locales/cs/messages.json +++ b/locales/cs/messages.json @@ -440,10 +440,10 @@ "message": "Položka byla upravena" }, "sharedItem": { - "message": "Položka byla sdílena" + "message": "Položka byla sdílena." }, "sharedItems": { - "message": "Položky byly sdíleny" + "message": "Položky byly sdíleny." }, "deleteItem": { "message": "Smazat položku" @@ -494,7 +494,7 @@ "message": "Odhlásit se" }, "ok": { - "message": "Ok" + "message": "OK" }, "yes": { "message": "Ano" @@ -587,7 +587,7 @@ "message": "Odemknout" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Přihlášen jako $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -728,10 +728,10 @@ "message": "Organizace" }, "shareDesc": { - "message": "Vyberte organizaci se kterou chcete sdílet tuto položku. Sdílením přenese vlastnictví položky na organizaci a již nadále nebudete přímým vlastníkem této položky." + "message": "Vyberte organizaci se kterou chcete tuto položku sdílet. Sdílením přenese vlastnictví položky na organizaci a již nadále nebudete přímým vlastníkem." }, "shareManyDesc": { - "message": "Vyberte organizaci se kterou chcete sdílet tyto položky. Sdílením přenese vlastnictví položek na organizaci a již nadále nebudete přímým vlastníkem těchto položek." + "message": "Vyberte organizaci se kterou chcete tyto položky sdílet. Sdílením přenese vlastnictví položek na organizaci a již nadále nebudete přímým vlastníkem." }, "collectionsDesc": { "message": "Upravit kolekce, ve kterých je tato položka sdílená. Pouze uživatelé organizace, kteří mají přístup k těmto kolekcím, budou moci tuto položku vidět." @@ -806,7 +806,7 @@ "description": "Minimum Special Characters" }, "ambiguous": { - "message": "Nepoužít zaměnitelné znaky" + "message": "Použít nezaměnitelné znaky" }, "regeneratePassword": { "message": "Vygenerovat další heslo" @@ -860,7 +860,7 @@ "message": "Přihlaste se prosím znovu." }, "logBackInOthersToo": { - "message": "Přihlaste se prosím znovu. Používáte-li jiné aplikace Bitwarden, přihlašte se znovu i v nich." + "message": "Přihlaste se prosím znovu. Používáte-li jiné Bitwarden aplikace, přihlaste se znovu i v nich." }, "changeMasterPassword": { "message": "Změnit hlavní heslo" @@ -956,7 +956,7 @@ "message": "Smazání účtu je trvalé. Tuto akci nelze vrátit zpět." }, "accountDeleted": { - "message": "Účet byl smazán" + "message": "Účet byl smazán." }, "accountDeletedDesc": { "message": "Váš účet byl uzavřen a všechna související data byla smazána." @@ -1345,7 +1345,7 @@ "message": "Hlášení o úniku hesel" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Uniklá hesla jsou hesla, která byla odhalena během známých úniků dat, zveřejněna nebo prodána hackery na dark webu." }, "exposedPasswordsFound": { "message": "Nalezena uniklá hesla" @@ -1488,7 +1488,7 @@ "message": "Faktury a licence" }, "goPremium": { - "message": "Pořiďte si prémiové členství", + "message": "Přejděte na Premium", "description": "Another way of saying \"Get a premium membership\"" }, "premiumUpdated": { @@ -1658,10 +1658,10 @@ "message": "Úložiště" }, "addStorage": { - "message": "Přidat úložiště" + "message": "Přidat uložiště" }, "removeStorage": { - "message": "Odebrat úložiště" + "message": "Odebrat uložiště" }, "subscriptionStorage": { "message": "Vaše předplatné zahrnuje celkem $MAX_STORAGE$ GB místa v šifrovaném úložišti. Aktuálně používáte $USED_STORAGE$.", @@ -1677,7 +1677,7 @@ } }, "paymentMethod": { - "message": "Způsob Platby" + "message": "Způsob platby" }, "noPaymentMethod": { "message": "No payment method on file." @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Změnit způsob platby" }, - "charges": { - "message": "Platby", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Žádné platby." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": " Veškeré platby se na výpisu objeví jako $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Kontaktovat zákaznickou podporu" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "Platební metoda byla aktualizována" }, @@ -1774,7 +1793,7 @@ "message": "E-mailová adresa pro fakturaci" }, "businessName": { - "message": "Název společnosti" + "message": "Název firmy" }, "chooseYourPlan": { "message": "Vyberte plán" @@ -1956,7 +1975,7 @@ "message": "Opravdu chcete tuto organizaci opustit?" }, "leftOrganization": { - "message": "Organizace byla opuštěna" + "message": "Organizace byla opuštěna." }, "defaultCollection": { "message": "Výchozí kolekce" @@ -2079,7 +2098,7 @@ "message": "Uživatel" }, "userDesc": { - "message": "A regular user with access to your organization's collections." + "message": "Běžný uživatel s přístupem k přiřazeným kolekcím vaší organizace." }, "manager": { "message": "Správce" @@ -2474,8 +2493,21 @@ "message": "Pokud chcete změnit svůj plán, kontaktujte zákaznickou podporu. Ujistěte se prosím, zda máte k účtu přidán způsob platby.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Ověření bankovního účtu" diff --git a/locales/da/messages.json b/locales/da/messages.json index 21242588..8485e5a1 100644 --- a/locales/da/messages.json +++ b/locales/da/messages.json @@ -578,7 +578,7 @@ "message": "Der opstod en uventet fejl." }, "emailAddress": { - "message": "Emailadresse" + "message": "E-mailadresse" }, "yourVaultIsLocked": { "message": "Din boks er låst. Bekræft din hovedadgangskode for at fortsætte." @@ -587,7 +587,7 @@ "message": "Lås op" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Logget ind som $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -775,7 +775,7 @@ "message": "Bekræftelseskode (TOTP)" }, "copyVerificationCode": { - "message": "Kopiér verifikationskoden" + "message": "Kopiér bekræftelseskoden" }, "warning": { "message": "Advarsel" @@ -833,16 +833,16 @@ "message": "Konto opdateret" }, "changeEmail": { - "message": "Skift email" + "message": "Skift e-mail" }, "newEmail": { - "message": "Ny email" + "message": "Ny e-mail" }, "code": { "message": "Kode" }, "changeEmailDesc": { - "message": "Vi har sendt en bekræftelseskode til $EMAIL$. Tjek venligst din email for denne kode og indtast den nedenfor for at afslutte emailadresse-ændringen.", + "message": "Vi har sendt en bekræftelseskode til $EMAIL$. Tjek venligst din e-mail for denne kode og indtast den nedenfor for at afslutte e-mailadresseændringen.", "placeholders": { "email": { "content": "$1", @@ -854,7 +854,7 @@ "message": "Ved at fortsætte vil du blive logget ud af din nuværende session, og du skal logge ind igen. Aktive sessioner på andre enheder kan fortsat forblive aktive i op til én time." }, "emailChanged": { - "message": "Email ændret" + "message": "E-mail ændret" }, "logBackIn": { "message": "Log venligst ind igen." @@ -920,7 +920,7 @@ "message": "Fjern godkendelsen fra sessioner" }, "deauthorizeSessionsDesc": { - "message": "Bekymret for om din konto er logget ind på en anden enhed? Fortsæt nedenfor for at fjerne godkendelsen for alle computere eller enheder, som du tidligere har brugt. Dette sikkerhedstrin anbefales, hvis du tidligere har brugt en offentlig pc eller ved et uheld har gemt dit kodeord på en enhed, der ikke er din. Dette trin fjerner også alle tidligere huskede to-trins-login sessioner." + "message": "Bekymret for om din konto er logget ind på en anden enhed? Fortsæt nedenfor for at fjerne godkendelsen for alle computere eller enheder, som du tidligere har brugt. Dette sikkerhedstrin anbefales, hvis du tidligere har brugt en offentlig computer eller ved et uheld har gemt dit kodeord på en enhed, der ikke er din. Dette trin fjerner også alle tidligere huskede to-trins-login sessioner." }, "deauthorizeSessionsWarning": { "message": "Ved at fortsætte vil du også blive logget ud af din nuværende session, og du skal logge ind igen. Du bliver også bedt om to-trins login igen, hvis det er aktiveret. Aktive sessioner på andre enheder kan fortsat forblive aktive i op til én time." @@ -989,7 +989,7 @@ "message": "eller kopiér\/indsæt importfilens indhold" }, "instructionsFor": { - "message": "$NAME$ Instruktioner", + "message": "$NAME$ instruktioner", "description": "The title for the import tool instructions.", "placeholders": { "name": { @@ -1054,7 +1054,7 @@ "message": "Nyt brugerdefineret domæne" }, "newCustomDomainDesc": { - "message": "Indtast en liste over domæner adskilt af kommaer. Kun \"grund\"-domæner er tilladt. Indtast ikke underdomæner. F.eks. Indtast \"google.com\" i stedet for \"www.google.com\". Du kan også indtaste \"androidapp: \/\/package.name\" for at knytte en androidapp til andre website-domæner." + "message": "Indtast en liste over domæner adskilt af kommaer. Kun \"grund\"-domæner er tilladt. Indtast ikke underdomæner. F.eks. Indtast \"google.com\" i stedet for \"www.google.com\". Du kan også indtaste \"androidapp:\/\/package.name\" for at knytte en androidapp til andre website-domæner." }, "customDomainX": { "message": "Brugerdefineret domæne $INDEX$", @@ -1242,7 +1242,7 @@ "message": "Indtast den 6-cifrede verifikationskode fra e-mailen" }, "sendEmail": { - "message": "Send email" + "message": "Send e-mail" }, "twoFactorU2fAdd": { "message": "Tilføj en FIDO U2F sikkerhedsnøgle til din konto" @@ -1646,7 +1646,7 @@ "message": "Download licens" }, "updateLicense": { - "message": "Opdater licens" + "message": "Opdatér licens" }, "updatedLicense": { "message": "Opdaterede licens" @@ -1661,7 +1661,7 @@ "message": "Tilføj lagerplads" }, "removeStorage": { - "message": "Fjern lager" + "message": "Fjern lagerplads" }, "subscriptionStorage": { "message": "Dit abonnement har i alt $MAX_STORAGE$ GB krypteret fillagring. Du bruger for øjeblikket $USED_STORAGE$.", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Skift betalingsmetode" }, - "charges": { - "message": "Omkostninger", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Ingen omkostninger." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Eventuelle omkostninger vises på din opgørelse som $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Kontakt kundesupport" }, - "contactSupportPaymentMethod": { - "message": "Hvis du vil skifte fra denne betalingsmetode, bedes du kontakte kundesupport." - }, "updatedPaymentMethod": { "message": "Betalingsmetode opdateret." }, @@ -2028,10 +2047,10 @@ "message": "Redigér bruger" }, "inviteUser": { - "message": "Inviter bruger" + "message": "Invitér bruger" }, "inviteUserDesc": { - "message": "Inviter en ny bruger til din organisation ved at indtaste emailadressen på deres Bitwarden-konto nedenfor. Hvis de ikke allerede har en Bitwarden-konto, bliver de bedt om at oprette en ny konto." + "message": "Inviter en ny bruger til din organisation ved at indtaste e-mailadressen på deres Bitwarden-konto nedenfor. Hvis de ikke allerede har en Bitwarden-konto, bliver de bedt om at oprette en ny konto." }, "inviteMultipleEmailDesc": { "message": "Du kan invitere op til $COUNT$ brugere ad gangen ved at kommaseparere en liste med e-mailadresser.", @@ -2079,7 +2098,7 @@ "message": "Bruger" }, "userDesc": { - "message": "En almindelig bruger med adgang til organisationens samlinger." + "message": "En almindelig bruger med adgang til tildelte samlinger i din organisation." }, "manager": { "message": "Administrator" @@ -2373,13 +2392,13 @@ "message": "Slutdato" }, "verifyEmail": { - "message": "Bekræft email" + "message": "Bekræft e-mail" }, "verifyEmailDesc": { "message": "Bekræft din e-mailadresse for at låse op for adgangen til alle funktioner." }, "verifyEmailFirst": { - "message": "Din kontos emailadresse skal først verificeres." + "message": "Din kontos e-mailadresse skal først verificeres." }, "checkInboxForVerification": { "message": "Tjek din e-mail indbakke for et bekræftelseslink." @@ -2391,7 +2410,7 @@ "message": "Kan ikke bekræfte din e-mail. Prøv at sende en ny verifikations-email." }, "updateBrowser": { - "message": "Opdater browser" + "message": "Opdatér browser" }, "updateBrowserDesc": { "message": "Du bruger en ikke-understøttet webbrowser. Web-boksen fungerer muligvis ikke korrekt." @@ -2406,7 +2425,7 @@ "message": "Invitation accepteret" }, "inviteAcceptedDesc": { - "message": "Du kan få adgang til denne organisation, når en administrator bekræfter dit medlemskab. Vi sender dig en email, når dette sker." + "message": "Du kan få adgang til denne organisation, når en administrator bekræfter dit medlemskab. Vi sender dig en e-mail, når dette sker." }, "inviteAcceptFailed": { "message": "Kan ikke acceptere invitationen. Bed en organisations-administrator om at sende en ny invitation." @@ -2474,8 +2493,21 @@ "message": "Kontakt kundesupport, hvis du vil ændre dit abonnement. Sørg for, at du har en aktiv betalingsmetode tilføjet til kontoen.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Bekræft bankkonto" @@ -2569,10 +2601,10 @@ "message": "Nøgle opdateret" }, "updateKeyTitle": { - "message": "Opdater nøgle" + "message": "Opdatér nøgle" }, "updateEncryptionKey": { - "message": "Opdater Krypteringsnøgle" + "message": "Opdatér Krypteringsnøgle" }, "updateEncryptionKeyShortDesc": { "message": "Du bruger i øjeblikket en forældet krypteringsmetode." @@ -2593,7 +2625,7 @@ "message": "Opgrader" }, "upgradeOrganization": { - "message": "Opgrader organisation" + "message": "Opgradér organisation" }, "upgradeOrganizationDesc": { "message": "Denne funktion er ikke tilgængelig for gratis organisationer. Skift til et betalt abonnement for at låse op for flere funktioner." diff --git a/locales/de/messages.json b/locales/de/messages.json index 693152a7..7e224505 100644 --- a/locales/de/messages.json +++ b/locales/de/messages.json @@ -205,7 +205,7 @@ "message": "Niemals" }, "toggleVisibility": { - "message": "Sichtbarkeit umschalten" + "message": "Ein- \/ Ausblenden" }, "toggleCollapse": { "message": "Sammlung ein- \/ ausklappen", @@ -263,7 +263,7 @@ "message": "Favoriten durchsuchen" }, "searchType": { - "message": "Suche nach Elementtyp", + "message": "Suchmodus", "description": "Search item type" }, "searchVault": { @@ -410,7 +410,7 @@ "message": "Starten" }, "newAttachment": { - "message": "Anhang hinzufügen" + "message": "Neuen Anhang hinzufügen" }, "deletedAttachment": { "message": "Gelöschter Anhang" @@ -545,7 +545,7 @@ "message": "Einstellungen" }, "passwordHint": { - "message": "Passworthinweis" + "message": "Passwort-Hinweis" }, "enterEmailToGetHint": { "message": "Geben Sie die E-Mail Adresse Ihres Kontos ein, um einen Hinweis auf ihr Master-Passwort zu erhalten." @@ -620,7 +620,7 @@ "message": "Neue Organisation" }, "noOrganizationsList": { - "message": "Du bist kein Mitglied einer Organisation. Organisationen erlauben es dir Passwörter sicher mit anderen Nutzern zu teilen." + "message": "Sie gehören keiner Organisation an. Organisationen erlauben es Ihnen Passwörter sicher mit anderen zu teilen." }, "versionNumber": { "message": "Version $VERSION_NUMBER$", @@ -703,7 +703,7 @@ "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "duoOrganizationDesc": { - "message": "Nutze Duo Security um dich mit der Duo Mobile App, SMS, per Anruf oder U2F Security Key bei deiner Organisation zu verifizieren.", + "message": "Nutzen Sie Duo Security um sich mit der Duo Mobile App, SMS, per Anruf oder U2F Sicherheitsschlüssel Ihrer Organisation gegenüber zu verifizieren.", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "u2fDesc": { @@ -809,7 +809,7 @@ "message": "Mehrdeutige Zeichen vermeiden" }, "regeneratePassword": { - "message": "Password neu generieren" + "message": "Passwort neu generieren" }, "length": { "message": "Länge" @@ -818,10 +818,10 @@ "message": "Anzahl der Wörter" }, "wordSeparator": { - "message": "Trennzeichen" + "message": "Worttrennzeichen" }, "passwordHistory": { - "message": "Kennwort-Historie" + "message": "Passwortverlauf" }, "noPasswordsInList": { "message": "Keine Passwörter vorhanden." @@ -854,7 +854,7 @@ "message": "Wenn Sie fortfahren, werden Sie aus Ihrer aktuellen Sitzung ausgeloggt. Aktive Sitzungen auf anderen Geräten können bis zu einer Stunde weiterhin verwendet werden." }, "emailChanged": { - "message": "E-Mail geändert" + "message": "E-Mail-Adresse geändert" }, "logBackIn": { "message": "Bitte melden Sie sich erneut an." @@ -1254,7 +1254,7 @@ "message": "Schlüssel erfassen" }, "keyCompromised": { - "message": "Dieser Schlüssel ist kompromitiert." + "message": "Dieser Schlüssel ist bloßgestellt." }, "twoFactorU2fGiveName": { "message": "Gib dem Sicherheitsschlüssel einen passenden Namen um ihn zu erkennen." @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Zahlungsmethode ändern" }, - "charges": { - "message": "Gebühren", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Keine Gebühren." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Alle Gebühren werden auf Ihrem Kontoauszug als $STATEMENT_NAME$ angezeigt.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Kundenservice kontaktieren" }, - "contactSupportPaymentMethod": { - "message": "Wenn Sie diese Zahlungsmethode wechseln möchten, wenden Sie sich bitte an den Kundendienst." - }, "updatedPaymentMethod": { "message": "Zahlungsart aktualisiert." }, @@ -2467,15 +2486,28 @@ "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlan": { - "message": "Abo ändern", + "message": "Abonnement ändern", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlanDesc": { "message": "Kontaktieren Sie den Kundensupport, um Ihr Abo zu ändern. Bitte stellen Sie sicher, dass Sie eine aktive Zahlungsmethode zu Ihrem Konto hinzugefügt haben.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Rechnung" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Bankkonto verifizieren" diff --git a/locales/en_GB/messages.json b/locales/en_GB/messages.json index 9154b5be..6e787ee3 100644 --- a/locales/en_GB/messages.json +++ b/locales/en_GB/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Change payment method" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contact Customer Support" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact Customer Support." - }, "updatedPaymentMethod": { "message": "Updated payment method." }, @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Invoice" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verify bank account" diff --git a/locales/es/messages.json b/locales/es/messages.json index 78f4f74b..979400dd 100644 --- a/locales/es/messages.json +++ b/locales/es/messages.json @@ -620,7 +620,7 @@ "message": "Nueva organización" }, "noOrganizationsList": { - "message": "No perteneces a ninguna orgnaización. Las organizaciones te permiten compartir elementos con otros usuarios de forma segura." + "message": "No perteneces a ninguna organización. Las organizaciones te permiten compartir elementos con otros usuarios de forma segura." }, "versionNumber": { "message": "Versión $VERSION_NUMBER$", @@ -781,7 +781,7 @@ "message": "Advertencia" }, "exportWarningDesc": { - "message": "Esta exportación contiene tus datos de la bóveda en un formato no cifrado. No deberías almacenar o enviar el archivo exportado por canales no seguros (como el correo electrónico). Elimínalo inmediatamente cuando termines de utilizarlo." + "message": "Esta exportación contiene los datos de tu caja fuerte en un formato no cifrado. No deberías almacenar o enviar el archivo exportado por canales no seguros (como el correo electrónico). Elimínalo inmediatamente cuando termines de utilizarlo." }, "exportMasterPassword": { "message": "Introduce tu contraseña maestra para exportar la información de tu caja fuerte." @@ -1306,7 +1306,7 @@ "message": "Sitios web no seguros encontrados" }, "unsecuredWebsitesFoundDesc": { - "message": "Hemos encontrado $COUNT$ elemento(s) en su bóveda con URIs no seguras. Si el sitio web lo permite debe cambiar su esquema URI a https:\/\/.", + "message": "Hemos encontrado $COUNT$ elemento(s) en su caja fuerte con URIs no seguras. Si el sitio web lo permite debe cambiar su esquema URI a https:\/\/.", "placeholders": { "count": { "content": "$1", @@ -1315,7 +1315,7 @@ } }, "noUnsecuredWebsites": { - "message": "No hay elementos en su bóveda con URIs no seguras." + "message": "No hay elementos en su caja fuerte con URIs no seguras." }, "inactive2faReport": { "message": "Informe 2FA inactivo" @@ -1327,7 +1327,7 @@ "message": "Inicios de sesión sin 2FA encontrados" }, "inactive2faFoundDesc": { - "message": "Hemos encontrado $COUNT$ sitio(s) web en su bóveda que no pueden ser configuradas con autenticación de dos factores (según twofactorauth.org). Para proteger estas cuentas, debe habilitar autenticación de dos factores.", + "message": "Hemos encontrado $COUNT$ sitio(s) web en su caja fuerte que no pueden ser configuradas con autenticación de dos factores (según twofactorauth.org). Para proteger estas cuentas, debe habilitar autenticación de dos factores.", "placeholders": { "count": { "content": "$1", @@ -1336,7 +1336,7 @@ } }, "noInactive2fa": { - "message": "No se han encontrado sitios web en su bóveda sin una configuración de autenticación de dos factores." + "message": "No se han encontrado sitios web en su caja fuerte sin una configuración de autenticación de dos factores." }, "instructions": { "message": "Instrucciones" @@ -1351,7 +1351,7 @@ "message": "Contraseñas expuestas encontradas" }, "exposedPasswordsFoundDesc": { - "message": "Hemos encontrado $COUNT$ elementos en su bóveda que tienen contraseñas que fueron expuestas en violaciones de datos conocidas. Debe cambiarlos para utilizar una contraseña nueva.", + "message": "Hemos encontrado $COUNT$ elementos en su caja fuerte que tienen contraseñas que fueron expuestas en violaciones de datos conocidas. Debe cambiarlos para utilizar una contraseña nueva.", "placeholders": { "count": { "content": "$1", @@ -1360,7 +1360,7 @@ } }, "noExposedPasswords": { - "message": "No hay elementos en su bóveda que tengan contraseñas que hayan sido expuestas en violaciones de datos conocidas." + "message": "No hay elementos en su caja fuerte que tengan contraseñas que hayan sido expuestas en violaciones de datos conocidas." }, "checkExposedPasswords": { "message": "Compruebe las contraseñas expuestas" @@ -1384,7 +1384,7 @@ "message": "Contraseñas débiles encontradas" }, "weakPasswordsFoundDesc": { - "message": "Hemos encontrado $COUNT$ elemento(s) en su bóveda con contraseñas que no son fuertes. Se deben actualizar para usar contraseñas más fuertes.", + "message": "Hemos encontrado $COUNT$ elemento(s) en su caja fuerte con contraseñas que no son fuertes. Se deben actualizar para usar contraseñas más fuertes.", "placeholders": { "count": { "content": "$1", @@ -1393,7 +1393,7 @@ } }, "noWeakPasswords": { - "message": "No hay elementos en su bóveda tienen contraseñas débiles." + "message": "No hay elementos en su caja fuerte que tengan contraseñas débiles." }, "reusedPasswordsReport": { "message": "Informe de contraseñas reutilizadas" @@ -1405,7 +1405,7 @@ "message": "Contraseñas reutilizadas encontradas" }, "reusedPasswordsFoundDesc": { - "message": "Hemos encontrado $COUNT$ contraseña(s) que están siendo reutilizadas en su bóveda. Debe cambiarlas a un valor único.", + "message": "Hemos encontrado $COUNT$ contraseña(s) que están siendo reutilizadas en su caja fuerte. Debe cambiarlas a un valor único.", "placeholders": { "count": { "content": "$1", @@ -1414,7 +1414,7 @@ } }, "noReusedPasswords": { - "message": "No hay inicios de sesión en su bóveda que tengan contraseñas que esten siendo reutilizadas." + "message": "No hay inicios de sesión en su caja fuerte que tengan contraseñas que esten siendo reutilizadas." }, "reusedXTimes": { "message": "Reutilizada $COUNT$ vez\/veces", @@ -1504,10 +1504,10 @@ "message": "Opciones adicionales de inicio de sesión de dos pasos como YubiKey, Fido U2F y Duo." }, "premiumSignUpReports": { - "message": "Higiene de contraseña, salud de la cuenta e informes de violaciones de datos para mantener su bóveda segura." + "message": "Higiene de contraseña, salud de la cuenta e informes de violaciones de datos para mantener su caja fuerte segura." }, "premiumSignUpTotp": { - "message": "Generador de código de verificación TOTP (2FA) para iniciar sesión en su bóveda." + "message": "Generador de código de verificación TOTP (2FA) para iniciar sesión en su caja fuerte." }, "premiumSignUpSupport": { "message": "Atención prioritaria al cliente." @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Cambiar Método de Pago" }, - "charges": { - "message": "Cargos", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Sin cargos." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Cualquier cargo aparecerá en su estado de cuenta como $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Póngase en contacto con el servicio de atención al cliente" }, - "contactSupportPaymentMethod": { - "message": "Si deseas cambiar el método de pago, por favor, ponte en contacto con atención al cliente." - }, "updatedPaymentMethod": { "message": "Método de pago actualizado." }, @@ -2394,7 +2413,7 @@ "message": "Actualizar navegador" }, "updateBrowserDesc": { - "message": "Está utilizando un navegador web no compatible. Es posible que la bóveda web no funcione correctamente." + "message": "Está utilizando un navegador web no compatible. Es posible que la caja fuerte web no funcione correctamente." }, "joinOrganization": { "message": "Únete a la organización" @@ -2474,8 +2493,21 @@ "message": "Contacta con atención al cliente si deseas cambiar tu plan. Por favor, asegúrate de tener activo un método de pago en tu cuenta.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Factura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verificar cuenta bancaria" @@ -2484,7 +2516,7 @@ "message": "Hemos hecho dos pequeños cargos en tu cuenta bancaria (pueden tardar de 1 a 2 días laborables en aparecer). Introduce esas cantidades para verificar tu cuenta bancaria." }, "verifyBankAccountInitialDesc": { - "message": "El pago con cuenta bancaria solo está disponible para clientes en los Estados Unidos. Tendrás que verificar tu cuenta bancaria. Realizaremos dos pequeños cargos en los siguientes 1-2 días laborables. Introduce esas cantidades en la página de facturación de la organización para verificar la cuenta bancaria." + "message": "El pago con cuenta bancaria solo está disponible para clientes en los Estados Unidos. Tendrá que verificar su cuenta bancaria. Realizaremos dos pequeños cargos en los siguientes 1-2 días laborables. Introduzca esas cantidades en la página de facturación de la organización para verificar la cuenta bancaria." }, "verifyBankAccountFailureWarning": { "message": "Si falla la verificación de la cuenta bancaria, como resultado se saltará el pago y tu suscripción será deshabilitada." @@ -2718,7 +2750,7 @@ "description": "This is a verb. ex. 'Fix The Car'" }, "oldAttachmentsNeedFixDesc": { - "message": "Hay archivos adjuntos antiguos en la bóveda que necesitan ser corregidos antes de poder rotar la clave de encriptación de su cuenta." + "message": "Hay archivos adjuntos antiguos en la caja fuerte que necesitan ser corregidos antes de poder rotar la clave de encriptación de su cuenta." }, "yourAccountsFingerprint": { "message": "Frase de la huella digital de su cuenta", diff --git a/locales/et/messages.json b/locales/et/messages.json index c3e9d6b0..a89d6018 100644 --- a/locales/et/messages.json +++ b/locales/et/messages.json @@ -1485,7 +1485,7 @@ "message": "Raporti laadimisel ilmes viga. Proovi uuesti" }, "billingAndLicensing": { - "message": "Maksmine & Litsentsid" + "message": "Maksmine & litsentsid" }, "goPremium": { "message": "Hangi Premium", @@ -1525,7 +1525,7 @@ } }, "addons": { - "message": "Lisad" + "message": "Täiendused" }, "premiumAccess": { "message": "Premium ligipääs" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Muuda makseviisi" }, - "charges": { - "message": "Maksed", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Maksed puuduvad." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Mistahes maksed ilmuvad väljavõttes nimega $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Võta klienditoega ühendust" }, - "contactSupportPaymentMethod": { - "message": "Kui soovid maksemeetodit muuta, võta ühendust meie klienditoega." - }, "updatedPaymentMethod": { "message": "Maksemeetod on muudetud." }, @@ -1890,7 +1909,7 @@ } }, "addShareUnlimitedUsers": { - "message": "Lisa ja jaga piiramata kasutajatega" + "message": "Lisa ja jaga kirjeid piiramatul hulgal kasutajatega" }, "createUnlimitedCollections": { "message": "Loo piiramatul hulgal kollektsioone" @@ -2474,8 +2493,21 @@ "message": "Oma paketi muutmiseks võta ühendust klienditoega. Veendu, et kontole on lisatud maksemeetod, mis on ka aktiivne.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Müügiarve" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Pangakonto verifitseerimine" @@ -2493,7 +2525,7 @@ "message": "Pangakonto on kinnitatud." }, "bankAccount": { - "message": "Bank Account" + "message": "Pangakontoga" }, "amountX": { "message": "Summa $COUNT$", diff --git a/locales/fi/messages.json b/locales/fi/messages.json index 29831a14..a1d3ee15 100644 --- a/locales/fi/messages.json +++ b/locales/fi/messages.json @@ -527,10 +527,10 @@ "message": "Pääsalasana" }, "masterPassDesc": { - "message": "The master password is the password you use to access your vault. It is very important that you do not forget your master password. There is no way to recover the password in the event that you forget it." + "message": "Pääsalasanalla pääset käsiksi salasanaholviisi. On hyvin tärkeää, että muistat pääsalasanasi. Pääsalasanaa ei voida palauttaa mitenkään, jos satut unohtamaan sen." }, "masterPassHintDesc": { - "message": "A master password hint can help you remember your password if you forget it." + "message": "Pääsalasanan vihje voi auttaa sinua muistamaan pääsalasanasi, jos satut unohtamaan sen." }, "reTypeMasterPass": { "message": "Syötä pääsalasana uudelleen" @@ -587,7 +587,7 @@ "message": "Avaa" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Kirjautunut tilillä $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -605,7 +605,7 @@ "message": "There are no items to list." }, "noCollectionsInList": { - "message": "There are no collections to list." + "message": "Ei kokoelmia näytettäväksi." }, "noGroupsInList": { "message": "There are no groups to list." @@ -662,10 +662,10 @@ "message": "Käytä toista menetelmää kaksivaiheiseen kirjautumiseen" }, "insertYubiKey": { - "message": "Insert your YubiKey into your computer's USB port, then touch its button." + "message": "Kytke YubiKey-laitteesi tietokoneesi USB-porttiin ja paina sen nappia." }, "insertU2f": { - "message": "Insert your security key into your computer's USB port. If it has a button, touch it." + "message": "Kytke todennuslaitteesi tietokoneesi USB-porttiin. Jos laitteessa on painike, paina sitä." }, "loginUnavailable": { "message": "Kirjautuminen ei ole käytettävissä" @@ -674,7 +674,7 @@ "message": "This account has two-step login enabled, however, none of the configured two-step providers are supported by this web browser." }, "noTwoStepProviders2": { - "message": "Please use a supported web browser (such as Chrome) and\/or add additional providers that are better supported across web browsers (such as an authenticator app)." + "message": "Käytä tuettua selainta (kuten Chromea) ja\/tai ota käyttöön paremmin tuettu todennusmenetelmä (kuten todennussovellus)." }, "twoStepOptions": { "message": "Kaksivaiheisen kirjautumisen valinnat" @@ -689,7 +689,7 @@ "message": "Todennussovellus" }, "authenticatorAppDesc": { - "message": "Use an authenticator app (such as Authy or Google Authenticator) to generate time-based verification codes.", + "message": "Käytä todennussovellusta (Kuten Authya tai Google Authenticatoria) luodaksesi aikarajallisia vahvistuskoodeja.", "description": "'Authy' and 'Google Authenticator' are product names and should not be translated." }, "yubiKeyTitle": { @@ -781,7 +781,7 @@ "message": "Varoitus" }, "exportWarningDesc": { - "message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it." + "message": "Tämä vienti sisältää holvisi tiedot salaamattomassa muodossa. Vietyä tiedostoa EI pidä säilyttää tai lähettää salaamattomana (kuten sähköpostitse). Poista tiedosto välittömästi, kun et enää tarvitse sitä." }, "exportMasterPassword": { "message": "Syötä pääsalasanasi viedäksesi holvisi tiedot." @@ -790,7 +790,7 @@ "message": "Vie holvi" }, "fileFormat": { - "message": "File Format" + "message": "Tiedostomuoto" }, "exportSuccess": { "message": "Holvisi tiedot on viety." @@ -827,7 +827,7 @@ "message": "Ei salasanoja näytettäväksi." }, "clear": { - "message": "Clear" + "message": "Tyhjennä" }, "accountUpdated": { "message": "Tili päivitetty" @@ -842,7 +842,7 @@ "message": "Koodi" }, "changeEmailDesc": { - "message": "We have emailed a verification code to $EMAIL$. Please check your email for this code and enter it below to finalize the email address change.", + "message": "Olemme lähettäneet vahvistuskoodin osoitteeseen $EMAIL$. Tarkista sähköpostisi ja kirjoita saamasi koodi alapuolelle viimeistelläksesi sähköpostiosoitteen vaihtamisen.", "placeholders": { "email": { "content": "$1", @@ -860,7 +860,7 @@ "message": "Kirjaudu sisään uudelleen." }, "logBackInOthersToo": { - "message": "Please log back in. If you are using other Bitwarden applications log out and back in to those as well." + "message": "Kirjaudu uudelleen sisään. Jos käytät muita Bitwarden-sovelluksia, kirjaudu myös niistä ulos ja takaisin sisään." }, "changeMasterPassword": { "message": "Vaihda pääsalasana" @@ -884,7 +884,7 @@ "message": "KDF-algoritmi" }, "kdfIterations": { - "message": "KDF Iterations" + "message": "KDF-iteraatiot" }, "kdfIterationsDesc": { "message": "Higher KDF iterations can help protect your master password from being brute forced by an attacker. We recommend a value of $VALUE$ or more.", @@ -917,7 +917,7 @@ "message": "Varovasti, näitä toimintoja ei voi perua!" }, "deauthorizeSessions": { - "message": "Deauthorize Sessions" + "message": "Poista valtuutus istunnoilta" }, "deauthorizeSessionsDesc": { "message": "Concerned your account is logged in on another device? Proceed below to deauthorize all computers or devices that you have previously used. This security step is recommended if you previously used a public computer or accidentally saved your password on a device that isn't yours. This step will also clear all previously remembered two-step login sessions." @@ -926,7 +926,7 @@ "message": "Proceeding will also log you out of your current session, requiring you to log back in. You will also be prompted for two-step login again, if enabled. Active sessions on other devices may continue to remain active for up to one hour." }, "sessionsDeauthorized": { - "message": "All Sessions Deauthorized" + "message": "Kaikkien istujentojen valtuudet poistettu" }, "purgeVault": { "message": "Purge Vault" @@ -1030,7 +1030,7 @@ "message": "Oletus" }, "domainRules": { - "message": "Domain Rules" + "message": "Verkkotunnusten säännöt" }, "domainRulesDesc": { "message": "If you have the same login across multiple different website domains, you can mark the website as \"equivalent\". \"Global\" domains are ones already created for you by Bitwarden." @@ -1048,16 +1048,16 @@ "message": "Include" }, "customize": { - "message": "Customize" + "message": "Mukauta" }, "newCustomDomain": { - "message": "New Custom Domain" + "message": "Uusi mukautettu verkkotunnus" }, "newCustomDomainDesc": { "message": "Enter a list of domains separated by commas. Only \"base\" domains are allowed. Do not enter subdomains. For example, enter \"google.com\" instead of \"www.google.com\". You can also enter \"androidapp:\/\/package.name\" to associate an android app with other website domains." }, "customDomainX": { - "message": "Custom Domain $INDEX$", + "message": "Mukautettu verkkotunnus $INDEX$", "placeholders": { "index": { "content": "$1", @@ -1081,7 +1081,7 @@ "message": "Enabling two-step login can permanently lock you out of your Bitwarden account. A recovery code allows you to access your account in the event that you can no longer use your normal two-step login provider (ex. you lose your device). Bitwarden support will not be able to assist you if you lose access to your account. We recommend you write down or print the recovery code and keep it in a safe place." }, "viewRecoveryCode": { - "message": "View Recovery Code" + "message": "Näytä palautuskoodi" }, "providers": { "message": "Palveluntarjoajat", @@ -1167,7 +1167,7 @@ "message": "Lisää uusi YubiKey tilillesi" }, "twoFactorYubikeyPlugIn": { - "message": "Plug the YubiKey (NEO or 4 series) into your computer's USB port." + "message": "Aseta YubiKey tietokoneesi USB-porttiin." }, "twoFactorYubikeySelectKey": { "message": "Select the first empty YubiKey input field below." @@ -1215,7 +1215,7 @@ "message": "If one of your YubiKeys supports NFC (such as a YubiKey NEO), you will be prompted on mobile devices whenever NFC availability is detected." }, "yubikeysUpdated": { - "message": "YubiKeys updated" + "message": "YubiKeyt päivitetty" }, "disableAllKeys": { "message": "Disable All Keys" @@ -1375,13 +1375,13 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Heikkojen salasanojen raportti" }, "weakPasswordsReportDesc": { "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." }, "weakPasswordsFound": { - "message": "Weak Passwords Found" + "message": "Heikkoja salasanoja löydetty" }, "weakPasswordsFoundDesc": { "message": "We found $COUNT$ items in your vault with passwords that are not strong. You should update them to use stronger passwords.", @@ -1637,7 +1637,7 @@ "message": "Tila" }, "nextCharge": { - "message": "Next Charge" + "message": "Seuraava veloitus" }, "details": { "message": "Tiedot" @@ -1655,13 +1655,13 @@ "message": "Hallitse tilausta" }, "storage": { - "message": "Storage" + "message": "Tallennustila" }, "addStorage": { - "message": "Add Storage" + "message": "Lisää tallennustila" }, "removeStorage": { - "message": "Remove Storage" + "message": "Poista tallennustila" }, "subscriptionStorage": { "message": "Your subscription has a total of $MAX_STORAGE$ GB of encrypted file storage. You are currently using $USED_STORAGE$.", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Vaihda maksutapaa" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Ota yhteys asiakaspalveluun" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "Maksutapa päivitetty." }, @@ -1771,13 +1790,13 @@ "message": "Tämän tilin omistaa yritys." }, "billingEmail": { - "message": "Billing Email" + "message": "Laskutussähköpostiosoite" }, "businessName": { "message": "Yrityksen nimi" }, "chooseYourPlan": { - "message": "Choose Your Plan" + "message": "Valitse tilaus" }, "users": { "message": "Käyttäjät" @@ -1830,13 +1849,13 @@ "message": "Tiimit" }, "planDescTeams": { - "message": "For businesses and other team organizations." + "message": "Yrityksille ja muille yhteisöille." }, "planNameEnterprise": { "message": "Yritys" }, "planDescEnterprise": { - "message": "For businesses and other large organizations." + "message": "Yrityksille ja suurille organisaatioille." }, "freeForever": { "message": "Ilmainen ikuisesti" @@ -1872,7 +1891,7 @@ } }, "limitedCollections": { - "message": "Limited to $COUNT$ collections", + "message": "Rajoitettu $COUNT$ kokoelmaan", "placeholders": { "count": { "content": "$1", @@ -1947,10 +1966,10 @@ "message": "Organisaatio luotu" }, "organizationReadyToGo": { - "message": "Your new organization is ready to go!" + "message": "Uusi organisaatiosi on valmis käytettäväksi!" }, "leave": { - "message": "Leave" + "message": "Poistu" }, "leaveOrganizationConfirmation": { "message": "Haluatko varmasti poistua tästä organisaatiosta?" @@ -1962,7 +1981,7 @@ "message": "Oletuskokoelma" }, "getHelp": { - "message": "Get Help" + "message": "Saa apua" }, "getApps": { "message": "Hanki sovellukset" @@ -2007,7 +2026,7 @@ "message": "This group can access and modify all items." }, "groupAccessSelectedCollections": { - "message": "This group can access only the selected collections." + "message": "Tällä ryhmällä on pääsy vain valittuihin kokoelmiin." }, "readOnly": { "message": "Vain luku" @@ -2052,7 +2071,7 @@ "message": "Tällä käyttäjällä on pääsy vain valittuihin kokoelmiin." }, "search": { - "message": "Search" + "message": "Hae" }, "invited": { "message": "Kutsuttu" @@ -2121,7 +2140,7 @@ "message": "Verkkoholvi" }, "loggedIn": { - "message": "Logged in." + "message": "Sisäänkirjautunut." }, "changedPassword": { "message": "Vaihdettu tilin salasana." @@ -2142,10 +2161,10 @@ "message": "Sisäänkirjautumisyritys epäonnistui väärän kaksivaiheisen todennuksen takia." }, "editedOrgSettings": { - "message": "Edited organization settings." + "message": "Muokattu organisaation asetuksia." }, "createdItemId": { - "message": "Created item $ID$.", + "message": "Luotu kohde $ID$.", "placeholders": { "id": { "content": "$1", @@ -2154,7 +2173,7 @@ } }, "editedItemId": { - "message": "Edited item $ID$.", + "message": "Muokattu kohdetta $ID$.", "placeholders": { "id": { "content": "$1", @@ -2163,7 +2182,7 @@ } }, "deletedItemId": { - "message": "Deleted item $ID$.", + "message": "Poistettu kohde $ID$.", "placeholders": { "id": { "content": "$1", @@ -2172,7 +2191,7 @@ } }, "sharedItemId": { - "message": "Shared item $ID$.", + "message": "Jaettu kohde $ID$.", "placeholders": { "id": { "content": "$1", @@ -2181,7 +2200,7 @@ } }, "createdCollectionId": { - "message": "Created collection $ID$.", + "message": "Luotu kokoelma $ID$.", "placeholders": { "id": { "content": "$1", @@ -2190,7 +2209,7 @@ } }, "editedCollectionId": { - "message": "Edited collection $ID$.", + "message": "Muokattu kokoelmaa $ID$.", "placeholders": { "id": { "content": "$1", @@ -2199,7 +2218,7 @@ } }, "deletedCollectionId": { - "message": "Deleted collection $ID$.", + "message": "Poistettu kokoelma $ID$.", "placeholders": { "id": { "content": "$1", @@ -2208,7 +2227,7 @@ } }, "createdGroupId": { - "message": "Created group $ID$.", + "message": "Luotu ryhmä $ID$.", "placeholders": { "id": { "content": "$1", @@ -2217,7 +2236,7 @@ } }, "editedGroupId": { - "message": "Edited group $ID$.", + "message": "Muokattu ryhmää $ID$.", "placeholders": { "id": { "content": "$1", @@ -2262,7 +2281,7 @@ } }, "editedCollectionsForItem": { - "message": "Edited collections for item $ID$.", + "message": "Muokattu kohteen $ID$ kokoelmia.", "placeholders": { "id": { "content": "$1", @@ -2280,7 +2299,7 @@ } }, "confirmedUserId": { - "message": "Confirmed user $ID$.", + "message": "Vahvistettu käyttäjä $ID$.", "placeholders": { "id": { "content": "$1", @@ -2289,7 +2308,7 @@ } }, "editedUserId": { - "message": "Edited user $ID$.", + "message": "Muokattu käyttäjää $ID$.", "placeholders": { "id": { "content": "$1", @@ -2298,7 +2317,7 @@ } }, "editedGroupsForUser": { - "message": "Edited groups for user $ID$.", + "message": "Muokattu käyttäjän $ID$ ryhmiä.", "placeholders": { "id": { "content": "$1", @@ -2349,7 +2368,7 @@ "message": "Vahvista" }, "confirmUser": { - "message": "Confirm User" + "message": "Vahvista käyttäjä" }, "hasBeenConfirmed": { "message": "$USER$ on vahvistettu.", @@ -2364,7 +2383,7 @@ "message": "Vahvista käyttäjät" }, "usersNeedConfirmed": { - "message": "You have users that have accepted their invitation, but still need to be confirmed. Users will not have access to the organization until they are confirmed." + "message": "Sinulla on käyttäjiä, jotka ovat hyväksyneet kutsun, mutta heidän liittyminen tulee vielä vahvistaa. Käyttäjillä ei ole pääsyä organisaation, ennen kuin heidät on vahvistettu." }, "startDate": { "message": "Aloituspäivä" @@ -2379,7 +2398,7 @@ "message": "Verify your account's email address to unlock access to all features." }, "verifyEmailFirst": { - "message": "Your account's email address first must be verified." + "message": "Tilisi sähköpostiosoite tulee ensin vahvistaa." }, "checkInboxForVerification": { "message": "Check your email inbox for a verification link." @@ -2406,10 +2425,10 @@ "message": "Kutsu hyväksytty" }, "inviteAcceptedDesc": { - "message": "You can access this organization once an administrator confirms your membership. We'll send you an email when that happens." + "message": "Pääset tähän organisaation, kun ylläpitäjä vahvistaa jäsentyytesi. Lähetämme sinulle sähköpostia, kun jäsenyytesi on vahvistettu." }, "inviteAcceptFailed": { - "message": "Unable to accept invitation. Ask an organization admin to send a new invitation." + "message": "Kutsun hyväksyminen ei onnistu. Pyydä organisaation ylläpitäjää lähettämään uusi kutsu." }, "rememberEmail": { "message": "Remember email" @@ -2445,19 +2464,19 @@ "message": "Proceed below to delete this organization and all associated data. Individual user accounts will remain, though they will not be associated to this organization anymore. " }, "deleteOrganizationWarning": { - "message": "Deleting the organization is permanent. It cannot be undone." + "message": "Organisaation poistaminen on peruuttamaton toimenpide." }, "organizationDeleted": { "message": "Organisaatio poistettu" }, "organizationDeletedDesc": { - "message": "The organization and all associated data has been deleted." + "message": "Organisaatio ja kaikki siihen liittyvät tiedot on poistettu." }, "organizationUpdated": { "message": "Organisaatio päivitetty" }, "taxInformation": { - "message": "Tax Information" + "message": "Verotiedot" }, "taxInformationDesc": { "message": "Please contact support to provide (or update) tax information for your invoices." @@ -2467,15 +2486,28 @@ "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlan": { - "message": "Change Plan", + "message": "Vaihda tilaus", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, "changeBillingPlanDesc": { "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Lasku" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Vahvista pankkitili" @@ -2536,7 +2568,7 @@ "description": "Seat = User Seat" }, "subscriptionUserSeats": { - "message": "Your subscription allows for a total of $COUNT$ users.", + "message": "Tilauksesi sallii yhteensä $COUNT$ käyttäjää.", "placeholders": { "count": { "content": "$1", @@ -2593,16 +2625,16 @@ "message": "Upgrade" }, "upgradeOrganization": { - "message": "Upgrade Organization" + "message": "Päivitä organisaatio" }, "upgradeOrganizationDesc": { - "message": "This feature is not available for free organizations. Switch to a paid plan to unlock more features." + "message": "Tämä ominaisuus ei ole käytettävissä ilmaisorganisaatioille. Vaihda maksulliseen tilaukseen avataksesi enemmän ominaisuuksia." }, "createOrganizationStep1": { - "message": "Create Organization: Step 1" + "message": "Luo organisaatio: vaihe 1" }, "createOrganizationCreatePersonalAccount": { - "message": "Before creating your organization, you first need to create a free personal account." + "message": "Ennen kuin voit luoda organisaation, sinun tulee luoda ilmainen henkilökohtainen tili." }, "refunded": { "message": "Refunded" @@ -2677,23 +2709,23 @@ "message": "Kuka omistaa tämän kohteen?" }, "strong": { - "message": "Strong", + "message": "Vahva", "description": "ex. A strong password. Scale: Very Weak -> Weak -> Good -> Strong" }, "good": { - "message": "Good", + "message": "Hyvä", "description": "ex. A good password. Scale: Very Weak -> Weak -> Good -> Strong" }, "weak": { - "message": "Weak", + "message": "Heikko", "description": "ex. A weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "veryWeak": { - "message": "Very Weak", + "message": "Erittäin heikko", "description": "ex. A very weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "weakMasterPassword": { - "message": "Weak Master Password" + "message": "Heikko pääsalasana" }, "weakMasterPasswordDesc": { "message": "The master password you have chosen is weak. You should use a strong master password (or a passphrase) to properly protect your Bitwarden account. Are you sure you want to use this master password?" @@ -2714,7 +2746,7 @@ "message": "This is an old file attachment the needs to be fixed. Click to learn more." }, "fix": { - "message": "Fix", + "message": "Korjaa", "description": "This is a verb. ex. 'Fix The Car'" }, "oldAttachmentsNeedFixDesc": { @@ -2733,7 +2765,7 @@ "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "free": { - "message": "Free", + "message": "Ilmainen", "description": "Free, as in 'Free beer'" } } \ No newline at end of file diff --git a/locales/fr/messages.json b/locales/fr/messages.json index 1a8451dc..e0e34fcf 100644 --- a/locales/fr/messages.json +++ b/locales/fr/messages.json @@ -47,7 +47,7 @@ "message": "Champs personnalisés" }, "cardholderName": { - "message": "Nom du détenteur de la carte" + "message": "Nom du titulaire de la carte" }, "number": { "message": "Nombre" @@ -59,7 +59,7 @@ "message": "Expiration" }, "securityCode": { - "message": "Code de sécurité (CVC)" + "message": "Cryptogramme visuel (CVV)" }, "identityName": { "message": "Identité" @@ -392,13 +392,13 @@ "message": "Coffre" }, "shareSelected": { - "message": "Partager la sélection" + "message": "Partager les éléments sélectionnés" }, "deleteSelected": { - "message": "Supprimer la sélection" + "message": "Supprimer les éléments sélectionnés" }, "moveSelected": { - "message": "Déplacer la sélection" + "message": "Déplacer les éléments sélectionnés" }, "selectAll": { "message": "Tout sélectionner" @@ -533,7 +533,7 @@ "message": "Un indice de mot de passe maître peut vous aider à vous rappeler de votre mot de passe en cas d'oubli." }, "reTypeMasterPass": { - "message": "Retapez votre mot de passe maître" + "message": "Saisir à nouveau le mot de passe maître" }, "masterPassHint": { "message": "Indice du mot de passe maître (facultatif)" @@ -587,7 +587,7 @@ "message": "Déverrouiller" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Connecté en tant que $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -599,7 +599,7 @@ "message": "Mot de passe maître invalide" }, "lockNow": { - "message": "Vérrouiller maintenant" + "message": "Verrouiller maintenant" }, "noItemsInList": { "message": "Aucun élément à afficher." @@ -668,13 +668,13 @@ "message": "Insérez votre clé de sécurité dans le port USB de votre ordinateur. Si elle dispose d'un bouton, appuyez dessus." }, "loginUnavailable": { - "message": "Identifiant non disponible" + "message": "Connexion impossible" }, "noTwoStepProviders": { "message": "Ce compte dispose d'une authentification en deux étapes, cependant aucun de vos services d'authentification en deux étapes n'est supporté par ce navigateur web." }, "noTwoStepProviders2": { - "message": "Merci d'utiliser un navigateur web compatible (comme Chrome) et\/ou d'ajouter des services additionnels de double authentification qui sont mieux supportés par les navigateurs web (comme par exemple une application d'authentification)." + "message": "Merci d'utiliser un navigateur web compatible (comme Chrome) et\/ou d'ajouter des services additionnels d'identification en deux étapes qui sont mieux supportés par les navigateurs web (comme par exemple une application d'authentification)." }, "twoStepOptions": { "message": "Options d'identification en deux étapes" @@ -935,7 +935,7 @@ "message": "Le coffre de l'organisation a été effacé." }, "purgeVaultDesc": { - "message": "Poursuivez ci-dessous pour supprimer tous les éléments et dossiers de votre coffre. Les éléments qui appartiennent à une organisation avec laquelle vous partagez ne seront pas supprimés." + "message": "Poursuivez ci-dessous pour supprimer tous les éléments et dossiers de votre coffre. Les éléments qui appartiennent à une organisation dont vous êtes membre ne seront pas supprimés." }, "purgeOrgVaultDesc": { "message": "Poursuivez ci-dessous pour supprimer tous les éléments du coffre de votre organisation." @@ -1101,7 +1101,7 @@ "message": "Adhésion Premium" }, "premiumRequired": { - "message": "Version Premium requise" + "message": "Adhésion Premium requise" }, "premiumRequiredDesc": { "message": "Une adhésion premium est requise pour utiliser cette fonctionnalité." @@ -1128,7 +1128,7 @@ "message": "Suivez ces étapes pour configurer la connexion en deux étapes avec une application d'authentification :" }, "twoStepAuthenticatorDownloadApp": { - "message": "Télécharger une application d'authentification multi facteurs" + "message": "Télécharger une application d'authentification en deux étapes" }, "twoStepAuthenticatorNeedApp": { "message": "Besoin d'une application d'authentification en deux étapes ? Téléchargez l'une des applications suivantes" @@ -1531,7 +1531,7 @@ "message": "Accès premium" }, "premiumAccessDesc": { - "message": "Vous pouvez ajouter un accès premium à tous les membres de votre organisation pour $PRICE$\/$INTERVAL$.", + "message": "Vous pouvez offrir un accès premium à tous les membres de votre organisation pour $PRICE$\/$INTERVAL$.", "placeholders": { "price": { "content": "$1", @@ -1607,7 +1607,7 @@ "message": "Annuler l'abonnement" }, "subscriptionCanceled": { - "message": "Votre abonnement a été annulé." + "message": "L'abonnement a été annulé." }, "pendingCancellation": { "message": "Annulation en attente" @@ -1628,7 +1628,7 @@ "message": "Êtes-vous certain de vouloir annuler ? Vous perdrez l’accès à toutes les fonctionnalités de l’abonnement à la fin de ce cycle de facturation." }, "canceledSubscription": { - "message": "Votre abonnement a été annulé." + "message": "L'abonnement a été annulé." }, "neverExpires": { "message": "N'expire jamais" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Changer de moyen de paiement" }, - "charges": { - "message": "Frais", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Pas de frais." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Tous les frais apparaîtront sur votre relevé sous $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contacter le support client" }, - "contactSupportPaymentMethod": { - "message": "Si vous souhaitez changer ce moyen de paiement, contactez le support client." - }, "updatedPaymentMethod": { "message": "Moyen de paiement mise à jour." }, @@ -1759,7 +1778,7 @@ "message": "L'adresse e-mail de votre compte doit être vérifiée." }, "newOrganizationDesc": { - "message": "Les organisations permettent de partager des parties de votre coffre-fort avec d'autres personnes ainsi que de gérer des utilisateurs pour une entité spécifique comme une famille, une petite équipe ou une grande entreprise." + "message": "Les organisations permettent de partager des parties de votre coffre avec d'autres personnes ainsi que de gérer des utilisateurs pour une entité spécifique comme une famille, une petite équipe ou une grande entreprise." }, "generalInformation": { "message": "Informations générales" @@ -1777,16 +1796,16 @@ "message": "Nom de l'entreprise" }, "chooseYourPlan": { - "message": "Choisissez votre plan" + "message": "Choisissez votre offre" }, "users": { "message": "Utilisateurs" }, "userSeats": { - "message": "Nombre de sièges utilisateurs" + "message": "Licences utilisateur" }, "additionalUserSeats": { - "message": "Sièges d'utilisateurs supplémentaires" + "message": "Licences utilisateur supplémentaires" }, "userSeatsDesc": { "message": "Nombre de licences utilisateur" @@ -1986,7 +2005,7 @@ "message": "Ajouter un groupe" }, "editGroup": { - "message": "Éditer le groupe" + "message": "Modifier le groupe" }, "deleteGroupConfirmation": { "message": "Êtes-vous sûr de vouloir supprimer ce groupe?" @@ -2031,7 +2050,7 @@ "message": "Inviter un utilisateur" }, "inviteUserDesc": { - "message": "Invitez de nouveaux utilisateurs à votre organisation en entrant leur adresse e-mail de compte Bitwarden ci-dessous. S'ils n’ont pas déjà un compte Bitwarden, il leur sera demandé d'en créer un nouveau." + "message": "Invitez de nouveaux utilisateurs à votre organisation en entrant l'adresse e-mail de leur compte Bitwarden ci-dessous. S'ils n’ont pas déjà un compte Bitwarden, il leur sera demandé d'en créer un nouveau." }, "inviteMultipleEmailDesc": { "message": "Vous pouvez inviter jusqu'à $COUNT$ utilisateurs à la fois en séparant les adresses e-mail par une virgule.", @@ -2073,13 +2092,13 @@ "message": "Administrateur" }, "adminDesc": { - "message": " Les administrateurs peuvent voir et gérer tous les éléments, les collections et les utilisateurs de votre organisation." + "message": "Les administrateurs peuvent voir et gérer tous les éléments, les collections et les utilisateurs de votre organisation." }, "user": { "message": "Utilisateur" }, "userDesc": { - "message": "Un utilisateur normal avec accès aux collections de votre organisation." + "message": "Un utilisateur standard avec accès aux collections qui lui sont assignées dans votre organisation." }, "manager": { "message": "Gestionnaire" @@ -2325,7 +2344,7 @@ "message": "Type d'utilisateur" }, "groupAccess": { - "message": "Accès groupes" + "message": "Accès groupe" }, "groupAccessUserDesc": { "message": "Modifier les groupes auxquels appartient cet utilisateur." @@ -2364,7 +2383,7 @@ "message": "Confirmer les utilisateurs" }, "usersNeedConfirmed": { - "message": "Vous avez des utilisateurs qui ont accepté leur invitation mais ils doivent être confirmés. Les utilisateurs n'auront pas accès à l'organisation jusqu'à ce qu'ils soient confirmés." + "message": "Il y a des utilisateurs qui ont accepté leur invitation, mais qui doivent encore être confirmés. Les utilisateurs n'auront pas accès à l'organisation tant qu'ils n'auront pas été confirmés." }, "startDate": { "message": "Date de début" @@ -2406,7 +2425,7 @@ "message": "Invitation acceptée" }, "inviteAcceptedDesc": { - "message": "Vous pouvez accéder à cette organisation une fois qu’un administrateur aura confirmé votre adhésion. Nous vous enverrons un e-mail lorsque ce sera fait." + "message": "Vous pourrez accéder à cette organisation dès qu'un administrateur aura confirmé votre inscription. Nous vous enverrons un e-mail lorsque ce sera fait." }, "inviteAcceptFailed": { "message": "Impossible d’accepter l’invitation. Demandez à un administrateur de l'organisation d’envoyer une nouvelle invitation." @@ -2418,7 +2437,7 @@ "message": "Si vous ne pouvez pas accéder à votre compte grâce à vos méthodes de connexion en deux étapes habituelles, vous pouvez utiliser votre code de récupération de connexion en deux étapes pour désactiver tous les fournisseurs en deux étapes sur votre compte." }, "recoverAccountTwoStep": { - "message": "Récupérer votre compte d'authentification à deux étapes" + "message": "Récupération de connexion en deux étapes" }, "twoStepRecoverDisabled": { "message": "L'authentification en deux étapes a été désactivée sur votre compte." @@ -2442,7 +2461,7 @@ "message": "Supprimer l'organisation" }, "deleteOrganizationDesc": { - "message": "Poursuivez ci-dessous pour supprimer cette organisation ainsi que toutes les données associées. Les comptes des utilisateurs restent inchangés mais ils ne seront plus associés à cette organisation. " + "message": "Poursuivez ci-dessous pour supprimer cette organisation ainsi que toutes les données associées. Les comptes des utilisateurs individuels ne seront pas supprimés, mais ils ne seront plus associés à cette organisation. " }, "deleteOrganizationWarning": { "message": "La suppression d'une organisation est définitive. Elle ne peut être annulée." @@ -2474,8 +2493,21 @@ "message": "Contactez le support client si vous souhaitez changer d'offre. Veuillez vous assurer que vous disposez d’un moyen de paiement actif sur votre compte.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Facture" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Vérifier le compte bancaire" @@ -2525,14 +2557,14 @@ "message": "Individuel (personnel)" }, "enterInstallationId": { - "message": "Entrez votre id d’installation" + "message": "Saisissez l'identifiant de votre installation" }, "addSeats": { - "message": "Ajouter des sièges", + "message": "Ajouter des licences", "description": "Seat = User Seat" }, "removeSeats": { - "message": "Retirer les sièges", + "message": "Retirer des licences", "description": "Seat = User Seat" }, "subscriptionUserSeats": { @@ -2545,10 +2577,10 @@ } }, "seatsToAdd": { - "message": "Sièges à ajouter" + "message": "Licences à ajouter" }, "seatsToRemove": { - "message": "Sièges à enlever" + "message": "Licences à retirer" }, "seatsAddNote": { "message": "L'ajout de licences utilisateur entraînera des ajustements sur vos totaux de facturation et facturera immédiatement le moyen de paiement enregistré. La première facturation sera calculée au prorata du reste du cycle de facturation en cours." @@ -2593,13 +2625,13 @@ "message": "Mettre à niveau" }, "upgradeOrganization": { - "message": "Mettre à jour l'organisation" + "message": "Mettre à niveau l'organisation" }, "upgradeOrganizationDesc": { - "message": "Cette fonctionnalité n'est pas disponible pour les organisations gratuites. Passez à une offre payante pour déverouiller plus de fonctionnalités." + "message": "Cette fonctionnalité n'est pas disponible pour les organisations gratuites. Passez à une offre payante pour débloquer plus de fonctionnalités." }, "createOrganizationStep1": { - "message": "Créer une organisation: Étape 1" + "message": "Créer une organisation : Étape 1" }, "createOrganizationCreatePersonalAccount": { "message": "Avant de créer votre organisation, vous devez d’abord créer un compte personnel gratuit." diff --git a/locales/hr/messages.json b/locales/hr/messages.json index b216bf02..abe8cbba 100644 --- a/locales/hr/messages.json +++ b/locales/hr/messages.json @@ -10,7 +10,7 @@ } }, "whatTypeOfItem": { - "message": "What type of item is this?" + "message": "Koja je ovo vrsta stavke?" }, "name": { "message": "Ime" @@ -198,7 +198,7 @@ "description": "URI match detection for auto-fill." }, "defaultMatchDetection": { - "message": "Default match detection", + "message": "Zadano otkrivanje podudaranja", "description": "Default URI match detection for auto-fill." }, "never": { @@ -428,7 +428,7 @@ "message": "Odaberi datoteku." }, "maxFileSize": { - "message": "Maximum file size is 100 MB." + "message": "Maksimalna veličina datoteke je 100 MB." }, "updateKey": { "message": "You cannot use this feature until you update your encryption key." @@ -521,7 +521,7 @@ "message": "Vaše ime" }, "yourNameDesc": { - "message": "What should we call you?" + "message": "Kako da vas zovemo?" }, "masterPass": { "message": "Glavna lozinka" @@ -551,16 +551,16 @@ "message": "Enter your account email address to receive your master password hint." }, "getMasterPasswordHint": { - "message": "Get master password hint" + "message": "Dobijte podsjetnik za glavnu lozinku" }, "emailRequired": { - "message": "Email address is required." + "message": "Adresa e-pošte je obavezna." }, "invalidEmail": { - "message": "Invalid email address." + "message": "Nevažeća adresa e-pošte." }, "masterPassRequired": { - "message": "Master password is required." + "message": "Potrebna je glavna lozinka." }, "masterPassLength": { "message": "Master password must be at least 8 characters long." @@ -587,7 +587,7 @@ "message": "Otključaj" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Prijavljen kao $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -596,22 +596,22 @@ } }, "invalidMasterPassword": { - "message": "Invalid master password" + "message": "Nevažeća glavna lozinka" }, "lockNow": { "message": "Zaključaj sada" }, "noItemsInList": { - "message": "There are no items to list." + "message": "Nema stavki za prikaz." }, "noCollectionsInList": { "message": "There are no collections to list." }, "noGroupsInList": { - "message": "There are no groups to list." + "message": "Nema grupa za prikaz." }, "noUsersInList": { - "message": "There are no users to list." + "message": "Nema korisnika za prikaz." }, "noEventsInList": { "message": "There are no events to list." @@ -623,7 +623,7 @@ "message": "You do not belong to any organizations. Organizations allow you to securely share items with other users." }, "versionNumber": { - "message": "Version $VERSION_NUMBER$", + "message": "Verzija $VERSION_NUMBER$", "placeholders": { "version_number": { "content": "$1", @@ -857,7 +857,7 @@ "message": "Adresa e-pošte je promijenjena" }, "logBackIn": { - "message": "Please log back in." + "message": "Molimo prijavite se ponovno." }, "logBackInOthersToo": { "message": "Please log back in. If you are using other Bitwarden applications log out and back in to those as well." @@ -944,7 +944,7 @@ "message": "Purging your vault is permanent. It cannot be undone." }, "vaultPurged": { - "message": "Your vault has been purged." + "message": "Vaš trezor je očišćen." }, "deleteAccount": { "message": "Obriši račun" @@ -977,13 +977,13 @@ "message": "Data is not formatted correctly. Please check your import file and try again." }, "importNothingError": { - "message": "Nothing was imported." + "message": "Ništa nije uvezeno." }, "selectFormat": { "message": "Select the format of the import file" }, "selectImportFile": { - "message": "Select the import file" + "message": "Odaberite datoteke za uvoz" }, "orCopyPasteFileContents": { "message": "or copy\/paste the import file contents" @@ -1107,7 +1107,7 @@ "message": "A premium membership is required to use this feature." }, "youHavePremiumAccess": { - "message": "You have premium access" + "message": "Imate premium pristup" }, "alreadyPremiumFromOrg": { "message": "You already have access to premium features because of an organization you are a member of." @@ -1173,7 +1173,7 @@ "message": "Select the first empty YubiKey input field below." }, "twoFactorYubikeyTouchButton": { - "message": "Touch the YubiKey's button." + "message": "Dodirnite gumb na YubiKeyu." }, "twoFactorYubikeySaveForm": { "message": "Spremite obrazac." @@ -1254,7 +1254,7 @@ "message": "Read Key" }, "keyCompromised": { - "message": "Key is compromised." + "message": "Ključ je ugrožen." }, "twoFactorU2fGiveName": { "message": "Give the security key a friendly name to identify it." @@ -1366,7 +1366,7 @@ "message": "Check Exposed Passwords" }, "exposedXTimes": { - "message": "Exposed $COUNT$ time(s)", + "message": "Otkriveno $COUNT$ put(a)", "placeholders": { "count": { "content": "$1", @@ -1417,7 +1417,7 @@ "message": "No logins in your vault have passwords that are being reused." }, "reusedXTimes": { - "message": "Reused $COUNT$ times", + "message": "Ponovno korišteno $COUNT$ puta", "placeholders": { "count": { "content": "$1", @@ -1492,7 +1492,7 @@ "description": "Another way of saying \"Get a premium membership\"" }, "premiumUpdated": { - "message": "You've upgraded to premium." + "message": "Nadograđeni ste na premium." }, "premiumUpgradeUnlockFeatures": { "message": "Upgrade your account to a premium membership and unlock some great additional features." @@ -1510,13 +1510,13 @@ "message": "TOTP verification code (2FA) generator for logins in your vault." }, "premiumSignUpSupport": { - "message": "Priority customer support." + "message": "Prioritetna korisnička podrška." }, "premiumSignUpFuture": { "message": "All future premium features. More coming soon!" }, "premiumPrice": { - "message": "All for just $PRICE$ \/year!", + "message": "Sve samo za $PRICE$ \/godišnje!", "placeholders": { "price": { "content": "$1", @@ -1680,7 +1680,7 @@ "message": "Način plaćanja" }, "noPaymentMethod": { - "message": "No payment method on file." + "message": "Nema spremljenih načina plaćanja." }, "addPaymentMethod": { "message": "Add Payment Method" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Change Payment Method" }, - "charges": { - "message": "Naplate", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Nema naplata." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1726,13 +1748,10 @@ } }, "contactSupport": { - "message": "Contact Customer Support" - }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." + "message": "Kontaktirajte službu za korisnike" }, "updatedPaymentMethod": { - "message": "Updated payment method." + "message": "Ažuriran način plaćanja." }, "purchasePremium": { "message": "Purchase Premium" @@ -1842,7 +1861,7 @@ "message": "Besplatno zauvijek" }, "includesXUsers": { - "message": "includes $COUNT$ users", + "message": "uključuje $COUNT$ korisnika", "placeholders": { "count": { "content": "$1", @@ -1920,10 +1939,10 @@ "message": "Track user actions with audit logs" }, "enforce2faDuo": { - "message": "Enforce 2FA with Duo" + "message": "Provedite 2FA sa Duo" }, "priorityCustomerSupport": { - "message": "Priority customer support" + "message": "Prioritetna korisnička podrška" }, "xDayFreeTrial": { "message": "$COUNT$ day free trial, cancel anytime", @@ -2124,13 +2143,13 @@ "message": "Prijavljen." }, "changedPassword": { - "message": "Changed account password." + "message": "Promijenjena lozinka računa." }, "enabledUpdated2fa": { "message": "Enabled\/updated two-step login." }, "disabled2fa": { - "message": "Disabled two-step login." + "message": "Onemogućen pristup u dva koraka." }, "recovered2fa": { "message": "Recovered account from two-step login." @@ -2145,7 +2164,7 @@ "message": "Edited organization settings." }, "createdItemId": { - "message": "Created item $ID$.", + "message": "Stvorena stavka $ID$.", "placeholders": { "id": { "content": "$1", @@ -2163,7 +2182,7 @@ } }, "deletedItemId": { - "message": "Deleted item $ID$.", + "message": "Izbrisana stavka $ID$.", "placeholders": { "id": { "content": "$1", @@ -2181,7 +2200,7 @@ } }, "createdCollectionId": { - "message": "Created collection $ID$.", + "message": "Stvorena zbirka $ID$.", "placeholders": { "id": { "content": "$1", @@ -2190,7 +2209,7 @@ } }, "editedCollectionId": { - "message": "Edited collection $ID$.", + "message": "Uređena zbirka $ID$.", "placeholders": { "id": { "content": "$1", @@ -2199,7 +2218,7 @@ } }, "deletedCollectionId": { - "message": "Deleted collection $ID$.", + "message": "Izbrisana zbirka $ID$.", "placeholders": { "id": { "content": "$1", @@ -2208,7 +2227,7 @@ } }, "createdGroupId": { - "message": "Created group $ID$.", + "message": "Stvorena grupa $ID$.", "placeholders": { "id": { "content": "$1", @@ -2217,7 +2236,7 @@ } }, "editedGroupId": { - "message": "Edited group $ID$.", + "message": "Uređena grupa $ID$.", "placeholders": { "id": { "content": "$1", @@ -2226,7 +2245,7 @@ } }, "deletedGroupId": { - "message": "Deleted group $ID$.", + "message": "Izbrisana grupa $ID$.", "placeholders": { "id": { "content": "$1", @@ -2235,7 +2254,7 @@ } }, "removedUserId": { - "message": "Removed user $ID$.", + "message": "Uklonjen korisnik $ID$.", "placeholders": { "id": { "content": "$1", @@ -2271,7 +2290,7 @@ } }, "invitedUserId": { - "message": "Invited user $ID$.", + "message": "Pozvan korisnik $ID$.", "placeholders": { "id": { "content": "$1", @@ -2280,7 +2299,7 @@ } }, "confirmedUserId": { - "message": "Confirmed user $ID$.", + "message": "Potvrđen korisnik $ID$.", "placeholders": { "id": { "content": "$1", @@ -2313,10 +2332,10 @@ "message": "Prikaz" }, "invalidDateRange": { - "message": "Invalid date range." + "message": "Nevažeći raspon datuma." }, "errorOccurred": { - "message": "An error has occurred." + "message": "Došlo je do pogreške." }, "userAccess": { "message": "Korisnički pristup" @@ -2337,7 +2356,7 @@ "message": "Resend Invitation" }, "hasBeenReinvited": { - "message": "$USER$ has been reinvited.", + "message": "$USER$ je ponovno pozvan.", "placeholders": { "user": { "content": "$1", @@ -2352,7 +2371,7 @@ "message": "Potvrdi korisnika" }, "hasBeenConfirmed": { - "message": "$USER$ has been confirmed.", + "message": "$USER$ je potvrđen.", "placeholders": { "user": { "content": "$1", @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verify Bank Account" @@ -2674,7 +2706,7 @@ "message": "Vlasništvo" }, "whoOwnsThisItem": { - "message": "Who owns this item?" + "message": "Tko je vlasnik ove stavke?" }, "strong": { "message": "Jako", diff --git a/locales/hu/messages.json b/locales/hu/messages.json index 1758cc08..41828969 100644 --- a/locales/hu/messages.json +++ b/locales/hu/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Change Payment Method" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contact Customer Support" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "Updated payment method." }, @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Invoice" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verify Bank Account" diff --git a/locales/it/messages.json b/locales/it/messages.json index 1fbe8264..2688ebe4 100644 --- a/locales/it/messages.json +++ b/locales/it/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Cambia il metodo di pagamento" }, - "charges": { - "message": "Costi", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Nessun costo." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Eventuali addebiti appariranno sul tuo estratto conto come $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contattare il supporto clienti" }, - "contactSupportPaymentMethod": { - "message": "Se si desidera modificare questo metodo di pagamento si prega di contattare il servizio clienti." - }, "updatedPaymentMethod": { "message": "Metodo di pagamento aggiornato." }, @@ -2474,8 +2493,21 @@ "message": "Contattare il servizio clienti se si desidera modificare il proprio piano tariffario. Assicurarsi di avere un metodo di pagamento attivo.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Fattura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verifica conto bancario" diff --git a/locales/ja/messages.json b/locales/ja/messages.json index cc3a918a..bf5c24d4 100644 --- a/locales/ja/messages.json +++ b/locales/ja/messages.json @@ -587,7 +587,7 @@ "message": "ロック解除" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "$EMAIL$ としてログインしました", "placeholders": { "email": { "content": "$1", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "お支払い方法の変更" }, - "charges": { - "message": "料金", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "料金はかかりません。" + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "料金は$STATEMENT_NAME$と明細に表示されます。", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "カスタマーサポートに連絡" }, - "contactSupportPaymentMethod": { - "message": "現在のお支払い方法から変更を希望される場合、カスタマーサポートまでお問い合わせください。" - }, "updatedPaymentMethod": { "message": "お支払い方法を更新しました。" }, @@ -2474,8 +2493,21 @@ "message": "契約プランを変更したい場合はサポートまでご連絡ください。アカウントに有効なお支払い方法が登録されていることをご確認ください。", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "請求書" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "銀行口座の認証" diff --git a/locales/ko/messages.json b/locales/ko/messages.json index bcf4ef6a..7d48c3be 100644 --- a/locales/ko/messages.json +++ b/locales/ko/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "결제 수단 변경" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contact Customer Support" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "Updated payment method." }, @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Invoice" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verify Bank Account" diff --git a/locales/nb/messages.json b/locales/nb/messages.json index 033050d8..95b0c2b2 100644 --- a/locales/nb/messages.json +++ b/locales/nb/messages.json @@ -587,7 +587,7 @@ "message": "Lås opp" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Logget på som $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Endre betalingsmetoden" }, - "charges": { - "message": "Trekk", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Ingen trekk." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Ethvert trekk vil dukke opp i bankkontooppsummeringen din som $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Ta kontakt med kundestøtte" }, - "contactSupportPaymentMethod": { - "message": "Hvis du vil ta trekk ifra denne betalingsmetoden, vennligst kontakt kundestøtte." - }, "updatedPaymentMethod": { "message": "Oppdaterte betalingsmetoden." }, @@ -2474,8 +2493,21 @@ "message": "Kontakt kundestøtte dersom du vil endre funksjonsplanen din. Vennligst sørg for at du har en aktiv betalingsmetode lagt til i kontoen din.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Bekreft bankkontoen din" diff --git a/locales/nl/messages.json b/locales/nl/messages.json index 4fee97fc..b05201fc 100644 --- a/locales/nl/messages.json +++ b/locales/nl/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Betalingsmethode wijzigen" }, - "charges": { - "message": "Kosten", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Geen kosten." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Eventuele kosten zullen op uw afschrift worden weergegeven als $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Neem contact op met de klantenservice" }, - "contactSupportPaymentMethod": { - "message": "Neem contact op met de klantenservice als u deze betaalmethode wilt wijzigen." - }, "updatedPaymentMethod": { "message": "Betalingsmethode bijgewerkt." }, @@ -2474,8 +2493,21 @@ "message": "Neem contact op met de klantenservice als u uw pakket wilt wijzigen. Zorg ervoor dat u een actieve betaalmethode aan het account hebt toegevoegd.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Factuur" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verifieer bankrekening" diff --git a/locales/pl/messages.json b/locales/pl/messages.json index 2b1b3cf1..44a8ddc8 100644 --- a/locales/pl/messages.json +++ b/locales/pl/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Zmień metodę płatności" }, - "charges": { - "message": "Opłaty", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Brak opłat." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Wszelkie opłaty będą widoczne na wyciągu jako $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Skontaktuj się z działem obsługi klienta" }, - "contactSupportPaymentMethod": { - "message": "Skontaktuj się z działem obsługi klienta, jeśli chcesz zmienić tę metodę płatności." - }, "updatedPaymentMethod": { "message": "Metoda płatności została zaktualizowana." }, @@ -2474,8 +2493,21 @@ "message": "Jeśli chcesz zmienić swój plan, skontaktuj się z działem obsługi klienta. Upewnij się, że dodałeś do swojego konta aktywną formę płatności.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Weryfikuj konto bankowe" diff --git a/locales/pt_BR/messages.json b/locales/pt_BR/messages.json index 0d027ec8..d1f9f28c 100644 --- a/locales/pt_BR/messages.json +++ b/locales/pt_BR/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Alterar Forma de Pagamento" }, - "charges": { - "message": "Cobranças", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Nenhuma cobrança." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Quaisquer cobranças aparecerão no seu extrato como $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contato com o Suporte ao Cliente" }, - "contactSupportPaymentMethod": { - "message": "Se você quiser alterar este método de pagamento, entre em contato com o suporte ao cliente." - }, "updatedPaymentMethod": { "message": "Atualizar forma de pagamento." }, @@ -2474,8 +2493,21 @@ "message": "Entre em contato com o suporte ao cliente se deseja alterar o seu plano. Por favor, verifique se você tem um método de pagamento ativo adicionado à conta.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Fatura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verificar Conta Bancária" diff --git a/locales/pt_PT/messages.json b/locales/pt_PT/messages.json index a23ab127..8145ff2c 100644 --- a/locales/pt_PT/messages.json +++ b/locales/pt_PT/messages.json @@ -47,7 +47,7 @@ "message": "Campos personalizados" }, "cardholderName": { - "message": "Titular do Cartão" + "message": "Titular do cartão" }, "number": { "message": "Número" @@ -174,7 +174,7 @@ "message": "Adicionar pasta" }, "editFolder": { - "message": "Alterar pasta" + "message": "Editar pasta" }, "baseDomain": { "message": "Domínio base" @@ -248,16 +248,16 @@ "message": "Favorito" }, "unfavorite": { - "message": "Remover de favoritos" + "message": "Remover dos favoritos" }, "edit": { "message": "Editar" }, "searchCollection": { - "message": "Pesquisar Coleção" + "message": "Pesquisar coleção" }, "searchFolder": { - "message": "Pesquisar Pasta" + "message": "Pesquisar pasta" }, "searchFavorites": { "message": "Pesquisar favoritos" @@ -297,13 +297,13 @@ "message": "Coleções" }, "firstName": { - "message": "Nome Próprio" + "message": "Primeiro nome" }, "middleName": { - "message": "Segundo Nome" + "message": "Nome do meio" }, "lastName": { - "message": "Apelido" + "message": "Último nome" }, "address1": { "message": "Endereço 1" @@ -339,7 +339,7 @@ "message": "Adicionar item" }, "editItem": { - "message": "Alterar item" + "message": "Editar item" }, "ex": { "message": "ex.", @@ -772,7 +772,7 @@ } }, "verificationCodeTotp": { - "message": "Código de Verificação (TOTP)" + "message": "Código de verificação (TOTP)" }, "copyVerificationCode": { "message": "Copiar código de confirmação" @@ -938,7 +938,7 @@ "message": "Proceda abaixo para eliminar todos os itens e pastas do seu cofre. Itens que pertençam a uma organização que partilhe não serão eliminados." }, "purgeOrgVaultDesc": { - "message": "Proceda abaixo para apagar todos os itens no cofre da organização." + "message": "Proceda abaixo para eliminar todos os itens no cofre da organização." }, "purgeVaultWarning": { "message": "Purgar o seu cofre é permanente. Não pode ser desfeito." @@ -1078,7 +1078,7 @@ "message": "Requeira início de sessão de dois passos para os utilizadores da sua organização ao configurar os provedores ao nível da organização." }, "twoStepLoginRecoveryWarning": { - "message": "Ativar o início de sessão de dois passos pode bloquear-lhe permanentemente o acesso à sua conta Bitwarden. Um código de recuperação permite-lhe aceder à sua conta caso já não possa utilizar o seu provedor normal de início de sessão de dois passos (ex. perde o seu dispositivo). O apoio do Bitwarden não o poderá ajudar se perder acesso à sua conta. Recomendamos que anote ou imprima o código de recuperação e mantenha-o em local seguro." + "message": "Ativar o início de sessão de dois passos pode bloquear-lhe permanentemente o acesso à sua conta Bitwarden. Um código de recuperação permite-lhe aceder à sua conta caso já não possa utilizar o seu provedor normal de início de sessão de dois passos (ex. perde o seu dispositivo). O apoio do Bitwarden não irá poder assistir-lhe se perder acesso à sua conta. Recomendamos que anote ou imprima o código de recuperação e o mantenha num local seguro." }, "viewRecoveryCode": { "message": "Ver código de recuperação" @@ -1661,7 +1661,7 @@ "message": "Adicionar armazenamento" }, "removeStorage": { - "message": "Eliminar armazenamento" + "message": "Remover Armazenamento" }, "subscriptionStorage": { "message": "A sua subscrição tem um total de $MAX_STORAGE$ GB de armazenamento de ficheiros encriptado. Está a utilizar atualmente $USED_STORAGE$.", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Alterar método de pagamento" }, - "charges": { - "message": "Cobranças", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Sem cobranças." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Quaisquer cobranças aparecerão no seu extrato como $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contacte o apoio ao cliente" }, - "contactSupportPaymentMethod": { - "message": "Se gostaria de alterar este método de pagamento por favor contacte o apoio ao cliente." - }, "updatedPaymentMethod": { "message": "Método de pagamento atualizado." }, @@ -1741,7 +1760,7 @@ "message": "Ficheiro de licença" }, "licenseFileDesc": { - "message": "O ficheiro da sua licença chamar-se-á algo como $FILE_NAME$", + "message": "O seu ficheiro de licença irá ser chamado algo como $FILE_NAME$", "placeholders": { "file_name": { "content": "$1", @@ -1986,7 +2005,7 @@ "message": "Adicionar grupo" }, "editGroup": { - "message": "Alterar grupo" + "message": "Editar grupo" }, "deleteGroupConfirmation": { "message": "Tem certeza que pretende eliminar este grupo?" @@ -1995,7 +2014,7 @@ "message": "Tem a certeza de que pretende remover este utilizador?" }, "externalId": { - "message": "Id externa" + "message": "Id externo" }, "externalIdGroupDesc": { "message": "O id externo é utilizado para ligar este grupo a um sistema externo como um diretório de utilizadores." @@ -2019,7 +2038,7 @@ "message": "Adicionar coleção" }, "editCollection": { - "message": "Alterar coleção" + "message": "Editar coleção" }, "deleteCollectionConfirmation": { "message": "Tem a certeza de que pretende eliminar esta coleção?" @@ -2445,7 +2464,7 @@ "message": "Proceda abaixo para eliminar esta organização e todos os dados associados. Contas de utilizadores individuais serão mantidas, embora já não estarão associadas a esta organização. " }, "deleteOrganizationWarning": { - "message": "Eliminar a organização é permanente. Não pode ser desfeito." + "message": "A eliminação da organização é permanente. Não pode ser desfeita." }, "organizationDeleted": { "message": "Organização eliminada" @@ -2474,11 +2493,24 @@ "message": "Contacte o apoio ao cliente se gostaria de alterar o seu plano. Por favor certifique-se de que tem um método de pagamento ativo adicionado à conta.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Fatura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { - "message": "Confirmar conta bancária" + "message": "Verificar conta nancária" }, "verifyBankAccountDesc": { "message": "Fizemos dois micro-depósitos na sua conta bancária (pode demorar 1-2 dias úteis a aparecer). Introduza estas quantias para verificar a conta bancária." diff --git a/locales/ru/messages.json b/locales/ru/messages.json index 6655e117..5b955732 100644 --- a/locales/ru/messages.json +++ b/locales/ru/messages.json @@ -140,7 +140,7 @@ "message": "Год" }, "authenticatorKeyTotp": { - "message": "Ключ проверки подлинности (TOTP)" + "message": "Ключ аутентификатора (TOTP)" }, "folder": { "message": "Папка" @@ -491,7 +491,7 @@ "message": "Вы действительно хотите выйти?" }, "logOut": { - "message": "Выход" + "message": "Выйти" }, "ok": { "message": "Ok" @@ -503,7 +503,7 @@ "message": "Нет" }, "loginOrCreateNewAccount": { - "message": "Войдите или создайте новый аккаунт для доступа к вашему безопасному хранилищу." + "message": "Войдите или создайте новый аккаунт для доступа к вашему защищенному хранилищу." }, "createAccount": { "message": "Создать аккаунт" @@ -587,7 +587,7 @@ "message": "Разблокировать" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Вы вошли как $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -728,10 +728,10 @@ "message": "Организации" }, "shareDesc": { - "message": "Выберите организацию, которой вы хотите предоставить доступ к этому элементу. Совместное использование передает права на элемент организации. Вы больше не будете являться непосредственным владельцем этого элемента после его совместного использования." + "message": "Выберите организацию, которой вы хотите предоставить доступ к этому элементу. После выполнения этой операции права на элемент будут переданы организации и вы не будете являться непосредственным владельцем этого элемента." }, "shareManyDesc": { - "message": "Выберите организацию, которой вы хотите предоставить доступ к этим элементам. Совместное использование передает права на элементы организации. Вы больше не будете являться непосредственным владельцем этих элементов после их совместного использования." + "message": "Выберите организацию, которой вы хотите предоставить доступ к этим элементам. После выполнения этой операции права на элементы будут переданы организации и вы не будете являться непосредственным владельцем этих элементов." }, "collectionsDesc": { "message": "Отредактируйте коллекции, с которыми совместно используется этот элемент. Только пользователи организации, имеющие доступ к этим коллекциям, смогут видеть этот элемент." @@ -842,7 +842,7 @@ "message": "Код" }, "changeEmailDesc": { - "message": "We have emailed a verification code to $EMAIL$. Please check your email for this code and enter it below to finalize your the email address change.", + "message": "Мы отправили код подтверждения на $EMAIL$. Проверьте свою почту и введите код из письма ниже, чтобы завершить изменение адреса электронной почты.", "placeholders": { "email": { "content": "$1", @@ -920,7 +920,7 @@ "message": "Деавторизовать сессии" }, "deauthorizeSessionsDesc": { - "message": "Беспокоитесь о том, что ваша учетная запись авторизована на другом устройстве? Чтобы деавторизовать все ранее использовавшиеся компьютеры или устройства, выполните действие ниже. Этот шаг безопасности рекомендуется, если вы ранее использовали общедоступный компьютер или случайно сохранили свой пароль на устройстве, которое вам не принадлежит. Это действие также очистит все ранее сохраненные сессии двухфакторного входа." + "message": "Беспокоитесь о том, что ваша учетная запись авторизована на другом устройстве? Чтобы деавторизовать все ранее использовавшиеся компьютеры или устройства, выполните действие ниже. Этот шаг безопасности рекомендуется, если вы ранее использовали общедоступный компьютер или случайно сохранили свой пароль на устройстве, которое вам не принадлежит. Это действие также очистит все ранее сохраненные сессии двухфакторной аутентификации." }, "deauthorizeSessionsWarning": { "message": "В случае продолжения, ваша сессия будет завершена и вам будет предложено авторизоваться повторно. При активированной двухфакторной аутентификации вам потребуется ввести код. Сессии на других устройствах могут оставаться активными в течение одного часа." @@ -1098,10 +1098,10 @@ "description": "Premium Membership" }, "premiumMembership": { - "message": "Премиум-статус" + "message": "Премиум" }, "premiumRequired": { - "message": "Необходим Премиум-статус" + "message": "Необходим Премиум" }, "premiumRequiredDesc": { "message": "Для использования этой функции требуется Премиум." @@ -1143,7 +1143,7 @@ "message": "Устройства Windows" }, "twoStepAuthenticatorAppsRecommended": { - "message": "Эти приложения рекомендуется, однако, другие приложения-аутентификаторы также будут работать." + "message": "Эти приложения рекомендуются, однако, другие приложения-аутентификаторы также будут работать." }, "twoStepAuthenticatorScanCode": { "message": "Сосканируйте этот QR-код вашим приложением-аутентификатором" @@ -1251,7 +1251,7 @@ "message": "Вы действительно хотите удалить этот ключ безопасности?" }, "readKey": { - "message": "Чтение ключа" + "message": "Читать ключ" }, "keyCompromised": { "message": "Ключ скомпрометирован." @@ -1260,7 +1260,7 @@ "message": "Присвойте ключу безопасности понятное имя для его идентификации." }, "twoFactorU2fPlugInReadKey": { - "message": "Подключите ключ безопасности к USB-порту компьютера и нажмите кнопку 'Чтение ключа'." + "message": "Подключите ключ безопасности к USB-порту компьютера и нажмите кнопку 'Читать ключ'." }, "twoFactorU2fTouchButton": { "message": "Если у ключа безопасности есть кнопка, нажмите ее." @@ -1315,7 +1315,7 @@ } }, "noUnsecuredWebsites": { - "message": "В вашем хранилище нет элементов с незащищеннми URI." + "message": "В вашем хранилище нет элементов с незащищенными URI." }, "inactive2faReport": { "message": "Отчет о неактивной 2ФА" @@ -1363,7 +1363,7 @@ "message": "В вашем хранилище нет скомпрометированных паролей." }, "checkExposedPasswords": { - "message": "Проверьте скомпрометированные пароли" + "message": "Проверить скомпрометированные пароли" }, "exposedXTimes": { "message": "Скомпрометирован $COUNT$ раз(а)", @@ -1426,7 +1426,7 @@ } }, "dataBreachReport": { - "message": "Отчет о данных утечек" + "message": "Отчет об утечке данных" }, "breachDesc": { "message": "Утечка - это инцидент, при котором данные сайта стали незаконно доступны хакерам и впоследствии опубликованы. Проверьте типы данных, которые были скомпрометированы (адреса email, пароли, кредитные карты и т. д.) и примите соответствующие меры, такие как изменение паролей." @@ -1473,7 +1473,7 @@ "message": "Веб-сайт" }, "affectedUsers": { - "message": "Затронутые пользователи" + "message": "Затронутых пользователей" }, "breachOccurred": { "message": "Произошла утечка" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Изменить способ оплаты" }, - "charges": { - "message": "Платежи", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Нет платежей." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Любые платежи появятся в вашей выписке как $STATEMENT_NAME$.", @@ -1728,20 +1750,17 @@ "contactSupport": { "message": "Обратиться в службу поддержки" }, - "contactSupportPaymentMethod": { - "message": "Если вы хотите изменить этот способ оплаты, обратитесь в службу поддержки." - }, "updatedPaymentMethod": { "message": "Обновленный способ оплаты." }, "purchasePremium": { - "message": "Купить премиум" + "message": "Купить Премиум" }, "licenseFile": { "message": "Файл лицензии" }, "licenseFileDesc": { - "message": "Имя файла лицензии будет похоже на $FILE_NAME$", + "message": "Ваш файл лицензии будет иметь имя $FILE_NAME$", "placeholders": { "file_name": { "content": "$1", @@ -1750,7 +1769,7 @@ } }, "uploadLicenseFilePremium": { - "message": "Чтобы обновить свою учетную запись до Премиум-статуса, вам необходимо загрузить действительный файл лицензии." + "message": "Для обновления своей учетной записи до Премиум, необходимо загрузить действительный файл лицензии." }, "uploadLicenseFileOrg": { "message": "Для создания организации размещенной на локальном хостинге, необходимо загрузить действительный файл лицензии." @@ -1759,7 +1778,7 @@ "message": "Адрес email вашей учетной записи должен быть подтвержден." }, "newOrganizationDesc": { - "message": "Организации позволяют совместно использовать части своего хранилища с другими, а также управлять связанными пользователями для определенного объекта, такого как семья, небольшая команда или крупная компания." + "message": "Организации позволяют делиться частями вашего хранилища с другими, а также управлять связанными пользователями для определенных организаций, таких как семья, небольшая команда или крупная компания." }, "generalInformation": { "message": "Общая информация" @@ -1812,7 +1831,7 @@ "description": "Free as in 'free beer'." }, "planDescFree": { - "message": "Для тестирования или персонального использования с возможностью поделиться с $COUNT$ пользователем.", + "message": "Для тестирования или персонального использования с возможностью поделиться с $COUNT$ других пользователей.", "placeholders": { "count": { "content": "$1", @@ -1998,7 +2017,7 @@ "message": "Внешний ID" }, "externalIdGroupDesc": { - "message": "Внешний идентификатор используется для привязки этой группы к внешней системе, такой как каталог пользователя." + "message": "Внешний идентификатор используется для связи этой группы к внешней системе, такой как каталог пользователя." }, "accessControl": { "message": "Контроль доступа" @@ -2031,7 +2050,7 @@ "message": "Пригласить пользователя" }, "inviteUserDesc": { - "message": "Пригласите нового пользователя в свою организацию, введя адрес email его учетной записи Bitwarden ниже. Если у него пока нет учетной записи Bitwarden, то будет предложено ее создать." + "message": "Пригласите нового пользователя в свою организацию, введя адрес email его учетной записи Bitwarden ниже. Если у него пока нет учетной записи Bitwarden, ему будет предложено ее создать." }, "inviteMultipleEmailDesc": { "message": "Вы можете пригласить до $COUNT$ пользователей одновременно, разделяя адреса email запятыми.", @@ -2073,7 +2092,7 @@ "message": "Администратор" }, "adminDesc": { - "message": " Администраторы могут получать доступ и управлять всеми элементами, коллекциями и пользователями в вашей организации." + "message": "Администраторы могут получать доступ и управлять всеми элементами, коллекциями и пользователями вашей организации." }, "user": { "message": "Пользователь" @@ -2445,7 +2464,7 @@ "message": "Выполните следующие действия, чтобы удалить эту организацию и все связанные с ней данные. Индивидуальные учетные записи пользователей останутся, но они больше не будут связаны с этой организацией. " }, "deleteOrganizationWarning": { - "message": "Удаление организации необратимо. Его нельзя отменить." + "message": "Удаление организации необратимо. Действие нельзя отменить." }, "organizationDeleted": { "message": "Организация удалена" @@ -2474,8 +2493,21 @@ "message": "Если вы хотите изменить свой план, обратитесь в службу поддержки. Убедитесь, что у вас есть активный способ оплаты, добавленный в учетную запись.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Счет" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Подтвердить банковский счет" @@ -2581,7 +2613,7 @@ "message": "Мы перешли на более сложные ключи шифрования, которые обеспечивают лучшую безопасность и доступ к новым возможностям. Обновление ключа шифрования происходит быстро и легко. Просто введите свой мастер-пароль ниже. Это обновление в конечном итоге станет обязательным." }, "updateEncryptionKeyWarning": { - "message": "После обновления ключа шифрования необходимо выполнить выход во всех приложениях Bitwarden, которые вы используете (например, мобильное приложение или расширение браузера). Невыполнение этого требования может привести к повреждению данных (при этом загружается ваш новый ключ шифрования). Мы попытаемся автоматически осуществить завершение вашей сессии, однако это может произойти с задержкой." + "message": "После обновления ключа шифрования необходимо выполнить выход во всех приложениях Bitwarden, которые вы используете (например, мобильное приложение или расширение браузера). Невыполнение этого требования может привести к повреждению данных (так как при этом загружается ваш новый ключ шифрования). Мы попытаемся автоматически осуществить завершение ваших сессий, однако это может произойти с задержкой." }, "subscription": { "message": "Подписка" @@ -2593,7 +2625,7 @@ "message": "Обновить" }, "upgradeOrganization": { - "message": "Обновление организации" + "message": "Обновить организацию" }, "upgradeOrganizationDesc": { "message": "Эта функция недоступна для бесплатных организаций. Переключитесь на платный план, чтобы разблокировать дополнительные возможности." diff --git a/locales/sk/messages.json b/locales/sk/messages.json index a7edcb50..b69a48a8 100644 --- a/locales/sk/messages.json +++ b/locales/sk/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Zmeniť spôsob platby" }, - "charges": { - "message": "Poplatky", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Žiadne poplatky." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Platby s objavia na výpise z banky ako $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Kontaktujte zákaznícku podporu" }, - "contactSupportPaymentMethod": { - "message": "Ak chcete zmeniť platobnú metódu, prosím kontaktujte zákaznícku podporu." - }, "updatedPaymentMethod": { "message": "Aktualizovať spôsob platby." }, @@ -2474,8 +2493,21 @@ "message": "Ak by ste chceli zmeniť svoj plán, obráťte sa na zákaznícku podporu. Uistite sa prosím, že máte aktívnu platobnú metódu nastavenú pre tento účet.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktúra" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Overenie bankového účtu" diff --git a/locales/sv/messages.json b/locales/sv/messages.json index 47db631a..a8ecd2e1 100644 --- a/locales/sv/messages.json +++ b/locales/sv/messages.json @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Ändra betalningssätt" }, - "charges": { - "message": "Kostnader", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Inga kostnader." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Kontakta kundsupport" }, - "contactSupportPaymentMethod": { - "message": "Om du vill ändra från detta betalningssätt vänligen kontakta kundsupport." - }, "updatedPaymentMethod": { "message": "Uppdaterade betalningssätt." }, @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Faktura" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verifiera bankkonto" diff --git a/locales/tr/messages.json b/locales/tr/messages.json index 6f2b685c..47ee9be3 100644 --- a/locales/tr/messages.json +++ b/locales/tr/messages.json @@ -497,13 +497,13 @@ "message": "Ok" }, "yes": { - "message": "Yes" + "message": "Evet" }, "no": { - "message": "No" + "message": "Hayır" }, "loginOrCreateNewAccount": { - "message": "Log in or create a new account to access your secure vault." + "message": "Güvenli kasanıza ulaşmak için giriş yapın veya yeni bir hesap oluşturun." }, "createAccount": { "message": "Create Account" @@ -512,7 +512,7 @@ "message": "Log In" }, "submit": { - "message": "Submit" + "message": "Gönder" }, "emailAddressDesc": { "message": "You'll use your email address to log in." @@ -542,7 +542,7 @@ "message": "Master Password Hint" }, "settings": { - "message": "Settings" + "message": "Ayarlar" }, "passwordHint": { "message": "Password Hint" @@ -584,10 +584,10 @@ "message": "Your vault is locked. Verify your master password to continue." }, "unlock": { - "message": "Unlock" + "message": "Kilidi Aç" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "$EMAIL$ olarak giriş yaptınız.", "placeholders": { "email": { "content": "$1", @@ -596,7 +596,7 @@ } }, "invalidMasterPassword": { - "message": "Invalid master password" + "message": "Geçersiz ana parola" }, "lockNow": { "message": "Lock Now" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Change Payment Method" }, - "charges": { - "message": "Charges", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "No charges." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Contact Customer Support" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "Updated payment method." }, @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Invoice" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Verify Bank Account" diff --git a/locales/uk/messages.json b/locales/uk/messages.json index c80237a5..92f1c792 100644 --- a/locales/uk/messages.json +++ b/locales/uk/messages.json @@ -342,7 +342,7 @@ "message": "Змінити запис" }, "ex": { - "message": "н-д.", + "message": "зразок", "description": "Short abbreviation for 'example'." }, "other": { @@ -587,7 +587,7 @@ "message": "Розблокувати" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "Ви увійшли як $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -836,13 +836,13 @@ "message": "Змінити адресу е-пошти" }, "newEmail": { - "message": "Нова адреса ел. пошти" + "message": "Нова адреса е-пошти" }, "code": { "message": "Код" }, "changeEmailDesc": { - "message": "We have emailed a verification code to $EMAIL$. Please check your email for this code and enter it below to finalize your the email address change.", + "message": "Ми надіслали код підтвердження на $EMAIL$. Знайдіть цей код в отриманому листі та введіть його внизу, щоб завершити зміну адреси електронної пошти.", "placeholders": { "email": { "content": "$1", @@ -920,7 +920,7 @@ "message": "Закрити сеанси" }, "deauthorizeSessionsDesc": { - "message": "Concerned your account is logged in on another device? Proceed below to deauthorize all computers or devices that you have previously used. This security step is recommended if you previously used a public PC or accidentally saved your password on a device that isn't yours. This step will also clear all previously remembered two-step login sessions." + "message": "Хвилюєтесь про те, чи не виконано вхід на іншому пристрої? Перейдіть нижче, щоб закрити сеанси на всіх комп'ютерах чи інших пристроях, які ви раніше використовували. Рекомендовано використовувати цей крок, якщо ви раніше користувалися загальнодоступними комп'ютерами, або іншими чужими пристроями, на яких міг зберегтися ваш пароль входу. Ця дія також зітре всі попередньо збережені сеанси двохетапної перевірки." }, "deauthorizeSessionsWarning": { "message": "Продовжуючи, ви також вийдете з поточного сеансу і необхідно буде виконати вхід знову. Ви також отримаєте повторний запит двохетапної перевірки, якщо вона увімкнена. Активні сеанси на інших пристроях можуть залишатися активними протягом години." @@ -1473,7 +1473,7 @@ "message": "Веб-сайт" }, "affectedUsers": { - "message": "Постраждалі користувачі" + "message": "Впливає на користувачів" }, "breachOccurred": { "message": "Стався витік даних" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "Змінити спосіб оплати" }, - "charges": { - "message": "Оплати", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "Немає оплат." + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Будь-які оплати з'являтимуться у вашому рахунку як $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "Зв'язатися зі службою підтримки клієнтів" }, - "contactSupportPaymentMethod": { - "message": "Якщо ви бажаєте змінити спосіб оплати, будь ласка, зв'яжіться зі службою підтримки клієнтів." - }, "updatedPaymentMethod": { "message": "Спосіб оплати оновлено." }, @@ -2474,8 +2493,21 @@ "message": "Зв'яжіться зі службою підтримки клієнтів, якщо ви бажаєте змінити свій тарифний план. Будь ласка, переконайтеся, що у вас є активний спосіб оплати доданий до облікового запису.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "Рахунок" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "Підтвердьте банківський рахунок" diff --git a/locales/zh_CN/messages.json b/locales/zh_CN/messages.json index 6dbeede8..93e96fd6 100644 --- a/locales/zh_CN/messages.json +++ b/locales/zh_CN/messages.json @@ -587,7 +587,7 @@ "message": "解锁​​​​" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "已登录为 $EMAIL$。", "placeholders": { "email": { "content": "$1", @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "更改支付方式" }, - "charges": { - "message": "收费", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "无费用" + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "任何费用将在您的对账单上以 $STATEMENT_NAME$ 显示。", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "联系客户支持" }, - "contactSupportPaymentMethod": { - "message": "如果您要更改该支付方式,请联系客户支持。" - }, "updatedPaymentMethod": { "message": "已更新支付方式" }, @@ -2474,8 +2493,21 @@ "message": "如果您想更改计划,请联系技术支持。请确保您已添加了有效的支付方式。", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "收据" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "验证银行帐户" diff --git a/locales/zh_TW/messages.json b/locales/zh_TW/messages.json index c620b0a3..ab25ef22 100644 --- a/locales/zh_TW/messages.json +++ b/locales/zh_TW/messages.json @@ -38,7 +38,7 @@ "message": "密碼" }, "passphrase": { - "message": "密碼" + "message": "密碼短語" }, "notes": { "message": "筆記" @@ -59,7 +59,7 @@ "message": "到期" }, "securityCode": { - "message": "安全碼 (CVV)" + "message": "安全代碼 (CVV)" }, "identityName": { "message": "身分名稱" @@ -184,7 +184,7 @@ "description": "A URL's host value. For example, the host of https:\/\/sub.domain.com:443 is 'sub.domain.com:443'." }, "exact": { - "message": "完全符合" + "message": "完全相符" }, "startsWith": { "message": "開始於" @@ -194,11 +194,11 @@ "description": "A programming term, also known as 'RegEx'." }, "matchDetection": { - "message": "相符偵測", + "message": "一致性偵測", "description": "URI match detection for auto-fill." }, "defaultMatchDetection": { - "message": "預設相符偵測", + "message": "預設一致性偵測", "description": "Default URI match detection for auto-fill." }, "never": { @@ -248,7 +248,7 @@ "message": "我的最愛" }, "unfavorite": { - "message": "取消收藏" + "message": "取消最愛" }, "edit": { "message": "編輯" @@ -386,7 +386,7 @@ "description": "Copy URI to clipboard" }, "myVault": { - "message": "密碼庫" + "message": "我的密碼庫" }, "vault": { "message": "密碼庫" @@ -494,7 +494,7 @@ "message": "登出" }, "ok": { - "message": "好" + "message": "確定" }, "yes": { "message": "是" @@ -503,10 +503,10 @@ "message": "否" }, "loginOrCreateNewAccount": { - "message": "登入或新增帳戶。" + "message": "登入或建立帳戶。" }, "createAccount": { - "message": "新增帳戶" + "message": "建立帳戶" }, "logIn": { "message": "登入" @@ -566,7 +566,7 @@ "message": "主密碼需要至少 8 個字元。" }, "masterPassDoesntMatch": { - "message": "兩次填寫的主密碼不相符。" + "message": "兩次填入的主密碼不一致。" }, "newAccountCreated": { "message": "帳戶已建立!現在可以登入了。" @@ -587,7 +587,7 @@ "message": "解鎖" }, "loggedInAsEmail": { - "message": "Logged in as $EMAIL$.", + "message": "已登入為 $EMAIL$", "placeholders": { "email": { "content": "$1", @@ -665,7 +665,7 @@ "message": "將您的 YubiKey 插入電腦的 USB 連接埠,然後按一下它的按鈕。" }, "insertU2f": { - "message": "將您的安全鑰匙插入電腦的 USB 連接埠,然後按一下它的按鈕(如有的話)。" + "message": "將您的安全金鑰插入電腦的 USB 連接埠,然後按一下它的按鈕(如有的話)。" }, "loginUnavailable": { "message": "無法登入" @@ -693,24 +693,24 @@ "description": "'Authy' and 'Google Authenticator' are product names and should not be translated." }, "yubiKeyTitle": { - "message": "YubiKey OTP 安全鑰匙" + "message": "YubiKey OTP 安全金鑰" }, "yubiKeyDesc": { "message": "使用 YubiKey 存取您的帳戶。相容於 YubiKey 4, 4 Nano, 4C, 和 NEO 裝置。" }, "duoDesc": { - "message": "與 Duo Security 驗證,可使用 Duo Mobile 程式, SMS ,致電或 U2F 安全鑰匙。", + "message": "與 Duo Security 驗證,可使用 Duo Mobile 程式, SMS ,致電或 U2F 安全金鑰。", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "duoOrganizationDesc": { - "message": "使用 Duo Security 驗證您的組織,可使用 Duo Mobile 程式, SMS ,致電或 U2F 安全鑰匙。", + "message": "使用 Duo Security 驗證您的組織,可使用 Duo Mobile 程式, SMS ,致電或 U2F 安全金鑰。", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "u2fDesc": { - "message": "使用任何啟用了 FIDO U2F 的安全鑰匙來存取您的帳戶。" + "message": "使用任何啟用了 FIDO U2F 的安全金鑰來存取您的帳戶。" }, "u2fTitle": { - "message": "FIDO U2F 安全鑰匙" + "message": "FIDO U2F 安全金鑰" }, "emailTitle": { "message": "電子郵件" @@ -781,7 +781,7 @@ "message": "警告" }, "exportWarningDesc": { - "message": "This export contains your vault data in an unencrypted format. You should not store or send the exported file over unsecure channels (such as email). Delete it immediately after you are done using it." + "message": "您的密碼將匯出成未加密的. csv 檔案。您不應將它存放或經由未經加密的方式傳送(例如電子郵件)。用完後請立即將它刪除。" }, "exportMasterPassword": { "message": "輸入您的主密碼以匯出密碼庫資料。" @@ -799,10 +799,10 @@ "message": "密碼產生器" }, "minNumbers": { - "message": "數字" + "message": "最少數字位數" }, "minSpecial": { - "message": "符號", + "message": "最少符號位數", "description": "Minimum Special Characters" }, "ambiguous": { @@ -833,10 +833,10 @@ "message": "帳戶已更新" }, "changeEmail": { - "message": "變更電子郵件" + "message": "變更電子郵件地址" }, "newEmail": { - "message": "新電子郵件" + "message": "新的電子郵件地址" }, "code": { "message": "代碼" @@ -854,13 +854,13 @@ "message": "接下來會登出目前的登入階段,並要求您重新登入。其他裝置上的登入階段最多會保持一個小時。" }, "emailChanged": { - "message": "電子郵件已更改" + "message": "已變更電子郵件地址" }, "logBackIn": { "message": "請重新登入。" }, "logBackInOthersToo": { - "message": "請重新登入。如果您還在使用其他 Bitwarden 應用,也請登出並重新登入。" + "message": "請重新登入。如果您還在使用其他 Bitwarden 應用程式,也請登出並重新登入。" }, "changeMasterPassword": { "message": "變更主密碼" @@ -869,13 +869,13 @@ "message": "已變更主密碼" }, "currentMasterPass": { - "message": "目前主密碼" + "message": "目前的主密碼" }, "newMasterPass": { "message": "新的主密碼" }, "confirmNewMasterPass": { - "message": "確認新密碼" + "message": "確認新的主密碼" }, "encKeySettings": { "message": "加密金鑰設定" @@ -884,10 +884,10 @@ "message": "KDF 演算法" }, "kdfIterations": { - "message": "KDF 疊代" + "message": "KDF 迭代" }, "kdfIterationsDesc": { - "message": "較高的 KDF 遞代次數可以避免您的主密碼遭到暴力破解。我們建議 $VALUE$ 或更高。", + "message": "較高的 KDF 迭代次數可以避免您的主密碼遭到暴力破解。我們建議 $VALUE$ 或更高。", "placeholders": { "value": { "content": "$1", @@ -896,7 +896,7 @@ } }, "kdfIterationsWarning": { - "message": "把 KDF 遞代次數設太高會導致在 CPU 較慢的裝置上登入 ( 與解鎖 ) Bitwarden 時降低效能。我們建議您增加 $INCREMENT$ 的值並且在所有的裝置上測試。", + "message": "若將 KDF 迭代次數設太高會導致在 CPU 較慢的裝置上登入 ( 與解鎖) Bitwarden 時降低效能。我們建議您增加 $INCREMENT$ 的值並且在所有的裝置上測試。", "placeholders": { "increment": { "content": "$1", @@ -908,10 +908,10 @@ "message": "變更 KDF" }, "encKeySettingsChanged": { - "message": "加密金鑰設定已變更" + "message": "已變更加密金鑰設定" }, "dangerZone": { - "message": "危險區域" + "message": "危險操作區" }, "dangerZoneDesc": { "message": "小心, 這些動作是無法挽回的!" @@ -923,10 +923,10 @@ "message": "Concerned your account is logged in on another device? Proceed below to deauthorize all computers or devices that you have previously used. This security step is recommended if you previously used a public PC or accidentally saved your password on a device that isn't yours. This step will also clear all previously remembered two-step login sessions." }, "deauthorizeSessionsWarning": { - "message": "接下來會登出目前的登入階段,並要求您重新登入。若您有設定兩步驟登入,也需重新驗證。其他裝置上的登入階段最多會保持一個小時。" + "message": "接下來會取消目前的登入階段。若您有設定兩步驟登入,也需重新驗證。其他裝置上的登入階段最多可能會保持一個小時。" }, "sessionsDeauthorized": { - "message": "已取消所有登入階段授權" + "message": "所有的登入階段已取消授權" }, "purgeVault": { "message": "清除密碼庫" @@ -956,7 +956,7 @@ "message": "Deleting your account is permanent. It cannot be undone." }, "accountDeleted": { - "message": "帳戶已刪除" + "message": "帳戶已被刪除" }, "accountDeletedDesc": { "message": "您的帳戶已經關閉, 所有關聯資料已經被刪除。" @@ -971,10 +971,10 @@ "message": "匯入資料" }, "importSuccess": { - "message": "資料已經成功匯入到您的密碼庫中。" + "message": "資料已經成功匯入至您的密碼庫中。" }, "importFormatError": { - "message": "資料格式不正確。請檢查您匯入檔, 再重新匯入。" + "message": "資料格式不正確。請檢查您匯入的檔案後再重試一次。" }, "importNothingError": { "message": "沒有匯入任何內容。" @@ -986,7 +986,7 @@ "message": "選擇匯入檔案" }, "orCopyPasteFileContents": { - "message": "or copy\/paste the import file contents" + "message": "或複製貼上要匯入的檔案內容" }, "instructionsFor": { "message": "$NAME$ Instructions", @@ -1002,7 +1002,7 @@ "message": "選項" }, "optionsDesc": { - "message": "Customize your web vault experience." + "message": "自訂您的網頁版密碼庫" }, "optionsUpdated": { "message": "選項已更新" @@ -1014,7 +1014,7 @@ "message": "變更網頁版密碼庫使用的語言。" }, "disableIcons": { - "message": "停用網站圖示" + "message": "停用網站圖示顯示功能" }, "disableIconsDesc": { "message": "在您密碼庫的每個登入資料旁顯示一個可辨識圖示。" @@ -1033,13 +1033,13 @@ "message": "網域規則" }, "domainRulesDesc": { - "message": "If you have the same login across multiple different website domains, you can mark the website as \"equivalent\". \"Global\" domains are ones already created for you by Bitwarden." + "message": "如果您在多個不同網站使用相同的登入資料,您可以把這些網站標記為 “通用”。Bitwarden 會為您設定 “全域” 域名。" }, "globalEqDomains": { - "message": "Global Equivalent Domains" + "message": "全域通用域名" }, "customEqDomains": { - "message": "Custom Equivalent Domains" + "message": "自訂通用域名" }, "exclude": { "message": "排除" @@ -1072,13 +1072,13 @@ "message": "兩步驟登入" }, "twoStepLoginDesc": { - "message": "Secure your account by requiring an additional step when logging in." + "message": "在登入時執行額外的步驟來保護您的帳戶。" }, "twoStepLoginOrganizationDesc": { "message": "Require two-step login for your organization's users by configuring providers at the organization level." }, "twoStepLoginRecoveryWarning": { - "message": "Enabling two-step login can permanently lock you out of your Bitwarden account. A recovery code allows you to access your account in the event that you can no longer use your normal two-step login provider (ex. you lose your device). Bitwarden support will not be able to assist you if you lose access to your account. We recommend you write down or print the recovery code and keep it in a safe place." + "message": "啟用兩步驟登入可以永久鎖定您的 Bitwarden 帳戶。如果您無法正常使用兩步驟登入驗證應用程式(例如,您遺失了裝置),則可以使用復原碼造訪您的帳戶。 如果您失去造訪帳戶的權限,Bitwarden 便無法幫助您。所以我們建議您記下或列印復原碼,並將其妥善保管。" }, "viewRecoveryCode": { "message": "檢視復原碼" @@ -1227,7 +1227,7 @@ "message": "整合金鑰" }, "twoFactorDuoSecretKey": { - "message": "秘密金鑰" + "message": "私密金鑰" }, "twoFactorDuoApiHostname": { "message": "API 主機名稱" @@ -1284,7 +1284,7 @@ "message": "There was a problem reading the security key. Try again." }, "twoFactorRecoveryYourCode": { - "message": "您的 Bitwarden 兩步登入復原碼" + "message": "您的 Bitwarden 兩步驟登入復原碼" }, "twoFactorRecoveryNoCode": { "message": "You have not enabled any two-step login providers yet. After you have enabled a two-step login provider you can check back here for your recovery code." @@ -1339,7 +1339,7 @@ "message": "No websites were found in your vault with a missing two-factor authentication configuration." }, "instructions": { - "message": "Instructions" + "message": "說明" }, "exposedPasswordsReport": { "message": "Exposed Passwords Report" @@ -1488,23 +1488,23 @@ "message": "Billing & Licensing" }, "goPremium": { - "message": "升級為進階版", + "message": "升級至進階版", "description": "Another way of saying \"Get a premium membership\"" }, "premiumUpdated": { "message": "您已升級至進階版" }, "premiumUpgradeUnlockFeatures": { - "message": "將您的帳戶升級為進階版, 並解鎖更多方便的功能。" + "message": "將您的帳戶升級至進階版, 並解鎖更多方便的功能。" }, "premiumSignUpStorage": { - "message": "1 GB 的加密檔案儲存空間。" + "message": "用於檔案附件的 1 GB 的加密檔案儲存空間。" }, "premiumSignUpTwoStep": { "message": "YubiKey,FIDO U2F 和 Duo 等額外的兩步驟登入選項。" }, "premiumSignUpReports": { - "message": "Password hygiene, account health, and data breach reports to keep your vault safe." + "message": "密碼健康度檢查、提供帳戶體檢以及資料外洩報告,以保障您的密碼庫安全。" }, "premiumSignUpTotp": { "message": "用於您的登入資料的 TOTP 驗證碼 (2FA) 產生器。" @@ -1513,7 +1513,7 @@ "message": "優先客戶支援。" }, "premiumSignUpFuture": { - "message": "未來會有更多進階功能,敬請期待!" + "message": "未來會增加更多進階功能,敬請期待!" }, "premiumPrice": { "message": "每年只需 $PRICE$ !", @@ -1550,7 +1550,7 @@ "message": "# of additional GB" }, "additionalStorageIntervalDesc": { - "message": "Your plan comes with $SIZE$ of encrypted file storage. You can add additional storage for $PRICE$ per GB \/$INTERVAL$.", + "message": "您的方案附帶 $SIZE$ 的加密儲存空間。您也可以用 $PRICE$ 每 GB 每 $INTERVAL$ 購買額外的儲存空間。", "placeholders": { "size": { "content": "$1", @@ -1631,7 +1631,7 @@ "message": "The subscription has been canceled." }, "neverExpires": { - "message": "絕不過期" + "message": "永不過期" }, "status": { "message": "狀態" @@ -1646,10 +1646,10 @@ "message": "下載授權證" }, "updateLicense": { - "message": "更新授權" + "message": "更新授權證" }, "updatedLicense": { - "message": "授權已更新" + "message": "授權證已更新" }, "manageSubscription": { "message": "管理訂閱" @@ -1658,7 +1658,7 @@ "message": "儲存空間" }, "addStorage": { - "message": "Add Storage" + "message": "增加儲存空間" }, "removeStorage": { "message": "Remove Storage" @@ -1688,12 +1688,34 @@ "changePaymentMethod": { "message": "變更付款方式" }, - "charges": { - "message": "收費", - "description": "Credit card charges\/payments." + "invoices": { + "message": "Invoices" }, - "noCharges": { - "message": "不收費。" + "noInvoices": { + "message": "No invoices." + }, + "paid": { + "message": "Paid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "unpaid": { + "message": "Unpaid", + "description": "Past tense status of an invoice. ex. Paid or unpaid." + }, + "transactions": { + "message": "Transactions", + "description": "Payment\/credit transactions." + }, + "noTransactions": { + "message": "No transactions." + }, + "chargeNoun": { + "message": "Charge", + "description": "Noun. A charge from a payment method." + }, + "refundNoun": { + "message": "Refund", + "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { "message": "Any charges will appear on your statement as $STATEMENT_NAME$.", @@ -1728,9 +1750,6 @@ "contactSupport": { "message": "連絡客戶支援部門" }, - "contactSupportPaymentMethod": { - "message": "If you would like to change from this payment method please contact customer support." - }, "updatedPaymentMethod": { "message": "已更新付款方式。" }, @@ -1750,7 +1769,7 @@ } }, "uploadLicenseFilePremium": { - "message": "您需要上傳有效的授權檔案來升級為進階會員資格 。" + "message": "您需要上傳有效的授權檔案以升級取得進階會員資格 。" }, "uploadLicenseFileOrg": { "message": "To create an on-premise hosted organization you need to upload a valid license file." @@ -1896,7 +1915,7 @@ "message": "Create unlimited collections" }, "gbEncryptedFileStorage": { - "message": "$SIZE$ encrypted file storage", + "message": "$SIZE$ 加密檔案儲存空間。", "placeholders": { "size": { "content": "$1", @@ -1944,7 +1963,7 @@ "message": "基本價格" }, "organizationCreated": { - "message": "已建立組織" + "message": "組織已建立" }, "organizationReadyToGo": { "message": "Your new organization is ready to go!" @@ -2474,8 +2493,21 @@ "message": "Contact customer support if you would like to change your plan. Please ensure that you have an active payment method added to the account.", "description": "A billing plan\/package. For example: families, teams, enterprise, etc." }, - "invoice": { - "message": "發票" + "invoiceNumber": { + "message": "Invoice #$NUMBER$", + "description": "ex. Invoice #79C66F0-0001", + "placeholders": { + "number": { + "content": "$1", + "example": "79C66F0-0001" + } + } + }, + "viewInvoice": { + "message": "View Invoice" + }, + "downloadInvoice": { + "message": "Download Invoice" }, "verifyBankAccount": { "message": "驗證銀行帳戶" @@ -2506,7 +2538,7 @@ } }, "routingNumber": { - "message": "匯款路線號碼", + "message": "匯款路徑號碼", "description": "Bank account routing number" }, "accountNumber": { @@ -2572,7 +2604,7 @@ "message": "更新金鑰" }, "updateEncryptionKey": { - "message": "Update Encryption Key" + "message": "更新加密金鑰" }, "updateEncryptionKeyShortDesc": { "message": "You are currently using an outdated encryption scheme." @@ -2624,7 +2656,7 @@ "message": "篩選器" }, "lockOptions": { - "message": "自動鎖定時間" + "message": "鎖定選項" }, "lockOptionsDesc": { "message": "選擇密碼庫的自動鎖定時間。鎖定後需要重新輸入主密碼才能再次存取密碼庫。" @@ -2655,7 +2687,7 @@ "description": "ex. Date this item was updated" }, "datePasswordUpdated": { - "message": "密碼已更新", + "message": "密碼更新於", "description": "ex. Date this password was updated" }, "organizationIsDisabled": { @@ -2689,20 +2721,20 @@ "description": "ex. A weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "veryWeak": { - "message": "Very Weak", + "message": "非常弱", "description": "ex. A very weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "weakMasterPassword": { - "message": "脆弱的主密碼" + "message": "主密碼強度太弱" }, "weakMasterPasswordDesc": { "message": "您設定的主密碼很脆弱。您應該使用高強度的密碼 (複雜密碼) 來正確保護您的 bitwarden 帳戶。仍要使用此密碼嗎?" }, "rotateAccountEncKey": { - "message": "Also rotate my account's encryption key" + "message": "更新帳戶的加密金鑰" }, "rotateEncKeyTitle": { - "message": "Rotate Encryption Key" + "message": "更新加密金鑰" }, "rotateEncKeyConfirmation": { "message": "Are you sure you want to rotate your account's encryption key?" @@ -2721,7 +2753,7 @@ "message": "There are old file attachments in your vault that need to be fixed before you can rotate your account's encryption key." }, "yourAccountsFingerprint": { - "message": "Your account's fingerprint phrase", + "message": "您帳戶的指紋短語", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "fingerprintEnsureIntegrityVerify": { diff --git a/u2f-connector.html b/u2f-connector.html index e9f04c32..8b49dead 100644 --- a/u2f-connector.html +++ b/u2f-connector.html @@ -7,6 +7,6 @@ - +