{"version":3,"file":"main.b1eef44fe35a1bb9.js","mappings":"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,EAAE;OACP,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EACF;OACH,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP;KAEJ,EACD;MACEghB,IAAI,EAAE,WAAW;MACjBhhB,IAAI,EAAE,kBAAkB;MACxB0f,aAAa,EAAE,CACb;QACE1f,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP;KAEJ,EACD;MACEghB,IAAI,EAAE,WAAW;MACjBhhB,IAAI,EAAE,QAAQ;MACd0f,aAAa,EAAE,CACb;QACE1f,IAAI,EAAE;OACP;KAEJ,EACD;MACEghB,IAAI,EAAE,WAAW;MACjBhhB,IAAI,EAAE,+DAA+D;MACrE0f,aAAa,EAAE,CACb;QACE1f,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP;KAEJ,EACD;MACEghB,IAAI,EAAE,WAAW;MACjBhhB,IAAI,EAAE,SAAS;MACf0f,aAAa,EAAE,CACb;QACE1f,IAAI,EAAE;OACP,EACD;QACEA,IAAI,EAAE;OACP;KAEJ;;CAGN;;;;;;;;;;;;;;;;;;;AC1N8C;AAGF;AACY;AACgB;AAEzE,IAAI/I,6EAAsB,EAAE;EAC1Bg9D,6DAAc,EAAE;;AAGlB;AACA;AACA55C,QAAQ,CAAC85C,gBAAgB,CAAC,kBAAkB,EAAE,MAAK;EACjDC,sEAAAA,EAAwB,CACrBC,eAAe,CAACt4D,sDAAS,CAAC,CAC1B8hB,KAAK,CAAC+oC,GAAG,IAAIv8C,OAAO,CAACC,GAAG,CAACs8C,GAAG,CAAC,CAAC;EAE/B;EACAsN,uFAAmB,EAAE;AACvB,CAAC,CAAC;;;;;;;;;;ACpBJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/JssState.ts","./src/app/addressbook/addressbook.lazy.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/credit-cards/components/credit-card-list/credit-card-list.component.ts","./src/app/credit-cards/components/credit-card-list/credit-card-list.component.html","./src/app/credit-cards/components/credit-card-transaction-overview/credit-card-transaction-overview.component.ts","./src/app/credit-cards/components/credit-card-transaction-overview/credit-card-transaction-overview.component.html","./src/app/credit-cards/components/credit-cards-limit-overview/credit-cards-limit-overview.component.ts","./src/app/credit-cards/components/credit-cards-limit-overview/credit-cards-limit-overview.component.html","./src/app/credit-cards/components/credit-cards-overview/credit-cards-overview.component.ts","./src/app/credit-cards/components/credit-cards-overview/credit-cards-overview.component.html","./src/app/credit-cards/credit-cards.module.ts","./src/app/credit-cards/pipes/credit-card-name.pipe.ts","./src/app/credit-cards/services/credit-card-transactions.service.ts","./src/app/credit-cards/services/credit-cards.service.ts","./src/app/dashboard/components/account-manager-information/account-manager-information.component.ts","./src/app/dashboard/components/account-manager-information/account-manager-information.component.html","./src/app/dashboard/components/accounts-overview/accounts-overview.component.ts","./src/app/dashboard/components/accounts-overview/accounts-overview.component.html","./src/app/dashboard/components/bank-account-settings/bank-account-settings.component.ts","./src/app/dashboard/components/bank-account-settings/bank-account-settings.component.html","./src/app/dashboard/dashboard.module.ts","./src/app/dashboard/services/account-manager-information.service.ts","./src/app/dashboard/services/account-overview.service.ts","./src/app/dashboard/services/bank-account-settings.service.ts","./src/app/dialogs/components/address-book-popup/address-book-popup.component.ts","./src/app/dialogs/components/address-book-popup/address-book-popup.component.html","./src/app/dialogs/components/approval-popup/approval-popup.component.ts","./src/app/dialogs/components/approval-popup/approval-popup.component.html","./src/app/dialogs/components/country-list-popup/country-list-popup.component.ts","./src/app/dialogs/components/country-list-popup/country-list-popup.component.html","./src/app/dialogs/components/default-portfolio-selector/default-portfolio-selector.component.ts","./src/app/dialogs/components/default-portfolio-selector/default-portfolio-selector.component.html","./src/app/dialogs/components/details-confirm-popup/details-confirm-popup.component.ts","./src/app/dialogs/components/details-confirm-popup/details-confirm-popup.component.html","./src/app/dialogs/components/error-handling-popup/error-handling-popup.component.ts","./src/app/dialogs/components/error-handling-popup/error-handling-popup.component.html","./src/app/dialogs/components/info-popup/info-popup.component.ts","./src/app/dialogs/components/info-popup/info-popup.component.html","./src/app/dialogs/components/personal-archive-message/personal-archive-message.component.ts","./src/app/dialogs/components/personal-archive-message/personal-archive-message.component.html","./src/app/dialogs/components/popup/popup.component.ts","./src/app/dialogs/components/radio-buttons-popup/radio-buttons-popup.component.ts","./src/app/dialogs/components/radio-buttons-popup/radio-buttons-popup.component.html","./src/app/dialogs/components/sentoo-payment/sentoo-payment-popup.component.ts","./src/app/dialogs/components/sentoo-payment/sentoo-payment-popup.component.html","./src/app/dialogs/components/upload-document/upload-document.component.ts","./src/app/dialogs/components/upload-document/upload-document.component.html","./src/app/dialogs/dialogs.module.ts","./src/app/dialogs/services/dialog-state.service.ts","./src/app/google-analytics/google-analytics.module.ts","./src/app/google-analytics/services/google-analytics.service.ts","./src/app/google-analytics/services/gtm.ts","./src/app/google-analytics/services/window-reference.ts","./src/app/jss-context.service.ts","./src/app/jss-data-fetcher.service.ts","./src/app/jss-graphql.module.ts","./src/app/jss-graphql.service.ts","./src/app/jss-meta.service.ts","./src/app/layout/footer-wrapper/footer-wrapper.component.ts","./src/app/layout/footer-wrapper/footer-wrapper.component.html","./src/app/layout/footer/footer.component.html","./src/app/layout/footer/footer.component.ts","./src/app/layout/header/header.component.ts","./src/app/layout/header/header.component.html","./src/app/layout/jss-layout.service.ts","./src/app/layout/layout.module.ts","./src/app/layout/logo/logo.component.html","./src/app/layout/logo/logo.component.ts","./src/app/layout/navigation/navigation.component.ts","./src/app/layout/navigation/navigation.component.html","./src/app/layout/page-title/page-title.component.html","./src/app/layout/page-title/page-title.component.ts","./src/app/layout/portfolio-selector/portfolio-selector.component.ts","./src/app/layout/portfolio-selector/portfolio-selector.component.html","./src/app/layout/portfolio-setting/portfolio-setting.component.ts","./src/app/layout/portfolio-setting/portfolio-setting.component.html","./src/app/lib/layout-service-factory.ts","./src/app/login/components/landing/landing.component.ts","./src/app/login/components/landing/landing.component.html","./src/app/login/components/login/login.component.ts","./src/app/login/components/login/login.component.html","./src/app/login/components/token-form/token-form.component.ts","./src/app/login/components/token-form/token-form.component.html","./src/app/login/login.module.ts","./src/app/login/services/login.service.ts","./src/app/login/services/qr-code.service.ts","./src/app/login/services/status.service.ts","./src/app/maintenance/components/maintenance/maintenance.component.ts","./src/app/maintenance/components/maintenance/maintenance.component.html","./src/app/maintenance/maintenance.module.ts","./src/app/miscellaneous/miscellaneous.lazy.ts","./src/app/orco/orco-addressbook/orco-addressbook.lazy.ts","./src/app/orco/orco-layout/orco-layout.lazy.ts","./src/app/orco/orco-miscellaneous/orco-miscellaneous.lazy.ts","./src/app/orco/orco-personal-archive/orco-personal-archive.lazy.ts","./src/app/orco/orco-transfers/orco-transfers.lazy.ts","./src/app/overdraft/overdraft.lazy.ts","./src/app/personal-archive/personal-archive.lazy.ts","./src/app/personal-archive/services/messages-count.service.ts","./src/app/personal-archive/services/messages-list.service.ts","./src/app/personal-archive/services/private-documents-list.service.ts","./src/app/public/components/request-login-tool/request-login-tool.component.ts","./src/app/public/components/request-login-tool/request-login-tool.component.html","./src/app/public/public.module.ts","./src/app/public/services/request-login-tool.service.ts","./src/app/reporting/components/audit-report-search/audit-report-search.component.ts","./src/app/reporting/components/audit-report-search/audit-report-search.component.html","./src/app/reporting/components/money-transfer-table/money-transfer-table.component.ts","./src/app/reporting/components/money-transfer-table/money-transfer-table.component.html","./src/app/reporting/components/report-table/report-table.component.ts","./src/app/reporting/components/sign-in-log-table/sign-in-log-table.component.ts","./src/app/reporting/components/sign-in-log-table/sign-in-log-table.component.html","./src/app/reporting/reporting.module.ts","./src/app/reporting/services/reporting.service.ts","./src/app/routing/jss-route-builder.service.ts","./src/app/routing/jss-route-resolver.service.ts","./src/app/routing/layout/layout.component.ts","./src/app/routing/layout/layout.component.html","./src/app/routing/navigation/navigation.component.ts","./src/app/routing/navigation/navigation.component.html","./src/app/routing/not-found/not-found.component.ts","./src/app/routing/not-found/not-found.component.html","./src/app/routing/routing.module.ts","./src/app/routing/server-error/server-error.component.ts","./src/app/routing/server-error/server-error.component.html","./src/app/routing/visitor-identification/visitor-identification.component.ts","./src/app/sentoo/components/sentoo-transfer/connection-error/connection-error.component.ts","./src/app/sentoo/components/sentoo-transfer/connection-error/connection-error.component.html","./src/app/sentoo/components/sentoo-transfer/payment-cancelled/payment-cancelled.component.ts","./src/app/sentoo/components/sentoo-transfer/payment-cancelled/payment-cancelled.component.html","./src/app/sentoo/components/sentoo-transfer/payment-expired/payment-expired.component.ts","./src/app/sentoo/components/sentoo-transfer/payment-expired/payment-expired.component.html","./src/app/sentoo/components/sentoo-transfer/payment-screen/payment-screen.component.ts","./src/app/sentoo/components/sentoo-transfer/payment-screen/payment-screen.component.html","./src/app/sentoo/components/sentoo-transfer/sentoo-transfer/sentoo-transfer.component.ts","./src/app/sentoo/components/sentoo-transfer/sentoo-transfer/sentoo-transfer.component.html","./src/app/sentoo/components/sentoo-transfer/validate-payment/validate-payment.component.ts","./src/app/sentoo/components/sentoo-transfer/validate-payment/validate-payment.component.html","./src/app/sentoo/components/sentoo/landing/landing.component.ts","./src/app/sentoo/components/sentoo/landing/landing.component.html","./src/app/sentoo/components/sentoo/payment-complete/payment-complete.component.ts","./src/app/sentoo/components/sentoo/payment-complete/payment-complete.component.html","./src/app/sentoo/components/sentoo/payment-invalid/payment-invalid.component.ts","./src/app/sentoo/components/sentoo/payment-invalid/payment-invalid.component.html","./src/app/sentoo/components/sentoo/payment-pending/payment-pending.component.ts","./src/app/sentoo/components/sentoo/payment-pending/payment-pending.component.html","./src/app/sentoo/components/sentoo/sentoo/sentoo.component.ts","./src/app/sentoo/components/sentoo/sentoo/sentoo.component.html","./src/app/sentoo/sentoo.module.ts","./src/app/sentoo/services/accounts.service.ts","./src/app/sentoo/services/approve.service.ts","./src/app/sentoo/services/cancel.service.ts","./src/app/sentoo/services/create.service.ts","./src/app/sentoo/services/payment-details.service.ts","./src/app/sentoo/services/qr-code.service.ts","./src/app/sentoo/services/sentoo.service.ts","./src/app/sentoo/services/status.service.ts","./src/app/session/components/session-expiry-popup/session-expiry-popup.component.ts","./src/app/session/services/expiry-popup.service.ts","./src/app/session/services/idle-config.service.ts","./src/app/session/services/idle.service.ts","./src/app/session/services/session-interceptor.service.ts","./src/app/session/services/session.service.ts","./src/app/session/session.module.ts","./src/app/shared/adapters/ab-date-adapter.ts","./src/app/shared/components/access-denied/access-denied.component.ts","./src/app/shared/components/access-denied/access-denied.component.html","./src/app/shared/components/address-book/address-book.component.ts","./src/app/shared/components/address-book/address-book.component.html","./src/app/shared/components/address/address.component.ts","./src/app/shared/components/address/address.component.html","./src/app/shared/components/bank-list/bank-list.component.ts","./src/app/shared/components/bank-list/bank-list.component.html","./src/app/shared/components/country-list/country-list.component.ts","./src/app/shared/components/country-list/country-list.component.html","./src/app/shared/components/currency-input/currency-input.component.ts","./src/app/shared/components/currency-input/currency-input.component.html","./src/app/shared/components/file-upload-field/file-upload-field.component.ts","./src/app/shared/components/file-upload-field/file-upload-field.component.html","./src/app/shared/components/foreign-bank/foreign-bank.component.ts","./src/app/shared/components/foreign-bank/foreign-bank.component.html","./src/app/shared/components/loader/loader.component.ts","./src/app/shared/components/loader/loader.component.html","./src/app/shared/components/print/print.component.ts","./src/app/shared/components/richtext/richtext.component.html","./src/app/shared/components/richtext/richtext.component.ts","./src/app/shared/components/tab-navigation/tab-navigation.component.ts","./src/app/shared/components/tab-navigation/tab-navigation.component.html","./src/app/shared/components/table/table.component.ts","./src/app/shared/components/table/table.component.html","./src/app/shared/constants.ts","./src/app/shared/directives/access.directive.ts","./src/app/shared/directives/amount-formatter.directive.ts","./src/app/shared/directives/button-loader.directive.ts","./src/app/shared/directives/date-formatter.directive.ts","./src/app/shared/directives/file-drop-zone.directive.ts","./src/app/shared/directives/iframeResizer.directive.ts","./src/app/shared/directives/scroll-invalid.directive.ts","./src/app/shared/directives/scroll-to.directive.ts","./src/app/shared/directives/units.directive.ts","./src/app/shared/emuns/portfolio-type.ts","./src/app/shared/pipes/ab-currency-symbol.pipe.ts","./src/app/shared/pipes/ab-currency.pipe.ts","./src/app/shared/pipes/ab-date.pipe.ts","./src/app/shared/pipes/ab-file-size.pipe.ts","./src/app/shared/pipes/ab-filter-countries.pipe.ts","./src/app/shared/pipes/ab-money.pipe.ts","./src/app/shared/pipes/replace.pipe.ts","./src/app/shared/pipes/safe-html.pipe.ts","./src/app/shared/pipes/sup-fraction.pipe.ts","./src/app/shared/services/account-details.service.ts","./src/app/shared/services/anti-forgery-token.service.ts","./src/app/shared/services/api-client.service.ts","./src/app/shared/services/auth-guard.service.ts","./src/app/shared/services/button-loader-interceptor.service.ts","./src/app/shared/services/button-loader-state.service.ts","./src/app/shared/services/configuration-settings-context.service.ts","./src/app/shared/services/data-subscription.service.ts","./src/app/shared/services/default-portfolio.service.ts","./src/app/shared/services/error-handling-interceptor.service.ts","./src/app/shared/services/form-all-fields-validation.service.ts","./src/app/shared/services/form-fields-generator.service.ts","./src/app/shared/services/full-portfolio-view.service.ts","./src/app/shared/services/get-item-list-fields.service.ts","./src/app/shared/services/http-cancel-interceptor.service.ts","./src/app/shared/services/initial-view.service.ts","./src/app/shared/services/loader-interceptor.service.ts","./src/app/shared/services/loader.service.ts","./src/app/shared/services/menu-trigger.service.ts","./src/app/shared/services/portfolio.service.ts","./src/app/shared/services/router-access.service.ts","./src/app/shared/services/task.service.ts","./src/app/shared/services/user-agent.service.ts","./src/app/shared/services/user.service.ts","./src/app/shared/shared.module.ts","./src/app/transactions/transactions.lazy.ts","./src/app/transfers/enums/swift-fee-payee.ts","./src/app/transfers/enums/transfer-type.ts","./src/app/transfers/services/bank-by-bic.service.ts","./src/app/transfers/services/bank.service.ts","./src/app/transfers/services/basket-check-payments.service.ts","./src/app/transfers/services/bulk-transfer.service.ts","./src/app/transfers/services/country-list.service.ts","./src/app/transfers/services/internal-accounts.service.ts","./src/app/transfers/services/reference-codes.service.ts","./src/app/transfers/services/state.service.ts","./src/app/transfers/services/to-accounts.service.ts","./src/app/transfers/transfers.lazy.ts","./src/app/user-access-management/user-access-management.lazy.ts","./src/app/validators/directives/min-length-trim.directive.ts","./src/app/validators/functions/range-validation.ts","./src/app/validators/validators.module.ts","./src/environments/environment.ts","./src/graphql-fragment-types.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["import {\r\n RouteData,\r\n LayoutServiceContextData,\r\n} from '@sitecore-jss/sitecore-jss-angular';\r\nimport { LayoutServiceError } from './layout/jss-layout.service';\r\n\r\nexport class JssState> {\r\n language: string;\r\n serverRoute: string;\r\n routeFetchError?: LayoutServiceError;\r\n sitecore?: LayoutServiceContextData & {\r\n route: RouteData;\r\n };\r\n viewBag: { [key: string]: unknown };\r\n}\r\n","// This file is generated do not modify manually\r\nexport const addressbook = [\r\n { path: 'AddressBook', loadChildren: () =>\r\n import('./addressbook.module').then(m => m.AddressbookModule) },\r\n { path: 'AddressBookForm', loadChildren: () =>\r\n import('./addressbook.module').then(m => m.AddressbookModule) },\r\n];\r\n","import { Component, ElementRef, OnDestroy, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { JssContextService } from './jss-context.service';\r\nimport { environment as env } from '../environments/environment';\r\nimport { Subscription } from 'rxjs';\r\nimport { GoogleAnalyticsService } from './google-analytics/services/google-analytics.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n private contextSubscription: Subscription;\r\n\r\n constructor(\r\n translate: TranslateService,\r\n jssContextService: JssContextService,\r\n googleAnalyticsService: GoogleAnalyticsService,\r\n private _elementRef: ElementRef\r\n ) {\r\n // this language will be used as a fallback when a translation isn't found in the current language\r\n translate.setDefaultLang(env.defaultLanguage);\r\n\r\n // the lang to use. if the lang isn't available, it will use the current loader to get them\r\n translate.use(env.defaultLanguage);\r\n\r\n this.contextSubscription = jssContextService.state.subscribe(jssState => {\r\n // listen for language changes\r\n if (jssState.language) {\r\n translate.use(jssState.language);\r\n }\r\n\r\n if (\r\n jssState.sitecore &&\r\n jssState.sitecore.context &&\r\n jssState.sitecore.context.googleAnalyticsTrackingId\r\n ) {\r\n googleAnalyticsService.initAnalytics(\r\n jssState.sitecore.context.googleAnalyticsTrackingId as string\r\n );\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this._elementRef?.nativeElement?.removeAttribute('ng-version');\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.contextSubscription) {\r\n this.contextSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n","import { APP_BASE_HREF } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { BrowserModule, BrowserTransferStateModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { addressbook } from './addressbook/addressbook.lazy';\r\nimport { AppComponent } from './app.component';\r\nimport { CreditCardsComponents, CreditCardsModule } from './credit-cards/credit-cards.module';\r\nimport { DashboardComponents, DashboardModule } from './dashboard/dashboard.module';\r\nimport { DialogsComponents, DialogsModule } from './dialogs/dialogs.module';\r\nimport { JssContextService } from './jss-context.service';\r\nimport { JssDataFetcherService } from './jss-data-fetcher.service';\r\nimport { GraphQLModule } from './jss-graphql.module';\r\nimport { JssMetaService } from './jss-meta.service';\r\nimport { JssLayoutService } from './layout/jss-layout.service';\r\nimport { LayoutComponents, LayoutModule } from './layout/layout.module';\r\nimport { LoginComponents, LoginModule } from './login/login.module';\r\nimport { SentooComponents, SentooModule } from './sentoo/sentoo.module';\r\nimport { miscellaneous } from './miscellaneous/miscellaneous.lazy';\r\nimport { orcoAddressbook } from './orco/orco-addressbook/orco-addressbook.lazy';\r\nimport { orcoLayout } from './orco/orco-layout/orco-layout.lazy';\r\nimport { orcoMiscellaneous } from './orco/orco-miscellaneous/orco-miscellaneous.lazy';\r\nimport { orcoPersonalArchive } from './orco/orco-personal-archive/orco-personal-archive.lazy';\r\nimport { orcoTransfers } from './orco/orco-transfers/orco-transfers.lazy';\r\nimport { overdraft } from './overdraft/overdraft.lazy';\r\nimport { personalArchive } from './personal-archive/personal-archive.lazy';\r\nimport { PublicComponents, PublicModule } from './public/public.module';\r\nimport { ReportingComponents, ReportingModule } from './reporting/reporting.module';\r\nimport { RoutingComponents, RoutingModule } from './routing/routing.module';\r\nimport { SessionComponents, SessionModule } from './session/session.module';\r\nimport { SharedComponents, SharedModule } from './shared/shared.module';\r\nimport { transactions } from './transactions/transactions.lazy';\r\nimport { transfers } from './transfers/transfers.lazy';\r\nimport { userAccessManagement } from './user-access-management/user-access-management.lazy';\r\nimport { MaintenanceModule } from './maintenance/maintenance.module';\r\nimport { MaintenanceComponents } from './maintenance/maintenance.module';\r\n\r\nconst ImportedModules = [\r\n ...RoutingComponents,\r\n ...SharedComponents,\r\n ...LayoutComponents,\r\n ...LoginComponents,\r\n ...SentooComponents,\r\n ...PublicComponents,\r\n ...DashboardComponents,\r\n ...SessionComponents,\r\n ...ReportingComponents,\r\n ...DialogsComponents,\r\n ...CreditCardsComponents,\r\n ...MaintenanceComponents\r\n];\r\n\r\nconst JssComponentsLazyLoading = [\r\n ...transactions,\r\n ...userAccessManagement,\r\n ...transfers,\r\n ...addressbook,\r\n ...miscellaneous,\r\n ...personalArchive,\r\n ...orcoTransfers,\r\n ...orcoMiscellaneous,\r\n ...overdraft,\r\n ...orcoLayout,\r\n ...orcoPersonalArchive,\r\n ...orcoAddressbook,\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n // withServerTransition is needed to enable universal rendering\r\n BrowserModule.withServerTransition({ appId: 'my-app' }),\r\n BrowserTransferStateModule,\r\n HttpClientModule,\r\n SharedModule,\r\n RoutingModule,\r\n BrowserAnimationsModule,\r\n TranslateModule.forRoot(),\r\n LayoutModule,\r\n GraphQLModule,\r\n SentooModule,\r\n LoginModule,\r\n PublicModule,\r\n CreditCardsModule,\r\n DashboardModule,\r\n SessionModule,\r\n DialogsModule,\r\n ReportingModule,\r\n MaintenanceModule,\r\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\r\n JssModule.withComponents(ImportedModules, JssComponentsLazyLoading),\r\n ],\r\n providers: [\r\n JssContextService,\r\n JssDataFetcherService,\r\n JssLayoutService,\r\n JssMetaService,\r\n CookieService,\r\n // IMPORTANT: you must set the base href with this token, not a tag in the HTML.\r\n // the Sitecore Experience Editor will not work correctly when a base tag is used.\r\n { provide: APP_BASE_HREF, useValue: '/' },\r\n ],\r\n declarations: [AppComponent],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n ICard,\r\n ICreditCardStatus,\r\n CreditCardsResponse,\r\n CreditCardsService\r\n} from './../../services/credit-cards.service';\r\n\r\n@Component({\r\n selector: 'ab-credit-card-list',\r\n templateUrl: './credit-card-list.component.html',\r\n styleUrls: ['./credit-card-list.component.scss']\r\n})\r\nexport class CreditCardListComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n public cards: Array;\r\n public selectedCard: ICard;\r\n public placeholder: string;\r\n public cardId: string;\r\n public CreditCardStatus = ICreditCardStatus;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private creditCardsService: CreditCardsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.cardId = this.route.snapshot.queryParamMap.get('id');\r\n this.placeholder = (this.rendering.fields.placeholder as any).value;\r\n this.creditCardsService\r\n .getCreditCards()\r\n .subscribe(response => this.handleResponse(response));\r\n }\r\n\r\n handleResponse(response: CreditCardsResponse) {\r\n this.cards = response.cards;\r\n\r\n if (this.cards.length === 1) {\r\n this.selectedCard = this.cards[0];\r\n this.changeAccount(this.cardId ? true : false);\r\n } else {\r\n this.selectedCard = this.cards.filter(card => card.id === this.cardId)[0];\r\n }\r\n }\r\n\r\n changeAccount(stopRedirect = false) {\r\n if (stopRedirect !== true) {\r\n this.router.navigate([], {\r\n relativeTo: this.route,\r\n queryParams: { id: this.selectedCard.id },\r\n queryParamsHandling: 'merge'\r\n });\r\n }\r\n }\r\n}\r\n","
0\">\r\n
\r\n \r\n \r\n \r\n \r\n {{ card.name }} - {{ card.suffix }}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{ selectedCard?.balance.amount | number }}\r\n {{ selectedCard?.balance.currencyCode }}\r\n

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

\r\n {{ selectedCard?.availableCredit.amount | number }}\r\n {{ selectedCard?.availableCredit.currencyCode }}\r\n

\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, OnDestroy } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { filter, map, debounceTime } from 'rxjs/operators';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n CreditCardTransactionsService,\r\n ICreditCardTransaction\r\n} from './../../services/credit-card-transactions.service';\r\n\r\n@Component({\r\n selector: 'ab-credit-card-transaction-overview',\r\n templateUrl: './credit-card-transaction-overview.component.html',\r\n styleUrls: ['./credit-card-transaction-overview.component.scss']\r\n})\r\nexport class CreditCardTransactionOverviewComponent\r\n implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n public subscription: Subscription;\r\n public transactions: Array = [];\r\n public isLoading: boolean;\r\n public id: string;\r\n public hasMore = false;\r\n private pageNumber = 1;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private creditCardTransactionsService: CreditCardTransactionsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.subscription = this.route.queryParams\r\n .pipe(\r\n filter(params => 'id' in params),\r\n map(params => params.id),\r\n debounceTime(100)\r\n )\r\n .subscribe(id => {\r\n this.id = id;\r\n this.getTransactions(id);\r\n });\r\n }\r\n\r\n getTransactions(id: string): void {\r\n this.isLoading = true;\r\n this.creditCardTransactionsService\r\n .getTransaction(id, this.pageNumber)\r\n .subscribe(response => {\r\n this.isLoading = false;\r\n this.transactions = [...this.transactions, ...response.transactions];\r\n this.hasMore = response.transactions.length === response.pageSize;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n onScroll() {\r\n if (!this.isLoading) {\r\n this.pageNumber++;\r\n this.getTransactions(this.id);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0,\r\n 'text-success': transaction.amount.amount < 0\r\n }\"\r\n >\r\n {{ transaction.amount | abCurrency }}\r\n \r\n \r\n \r\n
\r\n \r\n
{{ transaction.date | abDate }}{{ transaction.merchant }}{{ transaction.country }}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ComponentRendering, Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { GetItemListFieldsService } from '../../../shared/services/get-item-list-fields.service';\r\nimport { CreditCardsService, ICard } from '../../services/credit-cards.service';\r\n\r\n@Component({\r\n selector: 'ab-credit-cards-limit-overview',\r\n templateUrl: './credit-cards-limit-overview.component.html',\r\n styleUrls: ['./credit-cards-limit-overview.component.scss']\r\n})\r\nexport class CreditCardsLimitOverviewComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public tableColumns: Item[];\r\n public isLoading = true;\r\n public items: { [key: string]: Item };\r\n public cards: Array;\r\n\r\n constructor(\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n private creditCardsService: CreditCardsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.tableColumns = (this.rendering.fields.items as Item[]).filter(\r\n i => i.name !== 'Metadata'\r\n ) as Item[];\r\n\r\n this.items = this.getItemListFieldsService.getItems(\r\n (this.rendering.fields.items as Item[]).filter(\r\n i => i.name === 'Metadata'\r\n )[0].fields.items as Item[]\r\n );\r\n\r\n this.creditCardsService.getCreditCards().subscribe(\r\n response => {\r\n this.isLoading = false;\r\n this.cards = response.cards;\r\n },\r\n () => (this.isLoading = false)\r\n );\r\n }\r\n\r\n setOdd(i: number) {\r\n return i % 2 === 0;\r\n }\r\n}\r\n","
\r\n

\r\n \r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
{{ card | creditCardName }}\r\n {{ card.limit.amount | number }} {{ card.limit.currencyCode }}\r\n \r\n {{ card.status }}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, OnDestroy } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n ICard,\r\n ICreditCardStatus,\r\n CreditCardsService\r\n} from './../../services/credit-cards.service';\r\nimport { DialogStateService } from '../../../dialogs/services/dialog-state.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { FullPortfolioViewService } from '../../../shared/services/full-portfolio-view.service';\r\n\r\n@Component({\r\n selector: 'ab-credit-cards-overview',\r\n templateUrl: './credit-cards-overview.component.html',\r\n styleUrls: ['./credit-cards-overview.component.scss']\r\n})\r\nexport class CreditCardsOverviewComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n public cards: Array;\r\n public CreditCardStatus = ICreditCardStatus;\r\n public creditCardStatusMap = [];\r\n public isLoading = true;\r\n public isPortfolioCif7 = false;\r\n\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private dialogStateService: DialogStateService,\r\n private creditCardsService: CreditCardsService,\r\n private fullPortfolioViewService: FullPortfolioViewService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.creditCardStatusMap[\r\n ICreditCardStatus.ACTIVE\r\n ] = this.rendering.fields.statuses[0].fields.label.value;\r\n this.creditCardStatusMap[\r\n ICreditCardStatus.BLOCKED\r\n ] = this.rendering.fields.statuses[1].fields.label.value;\r\n this.creditCardStatusMap[\r\n ICreditCardStatus.UNLINKED\r\n ] = this.rendering.fields.statuses[2].fields.label.value;\r\n\r\n this.getCards();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(s => s.unsubscribe());\r\n }\r\n\r\n getCards(): void {\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService.bankAccounts.subscribe(() => {\r\n this.subscriptions.push(\r\n this.creditCardsService.getCreditCards().subscribe(\r\n response => {\r\n this.isLoading = false;\r\n this.cards = response.cards;\r\n this.isPortfolioCif7 =\r\n this.cards !== null && this.cards.length > 0;\r\n },\r\n () => (this.isLoading = false)\r\n )\r\n );\r\n })\r\n );\r\n }\r\n\r\n changeStatus(card: ICard): void {\r\n if (card.status === this.CreditCardStatus.ACTIVE) {\r\n this.dialogStateService\r\n .openDialog('unlink-card-confirmation', [card.name, card.suffix])\r\n .subscribe(confirm => this.confirm(confirm, card));\r\n }\r\n }\r\n\r\n confirm(confirm: boolean, card: ICard): void {\r\n if (confirm) {\r\n this.creditCardsService.unlinkCreditCard(card.suffix).subscribe(() => {\r\n this.getCards();\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

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

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ card.suffix }}\r\n \r\n {{ card.name }}\r\n \r\n ({{ creditCardStatusMap[card.status] }})\r\n \r\n {{ card.limit.currencyCode }}\r\n {{ card.limit.amount | currency: '':'' }}\r\n \r\n {{ card.balance.amount | currency: '':'' }}\r\n \r\n {{ card.availableCredit.amount | currency: '':'' }}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatLegacyTooltipModule } from '@angular/material/legacy-tooltip';\r\nimport { MatLegacyMenuModule } from '@angular/material/legacy-menu';\r\nimport { RouterModule } from '@angular/router';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nimport { SharedModule } from './../shared/shared.module';\r\nimport { CreditCardListComponent } from './components/credit-card-list/credit-card-list.component';\r\nimport { CreditCardTransactionOverviewComponent } from './components/credit-card-transaction-overview/credit-card-transaction-overview.component';\r\nimport { CreditCardsLimitOverviewComponent } from './components/credit-cards-limit-overview/credit-cards-limit-overview.component';\r\nimport { CreditCardsOverviewComponent } from './components/credit-cards-overview/credit-cards-overview.component';\r\nimport { CreditCardNamePipe } from './pipes/credit-card-name.pipe';\r\n\r\nconst CreditCardsComponents = [\r\n { name: 'CreditCardsOverview', type: CreditCardsOverviewComponent },\r\n { name: 'CreditCardsLimitOverview', type: CreditCardsLimitOverviewComponent },\r\n { name: 'CreditCardList', type: CreditCardListComponent },\r\n {\r\n name: 'CreditCardTransactionOverview',\r\n type: CreditCardTransactionOverviewComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n CreditCardsOverviewComponent,\r\n CreditCardListComponent,\r\n CreditCardTransactionOverviewComponent,\r\n CreditCardsLimitOverviewComponent,\r\n CreditCardNamePipe\r\n ],\r\n imports: [\r\n SharedModule,\r\n CommonModule,\r\n JssModule,\r\n RouterModule,\r\n MatLegacyMenuModule,\r\n MatLegacyTooltipModule\r\n ]\r\n})\r\nexport class CreditCardsModule {}\r\n\r\nexport { CreditCardsComponents };\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ICard } from '../services/credit-cards.service';\r\n\r\n@Pipe({\r\n name: 'creditCardName'\r\n})\r\nexport class CreditCardNamePipe implements PipeTransform {\r\n transform(card: ICard): string {\r\n return `xxxx xxxx xxxx ${card.suffix.substr(card.suffix.length - 4)} - ${\r\n card.cardType\r\n } - ${card.name}`;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_GET_CREDITCARD_TRANSACTIONS } from './../../shared/constants';\r\nimport { IBalance } from '../../shared/interfaces/balance.interface';\r\n\r\ninterface ICreditCardTransaction {\r\n id: string;\r\n date: Date;\r\n merchant: string;\r\n country: string;\r\n amount: IBalance;\r\n}\r\n\r\ninterface CreditCardTransactionsResponse extends ApiResponse {\r\n transactions: Array;\r\n pageSize: number;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CreditCardTransactionsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_GET_CREDITCARD_TRANSACTIONS);\r\n }\r\n\r\n getTransaction(id: string, pageNumber: number): Observable {\r\n return this.get({\r\n id: id,\r\n pageNumber\r\n });\r\n }\r\n}\r\n\r\nexport { CreditCardTransactionsResponse, ICreditCardTransaction };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_GET_CREDITCARDS } from './../../shared/constants';\r\nimport { IBalance } from '../../shared/interfaces/balance.interface';\r\n\r\nenum ICreditCardStatus {\r\n ACTIVE = 'Active',\r\n UNLINKED = 'Unlinked',\r\n BLOCKED = 'Blocked'\r\n}\r\n\r\ninterface ICard {\r\n id: string;\r\n number: string;\r\n name: string;\r\n limit: IBalance;\r\n balance: IBalance;\r\n availableCredit: IBalance;\r\n status: ICreditCardStatus;\r\n suffix: string;\r\n cardType: string;\r\n pendingLimitRequest: boolean;\r\n}\r\n\r\ninterface CreditCardsResponse extends ApiResponse {\r\n cards: Array;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CreditCardsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_GET_CREDITCARDS);\r\n }\r\n\r\n getCreditCards(): Observable {\r\n return this.get();\r\n }\r\n\r\n unlinkCreditCard(suffix: string) {\r\n return this.delete({\r\n suffix: suffix\r\n });\r\n }\r\n}\r\n\r\nexport { CreditCardsResponse, ICard, ICreditCardStatus };\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { Subscription } from 'rxjs';\r\nimport { PortfolioService } from '../../../shared/services/portfolio.service';\r\nimport { PortfolioType } from '../../../shared/emuns/portfolio-type';\r\nimport {\r\n AccountManagerInformationService,\r\n IAccountManagerInformation\r\n} from '../../services/account-manager-information.service';\r\nimport { FullPortfolioViewService } from '../../../shared/services/full-portfolio-view.service';\r\n\r\n@Component({\r\n selector: 'ab-account-manager-information',\r\n templateUrl: './account-manager-information.component.html',\r\n styleUrls: ['./account-manager-information.component.scss']\r\n})\r\nexport class AccountManagerInformationComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public isPortfolioCorporate: boolean = undefined;\r\n public accountManagerName: string;\r\n public accountManagerPhone: string;\r\n public accountManagerEmail: string;\r\n\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private portfolioService: PortfolioService,\r\n private accountManagerInformationService: AccountManagerInformationService,\r\n private fullPortfolioViewService: FullPortfolioViewService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.getPortfolioType();\r\n }\r\n\r\n getPortfolioType(): void {\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService.getFullPortfolioView().subscribe(() => {\r\n this.subscriptions.push(\r\n this.portfolioService.getSelectedPortfolio().subscribe(portfolios => {\r\n this.isPortfolioCorporate =\r\n PortfolioType[portfolios[0]?.portfolioType] ===\r\n PortfolioType.Corporate;\r\n if (this.isPortfolioCorporate) {\r\n this.getAccountManagerInfo();\r\n }\r\n })\r\n );\r\n })\r\n );\r\n }\r\n\r\n getAccountManagerInfo(): void {\r\n this.subscriptions.push(\r\n this.accountManagerInformationService\r\n .getAccountManagerInformation()\r\n .subscribe((data: IAccountManagerInformation) => {\r\n this.accountManagerName = data?.name;\r\n this.accountManagerPhone = data?.phone;\r\n this.accountManagerEmail = data?.email;\r\n })\r\n );\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\r\n }\r\n}\r\n","\r\n
\r\n
\r\n

Account Officer

\r\n

{{ accountManagerName }} |

\r\n

\r\n Tel:\r\n {{ accountManagerPhone }} |\r\n

\r\n

\r\n {{ accountManagerEmail }}\r\n

\r\n
\r\n
\r\n\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n QueryList,\r\n ViewChildren\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n IAccount,\r\n IProduct,\r\n AccountOverviewResponse,\r\n AccountOverviewService\r\n} from '../../services/account-overview.service';\r\nimport { MenuTriggerService } from '../../../shared/services/menu-trigger.service';\r\nimport { DialogStateService } from '../../../dialogs/services/dialog-state.service';\r\nimport { PortfolioService } from '../../../shared/services/portfolio.service';\r\nimport { PortfolioType } from '../../../shared/emuns/portfolio-type';\r\nimport { Subscription } from 'rxjs';\r\nimport { first } from 'rxjs/operators';\r\nimport { AccountDetailsService } from '../../../shared/services/account-details.service';\r\nimport { FullPortfolioViewService } from '../../../shared/services/full-portfolio-view.service';\r\nimport { InitialViewService } from '../../../shared/services/initial-view.service';\r\nimport { MatLegacyMenuTrigger } from '@angular/material/legacy-menu';\r\n\r\n@Component({\r\n selector: 'ab-accounts-overview',\r\n templateUrl: './accounts-overview.component.html',\r\n styleUrls: ['./accounts-overview.component.scss']\r\n})\r\nexport class AccountsOverviewComponent\r\n implements OnInit, AfterViewInit, OnDestroy\r\n{\r\n @Input() rendering: ComponentRendering;\r\n @ViewChildren(MatLegacyMenuTrigger)\r\n menuTriggers: QueryList;\r\n\r\n public portfolio: IAccount;\r\n public isLoading = true;\r\n public isRetail = false;\r\n public portfolioChanged = false;\r\n\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private router: Router,\r\n private accountOverviewService: AccountOverviewService,\r\n private menuTriggerService: MenuTriggerService,\r\n private dialogStateService: DialogStateService,\r\n private portfolioService: PortfolioService,\r\n private accountDetailsService: AccountDetailsService,\r\n private fullPortfolioViewService: FullPortfolioViewService,\r\n private initialViewService: InitialViewService\r\n ) {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n documentClick(event) {\r\n this.menuTriggerService.documentEvent(event);\r\n }\r\n\r\n ngOnInit() {\r\n this.portfolioService.portfolioChanged.subscribe((hasChanged) => {\r\n this.portfolioChanged = hasChanged;\r\n });\r\n this.getAccountOverview();\r\n this.setPortfolioType();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.menuTriggerService.afterViewInit(this.menuTriggers);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.menuTriggerService.unsubscribeFromAction();\r\n this.subscriptions.forEach((s) => s.unsubscribe());\r\n }\r\n\r\n setPortfolioType() {\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService.getFullPortfolioView().subscribe(() => {\r\n this.subscriptions.push(\r\n this.portfolioService\r\n .getSelectedPortfolio()\r\n .subscribe((portfolios) => {\r\n this.isRetail =\r\n PortfolioType[portfolios[0]?.portfolioType] ===\r\n PortfolioType.Retail;\r\n })\r\n );\r\n })\r\n );\r\n }\r\n\r\n getAccountOverview() {\r\n this.subscriptions.push(\r\n this.initialViewService\r\n .getAccounts()\r\n .pipe(first())\r\n .subscribe(\r\n (accountsOverview) => {\r\n if (accountsOverview && !this.portfolioChanged) {\r\n this.handleResponse(accountsOverview);\r\n } else {\r\n this.subscriptions.push(\r\n this.accountOverviewService.getAccountOverview().subscribe(\r\n (response) => {\r\n this.handleResponse(response);\r\n },\r\n () => (this.isLoading = false)\r\n )\r\n );\r\n }\r\n },\r\n () => (this.isLoading = false)\r\n )\r\n );\r\n }\r\n\r\n handleResponse(response: AccountOverviewResponse) {\r\n this.portfolio = response?.portfolios?.[0];\r\n if (!this.accountDetailsService.fromLogin && this.portfolio) {\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService.getFullPortfolioView().subscribe(() => {\r\n this.accountDetailsService\r\n .getDetails()\r\n .subscribe((accounts: { [key: string]: IProduct }) => {\r\n this.isLoading = false;\r\n this.setAccountBalance(accounts);\r\n });\r\n })\r\n );\r\n } else {\r\n this.isLoading = false;\r\n }\r\n\r\n if (this.portfolio) {\r\n this.portfolio.products.sort((first: IProduct, second: IProduct) => {\r\n if (first.status === 'open' && first.accountActions != null) return -1;\r\n else return 1;\r\n });\r\n }\r\n }\r\n\r\n setAccountBalance(accounts: { [key: string]: IProduct }) {\r\n this.portfolio.products.forEach((product) => {\r\n const currentAccount = accounts[product.accountId];\r\n if (currentAccount) {\r\n product.visible = currentAccount.visible;\r\n product.accountName = currentAccount.accountName;\r\n product.bookBalance = currentAccount.bookBalance;\r\n product.availableBalance = currentAccount.availableBalance;\r\n }\r\n });\r\n }\r\n\r\n public openDialog(portfolio: IAccount) {\r\n this.dialogStateService\r\n .openDialog('BankAccountSetting', JSON.stringify(portfolio))\r\n .subscribe((result) => {\r\n if (result) {\r\n this.getAccountOverview();\r\n }\r\n });\r\n }\r\n\r\n public openUrl(url: string) {\r\n // TODO, change Portfolio ID\r\n let urlSegments = url.split('?'),\r\n uri = urlSegments[0],\r\n queryParams = urlSegments[1].split('&'),\r\n accountId = queryParams[0].split('id=')[1],\r\n mode = queryParams[1] ? queryParams[1].split('=')[1] : '';\r\n\r\n this.router.navigate([uri], {\r\n queryParams: {\r\n fromAccount: accountId,\r\n mode: mode\r\n }\r\n });\r\n }\r\n}\r\n"," \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n \r\n \r\n {{ portfolio.name }}\r\n

\r\n
\r\n\r\n \r\n {{ rendering.fields.newAccountNewLink.value.text }}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ product.accountNumber }}\r\n {{\r\n product.accountNumber\r\n }}\r\n \r\n {{ product.accountName }}\r\n \r\n ({{ product.status }})\r\n \r\n \r\n {{ product.bookBalance.currencyCode }}\r\n \r\n {{ product.bookBalance.amount | currency: '':'' }}\r\n \r\n {{ product.availableBalance.amount | currency: '':'' }}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit, Input, ViewChild, TemplateRef, OnDestroy } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nimport { MatLegacyDialog, MatLegacyDialogRef } from '@angular/material/legacy-dialog';\r\nimport { DialogStateService, IDialogState, DialogState } from '../../../dialogs/services/dialog-state.service';\r\nimport { IAccount, IProduct } from '../../services/account-overview.service';\r\nimport { BankAccountSettingsService } from '../../services/bank-account-settings.service';\r\nimport { ApiResponse } from '../../../shared/services/api-client.service';\r\nimport { ConfigurationSettingsContextService } from '../../../shared/services/configuration-settings-context.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { FormFields, FormFieldsGeneratorService } from '../../../shared/services/form-fields-generator.service';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Router, RouterEvent, NavigationStart } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'ab-bank-account-settings',\r\n templateUrl: './bank-account-settings.component.html',\r\n styleUrls: ['./bank-account-settings.component.scss'],\r\n})\r\nexport class BankAccountSettingsComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild('bankAccountSettings') bankAccountSettings: TemplateRef;\r\n @ViewChild('bankAccountSettingsForm') bankAccountSettingsForm: NgForm;\r\n\r\n public portfolio: IAccount;\r\n public dialogRef: MatLegacyDialogRef;\r\n public editedProducts: IProduct[] = [];\r\n public tableColumns: Item;\r\n public formFields: FormFields;\r\n public allowedCharactersRegex = new RegExp(\"^([A-Za-z0-9&@#$!*-:().,'+-])+([\\\\sA-Za-z0-9&@#$!*-:().,'+-])*$\");\r\n\r\n private dialogId: string;\r\n private dialogStateSubscription: Subscription;\r\n private routerSubscription: Subscription;\r\n\r\n constructor(\r\n private dialog: MatLegacyDialog,\r\n private dialogStateService: DialogStateService,\r\n private bankAccountSettingsService: BankAccountSettingsService,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private router: Router,\r\n private configurationSettingsContextService: ConfigurationSettingsContextService\r\n ) {}\r\n\r\n get validationAlllowedCharacters() {\r\n return this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'ValidationAlllowedCharacters'\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.dialogId = (this.rendering.fields._id).value;\r\n this.routerSubscription = this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n if (this.dialogRef) {\r\n this.dialogRef.close();\r\n }\r\n });\r\n\r\n this.dialogStateSubscription = this.dialogStateService.getDialogState().subscribe((value: IDialogState) => {\r\n if (this.dialogId === value.rendaringName && value.dialogState === DialogState.Open) {\r\n this.dialogRef = this.dialog.open(this.bankAccountSettings, {\r\n panelClass: 'popup-dialog',\r\n disableClose: true,\r\n });\r\n if (value.data) {\r\n this.portfolio = JSON.parse(value.data);\r\n }\r\n this.dialogRef.afterClosed().subscribe(() => {\r\n this.editedProducts = [];\r\n });\r\n }\r\n });\r\n\r\n this.tableColumns = (this.rendering.fields.items as Item[]).filter((i) => i.name === 'Table')[0] as Item;\r\n\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(this.rendering) as FormFields;\r\n\r\n this.allowedCharactersRegex = new RegExp(this.validationAlllowedCharacters);\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.dialogStateSubscription) {\r\n this.dialogStateSubscription.unsubscribe();\r\n }\r\n\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n addToEdit(product: IProduct) {\r\n if (\r\n this.editedProducts.length === 0 ||\r\n !this.editedProducts.some((p) => p.accountNumber === product.accountNumber)\r\n ) {\r\n this.editedProducts.push(product);\r\n }\r\n }\r\n\r\n submit(): void {\r\n console.log(this.editedProducts);\r\n this.bankAccountSettingsService\r\n .saveBankAccountsSettings(this.editedProducts)\r\n .subscribe((response) => this.handleResponse(response));\r\n }\r\n\r\n handleResponse(response: ApiResponse) {\r\n if (response.callIsSuccess) {\r\n this.dialogRef.close();\r\n this.dialogStateService.closeDialogByReference(this.dialogId, true);\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ product.accountNumber }}\r\n \r\n {{\r\n formFields.genericErrors.invalidAccountNameCharacter.message\r\n }}\r\n {{\r\n formFields.genericErrors.invalidAccountNameRange.message\r\n }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { MatLegacyMenuModule } from '@angular/material/legacy-menu';\r\nimport { MatLegacyTooltipModule } from '@angular/material/legacy-tooltip';\r\n\r\nimport { SharedModule } from './../shared/shared.module';\r\nimport { AccountsOverviewComponent } from './components/accounts-overview/accounts-overview.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { BankAccountSettingsComponent } from './components/bank-account-settings/bank-account-settings.component';\r\nimport { AccountManagerInformationComponent } from './components/account-manager-information/account-manager-information.component';\r\n\r\nconst DashboardComponents = [\r\n {\r\n name: 'AccountManagerInformation',\r\n type: AccountManagerInformationComponent\r\n },\r\n { name: 'AccountsOverview', type: AccountsOverviewComponent },\r\n { name: 'BankAccountSettings', type: BankAccountSettingsComponent }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n AccountsOverviewComponent,\r\n BankAccountSettingsComponent,\r\n AccountManagerInformationComponent\r\n ],\r\n imports: [\r\n SharedModule,\r\n CommonModule,\r\n JssModule,\r\n RouterModule,\r\n MatLegacyMenuModule,\r\n MatLegacyTooltipModule\r\n ]\r\n})\r\nexport class DashboardModule {}\r\n\r\nexport { DashboardComponents };\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_PORTFOLIO_ACCOUNT_MANAGER } from '../../shared/constants';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface IAccountManagerInformation extends ApiResponse {\r\n name?: string;\r\n email?: string;\r\n phone?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccountManagerInformationService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PORTFOLIO_ACCOUNT_MANAGER);\r\n }\r\n\r\n getAccountManagerInformation(): Observable {\r\n return this.get();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_ACCOUNTSOVERVIEW_ENDPOINT } from './../../shared/constants';\r\nimport { IBalance } from '../../shared/interfaces/balance.interface';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\ninterface ISource {\r\n source: any;\r\n}\r\n\r\ninterface IAccountActions {\r\n name: string;\r\n url: string;\r\n}\r\n\r\ninterface IProduct {\r\n accountActions: Array;\r\n accountId: string;\r\n accountNumber: string;\r\n availableBalance: IBalance;\r\n portfolioName?: string;\r\n bookBalance: IBalance;\r\n description: string;\r\n isCreditCard?: boolean;\r\n isLinkActive: boolean;\r\n limit: number | null;\r\n status: string;\r\n visible: boolean;\r\n accountName: string;\r\n isDefaultAccount?: boolean;\r\n portfolioId?: string;\r\n}\r\n\r\ninterface IAccount {\r\n id: string;\r\n isCorporate: boolean;\r\n isDefault: boolean;\r\n isJoint: boolean;\r\n isSingle: boolean;\r\n name: string;\r\n products: IProduct[];\r\n source: ISource;\r\n}\r\n\r\ninterface AccountOverviewResponse extends ApiResponse {\r\n cards: Array | null;\r\n portfolios: Array | null;\r\n source: null;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccountOverviewService extends ApiClientService {\r\n private storedDate: AccountOverviewResponse;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_ACCOUNTSOVERVIEW_ENDPOINT);\r\n }\r\n\r\n // saveOnce is used after login for store the data return by server.\r\n // The call are make after success login because we need to have user permissions\r\n // before Layout service return navigation data\r\n getAccountOverview(saveOnce?: boolean): Observable {\r\n return Observable.create(observer => {\r\n if (this.storedDate) {\r\n observer.next(this.storedDate);\r\n this.storedDate = null;\r\n return;\r\n }\r\n\r\n this.get().subscribe(\r\n result => {\r\n if (saveOnce) {\r\n this.storedDate = result;\r\n }\r\n\r\n observer.next(result);\r\n },\r\n error => {\r\n observer.next(error);\r\n }\r\n );\r\n });\r\n }\r\n}\r\n\r\nexport { AccountOverviewResponse, IAccount, IProduct };\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_USER_BANKACCOUNTS_SETTINGS } from '../../shared/constants';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { IProduct } from './account-overview.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BankAccountSettingsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_USER_BANKACCOUNTS_SETTINGS);\r\n }\r\n\r\n saveBankAccountsSettings(\r\n bankAccounts: Array\r\n ): Observable {\r\n return this.postWithButtonLoader(bankAccounts);\r\n }\r\n}\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { GetItemListFieldsService } from '../../../shared/services/get-item-list-fields.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { ToAccountsListForTransfersResponse } from '../../../transfers/services/to-accounts.service';\r\nimport {\r\n IAccountTransferPermissions,\r\n ITransferOptions\r\n} from '../../../transfers/services/internal-accounts.service';\r\nimport TRANSFER_TYPE from '../../../transfers/enums/transfer-type';\r\nimport { ISecurityAddressBook } from '../../../shared/interfaces/address-book.interfaces';\r\n\r\n@Component({\r\n selector: 'ab-address-book-popup',\r\n templateUrl: './address-book-popup.component.html',\r\n styleUrls: ['./address-book-popup.component.scss']\r\n})\r\nexport class AddressBookPopupComponent implements OnInit {\r\n public items: { [key: string]: Item };\r\n public securityAddressBook: ISecurityAddressBook;\r\n\r\n get hideCompanies() {\r\n return (\r\n !this.data.data.transferOptions.billTransferAllowed ||\r\n this.data.data.transferType === TRANSFER_TYPE.internationalTransfer\r\n );\r\n }\r\n\r\n get hideOwnAccounts() {\r\n return (\r\n !this.data.data.transferOptions.internalTransferAllowed ||\r\n this.data.data.transferType === TRANSFER_TYPE.internationalTransfer\r\n );\r\n }\r\n\r\n get hideContacts() {\r\n return (\r\n !this.data.data.transferOptions.domesticTransferAllowed &&\r\n this.data.data.transferType !== TRANSFER_TYPE.internationalTransfer\r\n );\r\n }\r\n\r\n get domesticPermissionsEnabled() {\r\n return (\r\n this.data.data.transferType === TRANSFER_TYPE.internationalTransfer ||\r\n this.data.data.permissions.domesticTransferEnabled\r\n );\r\n }\r\n\r\n get billTransferPermissionsEnabled() {\r\n return this.data.data.permissions.billTransferEnabled;\r\n }\r\n\r\n get internalPermissionsEnabled() {\r\n return this.data.data.permissions.internalTransferEnabled;\r\n }\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA)\r\n public data: {\r\n data: {\r\n dialogData: ToAccountsListForTransfersResponse;\r\n transferOptions: ITransferOptions;\r\n transferType: TRANSFER_TYPE;\r\n permissions: IAccountTransferPermissions;\r\n };\r\n fields: any;\r\n },\r\n public dialogRef: MatLegacyDialogRef,\r\n private getItemListFieldsService: GetItemListFieldsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.items = this.getItemListFieldsService.getItems(this.data.fields.items);\r\n\r\n this.securityAddressBook = {\r\n billTransferPermissionsEnabled: this.billTransferPermissionsEnabled,\r\n domesticPermissionsEnabled: this.domesticPermissionsEnabled,\r\n hideCompanies: this.hideCompanies,\r\n hideContacts: this.hideContacts,\r\n hideOwnAccounts: this.hideOwnAccounts,\r\n internalPermissionsEnabled: this.internalPermissionsEnabled\r\n };\r\n }\r\n\r\n select(item: any) {\r\n this.dialogRef.close(item);\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n Inject,\r\n ViewChild,\r\n ElementRef,\r\n AfterViewInit,\r\n HostListener\r\n} from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields\r\n} from '../../../shared/services/form-fields-generator.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { GetItemListFieldsService } from '../../../shared/services/get-item-list-fields.service';\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'ab-approval-popup',\r\n templateUrl: './approval-popup.component.html',\r\n styleUrls: ['./approval-popup.component.scss']\r\n})\r\nexport class ApprovalPopupComponent implements OnInit, AfterViewInit {\r\n @ViewChild('approvalCodeInput') approvalCodeInput: ElementRef;\r\n\r\n public formFields: FormFields;\r\n public items: { [key: string]: Item };\r\n public challengeCode = 'NaN';\r\n public otpType: string;\r\n public approvalCodeErrorMessage: string;\r\n\r\n public approvalForm = new UntypedFormGroup({\r\n approvalCode: new UntypedFormControl(null, [\r\n Validators.required,\r\n Validators.pattern('[0-9]+')\r\n ])\r\n });\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private getItemListFieldsService: GetItemListFieldsService\r\n ) {}\r\n\r\n get approvalCode() {\r\n return this.approvalForm.get('approvalCode');\r\n }\r\n\r\n @HostListener('document:keypress', ['$event'])\r\n onEnterPress(event) {\r\n if (event.key === 'Enter' && this.approvalForm.valid) {\r\n this.confirm();\r\n this.approvalCodeInput.nativeElement.blur();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields({\r\n fields: this.data.fields\r\n }) as FormFields;\r\n\r\n if (this.data.fields.items && this.data.fields.items.length !== 0) {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.data.fields.items\r\n );\r\n }\r\n\r\n if (this.data.approvalData && !this.data.approvalData.isRetail) {\r\n this.otpType = 'abopassValue';\r\n }\r\n\r\n this.challengeCode = this.data.approvalData.challengeCode;\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.approvalCodeInput.nativeElement.focus();\r\n }, 1000);\r\n }\r\n\r\n radioChange() {\r\n setTimeout(() => this.approvalCodeInput.nativeElement.focus());\r\n }\r\n\r\n confirm() {\r\n const approveRequeset = this.data.approvalData.approveRequeset;\r\n if (approveRequeset) {\r\n approveRequeset({\r\n challengeCode: this.data.approvalData.challengeCode,\r\n signingCode: this.approvalForm.value.approvalCode\r\n }).subscribe((response) => {\r\n if (response.callIsSuccess) {\r\n this.dialogRef.close(true);\r\n } else {\r\n this.approvalCodeErrorMessage = response.errorDescription;\r\n this.approvalCode.setErrors({\r\n approvalCodeError: true\r\n });\r\n }\r\n });\r\n } else {\r\n this.dialogRef.close(this.approvalForm.value.approvalCode);\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
  • \r\n \r\n
  • \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ challengeCode }}\r\n
    \r\n
    \r\n
  • \r\n
    \r\n \r\n
  • \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n {{ challengeCode }}\r\n
    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n
\r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n {{ formFields.genericErrors.onlyNumbersValidation.message }}\r\n {{ approvalCodeErrorMessage }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Inject,\r\n ViewChild,\r\n ElementRef\r\n} from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { GetItemListFieldsService } from '../../../shared/services/get-item-list-fields.service';\r\nimport { Observable, fromEvent, Subject } from 'rxjs';\r\nimport { map, startWith, delay, tap } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'ab-country-list-popup',\r\n templateUrl: './country-list-popup.component.html',\r\n styleUrls: ['./country-list-popup.component.scss']\r\n})\r\nexport class CountryListPopupComponent implements OnInit {\r\n @Input() countryList: any;\r\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\r\n\r\n public selectedCountry: any;\r\n public items: any;\r\n public search: string;\r\n public filteredArray: Observable;\r\n public isEmpty = false;\r\n\r\n private _searchSubject;\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef,\r\n private getItemListFieldsService: GetItemListFieldsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (this.data.fields && this.data.fields.length !== 0) {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.data.fields.items\r\n );\r\n }\r\n\r\n this.filteredArray = this.searchObservable.pipe(\r\n startWith(null),\r\n map((event) => {\r\n return this.search ? this.filter() : this.data.data;\r\n }),\r\n delay(0),\r\n tap((value) => {\r\n this.isEmpty = value.length === 0;\r\n })\r\n );\r\n }\r\n\r\n confirm(country: any) {\r\n this.selectedCountry = country;\r\n this.dialogRef.close(this.selectedCountry);\r\n }\r\n\r\n clearValue() {\r\n this.search = '';\r\n this._searchSubject.next();\r\n }\r\n\r\n private filter() {\r\n return this.data.data.filter((country) => {\r\n return (\r\n country.countryName\r\n .toLowerCase()\r\n .indexOf(this.search.toLocaleLowerCase()) !== -1\r\n );\r\n });\r\n }\r\n\r\n private get searchObservable(): Observable {\r\n if (!this._searchSubject) {\r\n this._searchSubject = new Subject();\r\n\r\n fromEvent(this.searchInput.nativeElement, 'input').subscribe((event) => {\r\n this._searchSubject.next(event);\r\n });\r\n }\r\n\r\n return this._searchSubject.asObservable();\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n {{ country.countryName }}\r\n
\r\n {{ country.countryCode }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { ChangeDetectionStrategy, Component, Input, OnDestroy, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { UntypedFormControl, UntypedFormGroup, NgForm } from '@angular/forms';\r\nimport { MatLegacyDialog, MatLegacyDialogRef, MatLegacyDialogState } from '@angular/material/legacy-dialog';\r\nimport { NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nimport { filter } from 'rxjs/operators';\r\nimport { DialogState, DialogStateService, IDialogState } from '../../../dialogs/services/dialog-state.service';\r\nimport { DefaultPortfolioService } from '../../../shared/services/default-portfolio.service';\r\nimport { FormFields, FormFieldsGeneratorService } from '../../../shared/services/form-fields-generator.service';\r\nimport { IPortfolio } from './../../../shared/services/portfolio.service';\r\n\r\n@Component({\r\n selector: 'ab-default-portfolio-selector',\r\n templateUrl: './default-portfolio-selector.component.html',\r\n styleUrls: ['./default-portfolio-selector.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class DefaultPortfolioSelectorComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild('defaultPortfolioSelector')\r\n defaultPortfolioSelector: TemplateRef;\r\n @ViewChild('defaultPortfolioSelectorForm')\r\n defaultPortfolioSelectorForm: NgForm;\r\n\r\n public portfolios: Array;\r\n public accounts: any;\r\n public dialogRef: MatLegacyDialogRef;\r\n public tableColumns: Item;\r\n public formFields: FormFields;\r\n public selectDefaultAccount: any;\r\n public isLoading: boolean = true;\r\n public portfolioForm = new UntypedFormGroup({\r\n defaultAccount: new UntypedFormControl(''),\r\n defaultPortfolio: new UntypedFormControl(''),\r\n });\r\n private dialogId: string;\r\n private dialogStateSubscription: Subscription;\r\n private routerSubscription: Subscription;\r\n private accountDetailsSubscription: Subscription;\r\n constructor(\r\n private defaultPortfolioService: DefaultPortfolioService,\r\n private dialog: MatLegacyDialog,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private dialogStateService: DialogStateService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.dialogId = (this.rendering?.fields?._id).value;\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n if (this.dialogRef) {\r\n this.dialogRef.close();\r\n }\r\n });\r\n\r\n this.dialogStateSubscription = this.dialogStateService.getDialogState().subscribe((value: IDialogState) => {\r\n if (this.dialogId === value.rendaringName && value.dialogState === DialogState.Open) {\r\n if (!this.dialogRef || this.dialogRef?.getState() !== MatLegacyDialogState.OPEN) {\r\n this.dialogRef = this.dialog.open(this.defaultPortfolioSelector, {\r\n panelClass: 'popup-dialog',\r\n disableClose: true,\r\n });\r\n }\r\n if (value.data) {\r\n this.portfolios = value.data?.portfolios;\r\n this.accounts = value.data?.accounts;\r\n this.isLoading = value.data?.isLoading;\r\n }\r\n }\r\n });\r\n\r\n this.tableColumns = (this.rendering.fields?.items as Item[]).filter((i) => i.name === 'Table')[0] as Item;\r\n\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(this.rendering) as FormFields;\r\n }\r\n\r\n setDefault(selectedPortfolio: IPortfolio) {\r\n this.portfolios.forEach((portfolio) => {\r\n if (portfolio.id !== selectedPortfolio.id) {\r\n portfolio.isDefault = false;\r\n }\r\n });\r\n }\r\n\r\n getDefaultAccount(portfolio: IPortfolio) {\r\n const accountOptions = this.accounts?.filter((account) => {\r\n return account.portfolioId === portfolio.id;\r\n });\r\n const defaultSelectedAccount = accountOptions?.filter((account) => account.isDefaultAccount)[0];\r\n\r\n return defaultSelectedAccount;\r\n }\r\n\r\n selectedAccountChange(event): void {\r\n this.portfolios.forEach((portfolio) => {\r\n if (portfolio.id === event.value.portfolioId) {\r\n portfolio.defaultAccount = event.value.accountId;\r\n }\r\n });\r\n }\r\n\r\n onClose() {\r\n this.dialogRef.close(false);\r\n this.dialogStateService.closeDialogByReference(this.dialogId, false);\r\n }\r\n\r\n submit() {\r\n this.defaultPortfolioService.clearDefaultPortfolio();\r\n const updatedPortfolios = this.portfolios.map((portfolio) => {\r\n return {\r\n portfolioName: portfolio.name,\r\n portfolioNumber: portfolio.id,\r\n isDefaultPortfolio: portfolio.isDefault,\r\n defaultAccount: portfolio?.defaultAccount,\r\n };\r\n });\r\n\r\n this.defaultPortfolioService.setPortfolio(updatedPortfolios).subscribe(() => {\r\n this.dialogStateService.closeDialogByReference(this.dialogId, true);\r\n this.dialogRef.close(true);\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.dialogStateSubscription) {\r\n this.dialogStateSubscription.unsubscribe();\r\n }\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n if (this.accountDetailsSubscription) {\r\n this.accountDetailsSubscription.unsubscribe();\r\n }\r\n this.accounts = [];\r\n }\r\n}\r\n","\r\n
\r\n {{ rendering.fields.Title.value }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{ portfolio.name }}\r\n \r\n \r\n \r\n \r\n \r\n {{ account?.accountName }} -\r\n {{\r\n account?.availableBalance?.currencyCode\r\n | abCurrencySymbol\r\n }}\r\n \r\n -\r\n {{ account?.accountNumber }}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ rendering.fields.BodyText.value }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import { Component, Inject } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { IDialogState, DialogState } from '../../services/dialog-state.service';\r\n\r\n/*\r\n\r\nComponent which can be use for creating a confirmation dialogs with details.\r\nThe component need to receive formatted data like array of strings.\r\nThe position of each string into array need to corispondent with the position of label into\r\narray of items which Siteecore JSS return for this specific popup.\r\n\r\nIf Sitecore return array like:\r\n['Amount', 'From account', 'To account', 'Description', 'Transfer Date']\r\n\r\nwe need to pass array to component like:\r\n['1,234.00 USD', '0851780490', '22220003', 'transfer description', '25.05.2019']\r\n\r\nif we pass array like:\r\n['1,234.00 USD', '0851780490', null, 'transfer description', null]\r\n\r\nthe component will prevent showing of labels: 'To account' and 'Transfer Date'\r\n\r\n*/\r\n\r\n@Component({\r\n selector: 'ab-details-confirm-popup',\r\n templateUrl: './details-confirm-popup.component.html',\r\n styleUrls: ['./details-confirm-popup.component.scss']\r\n})\r\nexport class DetailsConfirmPopupComponent {\r\n public errorState: boolean;\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef\r\n ) {\r\n this.errorState =\r\n data !== undefined &&\r\n data.payment !== undefined &&\r\n data.payment.errorMessage !== undefined;\r\n }\r\n confirm() {\r\n this.dialogRef.close(true);\r\n }\r\n dismiss() {\r\n this.dialogRef.close({\r\n dialogState: DialogState.Dismiss\r\n });\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ data.payment.errorMessage }}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {{ data.labels[i] }}\r\n
\r\n
{{ data.payment[i] }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\n\r\n@Component({\r\n selector: 'ab-error-handling-popup',\r\n templateUrl: './error-handling-popup.component.html',\r\n styleUrls: ['./error-handling-popup.component.scss']\r\n})\r\nexport class ErrorHandlingPopupComponent implements OnInit {\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef\r\n ) {}\r\n\r\n ngOnInit() {}\r\n}\r\n","
\r\n \r\n

{{ data.data.errorDescription }}

\r\n \r\n
\r\n","import { Component, Inject } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'ab-info-popup',\r\n templateUrl: './info-popup.component.html',\r\n styleUrls: ['./info-popup.component.scss']\r\n})\r\nexport class InfoPopupComponent {\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef,\r\n private router: Router\r\n ) {}\r\n\r\n confirm() {\r\n this.dialogRef.close(true);\r\n }\r\n\r\n redirect() {\r\n this.dialogRef.close();\r\n this.router.navigate([this.data.RedirectUrl.url]);\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { Field } from '@sitecore-jss/sitecore-jss/layout';\r\n\r\nimport {\r\n MessagesListService,\r\n IMessage\r\n} from './../../../personal-archive/services/messages-list.service';\r\nimport { DialogStateService } from './../../services/dialog-state.service';\r\n\r\n@Component({\r\n selector: 'ab-personal-archive-message',\r\n templateUrl: './personal-archive-message.component.html',\r\n styleUrls: ['./personal-archive-message.component.scss']\r\n})\r\nexport class PersonalArchiveMessageComponent implements OnInit {\r\n public messageDetails: IMessage;\r\n public sender: Field;\r\n public date: Field;\r\n public delete: Field;\r\n public body;\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef,\r\n private messagesListService: MessagesListService,\r\n private dialogStateService: DialogStateService\r\n ) {\r\n this.messageDetails = this.data.data;\r\n this.data.fields.items.forEach((item) => {\r\n switch (item.name) {\r\n case 'Sender':\r\n this.sender = item.fields.label as Field;\r\n break;\r\n case 'Date':\r\n this.date = item.fields.label as Field;\r\n break;\r\n case 'Delete':\r\n this.delete = item.fields.label as Field;\r\n break;\r\n default:\r\n break;\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.showMessageDialog();\r\n }\r\n\r\n showMessageDialog() {\r\n this.body = this.messageDetails.body;\r\n }\r\n\r\n confirm() {\r\n this.dialogRef.close(true);\r\n }\r\n\r\n public deleteMessage() {\r\n this.dialogRef.close(true);\r\n this.dialogStateService.openDialog('ConfirmDelete').subscribe((result) => {\r\n if (result) {\r\n this.messagesListService\r\n .deleteMessage(this.messageDetails.id)\r\n .subscribe((response) => {\r\n if (response.callIsSuccess) {\r\n this.messagesListService.publishDeteledMessage(\r\n this.messageDetails.id\r\n );\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n public printMessage() {\r\n window.open(\r\n `${(this.data.fields.printMessageUrl as any).value.href}?id=${\r\n this.messageDetails.id\r\n }`\r\n );\r\n }\r\n}\r\n","\r\n
\r\n {{ messageDetails.subject }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ messageDetails.author?.name }}\r\n
\r\n
\r\n \r\n {{\r\n messageDetails.createdDate | abDate\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\r\nimport {\r\n MatLegacyDialog,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { InfoPopupComponent } from '../info-popup/info-popup.component';\r\nimport {\r\n DialogStateService,\r\n DialogState,\r\n IDialogState\r\n} from '../../services/dialog-state.service';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nimport { ApprovalPopupComponent } from '../approval-popup/approval-popup.component';\r\nimport { RadioButtonsPopupComponent } from '../radio-buttons-popup/radio-buttons-popup.component';\r\nimport { DetailsConfirmPopupComponent } from '../details-confirm-popup/details-confirm-popup.component';\r\nimport { Router, RouterEvent, NavigationStart } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { CountryListPopupComponent } from '../country-list-popup/country-list-popup.component';\r\nimport { AddressBookPopupComponent } from '../address-book-popup/address-book-popup.component';\r\nimport { PersonalArchiveMessageComponent } from '../personal-archive-message/personal-archive-message.component';\r\nimport { UploadDocumentComponent } from '../upload-document/upload-document.component';\r\nimport { ErrorHandlingPopupComponent } from '../error-handling-popup/error-handling-popup.component';\r\n\r\n@Component({\r\n selector: 'ab-popup',\r\n templateUrl: './popup.component.html',\r\n styleUrls: ['./popup.component.scss']\r\n})\r\nexport class PopupComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n\r\n private dialogId: string;\r\n private dialogStateSubscription: Subscription;\r\n private routerSubscription: Subscription;\r\n private matDialogRef: MatLegacyDialogRef;\r\n\r\n constructor(\r\n private dialog: MatLegacyDialog,\r\n private dialogStateService: DialogStateService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.dialogId = (this.rendering.fields._id).value;\r\n this.dialogStateService.addDialogId(this.dialogId);\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n if (this.matDialogRef) {\r\n this.matDialogRef.close();\r\n }\r\n });\r\n\r\n this.dialogStateSubscription = this.dialogStateService\r\n .getDialogState()\r\n .subscribe((value: IDialogState) => {\r\n if (this.dialogId === value.rendaringName) {\r\n switch (value.dialogState) {\r\n case DialogState.Open:\r\n this.openDialog(value.data, value.disableClose);\r\n break;\r\n case DialogState.Close:\r\n this.closeDialog();\r\n break;\r\n default:\r\n console.error('Missing state');\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.dialogStateSubscription) {\r\n this.dialogStateSubscription.unsubscribe();\r\n }\r\n\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n private openDialog(data?, disableClose?: boolean) {\r\n let component;\r\n let dialogData: any = this.rendering.fields;\r\n\r\n switch ((this.rendering.fields.type as Field).value) {\r\n case 'Approval':\r\n component = ApprovalPopupComponent;\r\n dialogData = {\r\n approvalData: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'RadioButtons':\r\n component = RadioButtonsPopupComponent;\r\n break;\r\n case 'DetailsConfirm':\r\n component = DetailsConfirmPopupComponent;\r\n dialogData = {\r\n payment: data.details || data,\r\n labels: data.labels,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'CountryList':\r\n component = CountryListPopupComponent;\r\n dialogData = {\r\n data: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'AddressBook':\r\n component = AddressBookPopupComponent;\r\n dialogData = {\r\n data: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'PersonalArchive':\r\n component = PersonalArchiveMessageComponent;\r\n dialogData = {\r\n data: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'UploadDocument':\r\n component = UploadDocumentComponent;\r\n dialogData = {\r\n data: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'ErrorHandling':\r\n component = ErrorHandlingPopupComponent;\r\n dialogData = {\r\n data: data,\r\n fields: dialogData\r\n };\r\n break;\r\n case 'Info':\r\n default:\r\n component = InfoPopupComponent;\r\n break;\r\n }\r\n\r\n this.matDialogRef = this.dialog.open(component, {\r\n data: dialogData,\r\n disableClose:\r\n (!(this.rendering.fields.HasCloseButtonInHeader as Field)\r\n .value as boolean) || disableClose,\r\n panelClass: 'popup-dialog',\r\n closeOnNavigation: true\r\n });\r\n\r\n this.matDialogRef.afterClosed().subscribe((dialogCloseValue) => {\r\n if (!dialogCloseValue) {\r\n this.dialogStateService.closeDialogByReference(this.dialogId, false);\r\n return;\r\n }\r\n\r\n if (\r\n dialogCloseValue.dialogState &&\r\n dialogCloseValue.dialogState === DialogState.Dismiss\r\n ) {\r\n this.dialogStateService.closeDialogByReference(this.dialogId);\r\n return;\r\n }\r\n\r\n this.dialogStateService.closeDialogByReference(\r\n this.dialogId,\r\n dialogCloseValue\r\n );\r\n });\r\n\r\n if (\r\n (this.rendering.fields.HasCloseButtonInHeader as Field).value as boolean\r\n ) {\r\n this.matDialogRef.backdropClick().subscribe(() => {\r\n this.dialogStateService.closeDialogByReference(this.dialogId);\r\n });\r\n }\r\n }\r\n\r\n private closeDialog() {\r\n if (this.matDialogRef) {\r\n this.matDialogRef.close();\r\n this.matDialogRef = undefined;\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { InfoPopupComponent } from '../info-popup/info-popup.component';\r\n\r\n@Component({\r\n selector: 'ab-radio-buttons-popup',\r\n templateUrl: './radio-buttons-popup.component.html',\r\n styleUrls: ['./radio-buttons-popup.component.scss']\r\n})\r\nexport class RadioButtonsPopupComponent implements OnInit {\r\n public selection = 'CSV'; // to be refactored later\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef\r\n ) {}\r\n\r\n ngOnInit() {}\r\n\r\n confirm() {\r\n this.dialogRef.close(this.selection);\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n

\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import {\r\n Component,\r\n Inject,\r\n OnInit\r\n} from '@angular/core';\r\nimport {\r\n UntypedFormControl,\r\n UntypedFormGroup,\r\n Validators\r\n} from '@angular/forms';\r\nimport {\r\n MAT_DIALOG_DATA,\r\n MatDialogRef\r\n} from '@angular/material/dialog';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n FormFields\r\n} from '../../../shared/services/form-fields-generator.service';\r\n\r\n@Component({\r\n selector: 'ab-sentoo-payment-popup',\r\n templateUrl: './sentoo-payment-popup.component.html',\r\n styleUrls: ['./sentoo-payment-popup.component.scss']\r\n})\r\nexport class SentooPaymentPopupComponent implements OnInit {\r\n\r\n\r\n public formFields: FormFields;\r\n public items: { [key: string]: Item };\r\n public challengeCode = 'NaN';\r\n public otpType: string;\r\n public approvalCodeErrorMessage: string;\r\n\r\n public approvalForm = new UntypedFormGroup({\r\n approvalCode: new UntypedFormControl(null, [\r\n Validators.required,\r\n Validators.pattern('[0-9]+')\r\n ])\r\n });\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public dialogRef: MatDialogRef,\r\n ) {}\r\n\r\n\r\n ngOnInit() {\r\n\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n
    \r\n 1\r\n
    \r\n
    \r\n text\r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import {\r\n Component,\r\n ElementRef,\r\n Inject,\r\n OnInit,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {\r\n FormFields,\r\n FormFieldsGeneratorService\r\n} from '../../../shared/services/form-fields-generator.service';\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators\r\n} from '@angular/forms';\r\nimport {\r\n MAT_LEGACY_DIALOG_DATA,\r\n MatLegacyDialogRef\r\n} from '@angular/material/legacy-dialog';\r\nimport { ConfigurationSettingsContextService } from '../../../shared/services/configuration-settings-context.service';\r\nimport { PrivateDocumentsListService } from './../../../personal-archive/services/private-documents-list.service';\r\n\r\n@Component({\r\n selector: 'ab-upload-document',\r\n templateUrl: './upload-document.component.html',\r\n styleUrls: ['./upload-document.component.scss']\r\n})\r\nexport class UploadDocumentComponent implements OnInit {\r\n @ViewChild('file') file: ElementRef;\r\n\r\n formFields: FormFields;\r\n\r\n public allowedIdCardCharactersRegex: RegExp = undefined;\r\n public maxIdLenght: number = undefined;\r\n public uploadForm = new UntypedFormGroup({\r\n documentType: new UntypedFormControl('', Validators.required),\r\n files: new UntypedFormControl(),\r\n documentSubType: new UntypedFormControl('', Validators.required),\r\n documentNumber: new UntypedFormControl('', [\r\n Validators.required,\r\n Validators.maxLength(this.maxIdLenght),\r\n Validators.pattern(this.allowedIdCardCharactersRegex)\r\n ]),\r\n expirationDate: new UntypedFormControl('', Validators.required)\r\n });\r\n\r\n public allowedExtensions: Array = [];\r\n public previewableExtenstions: Array = ['jpg', 'jpeg', 'png'];\r\n public maxFileCount: number;\r\n public maxFileSize: number;\r\n public maxFileNameSize: number;\r\n public expirationDateMin: Date;\r\n public isMaxFileCountReached: boolean;\r\n public isMaxFileNameCountReached: boolean;\r\n public isFilesExtensionsCorrect: boolean;\r\n public isFilesSizesCorrect: boolean;\r\n public initialState: boolean;\r\n public isInTheZone: boolean;\r\n\r\n public fileList: Array = [];\r\n public filesPreviews: Array = [];\r\n public showDocumentSubType: boolean;\r\n\r\n get documentType() {\r\n return this.uploadForm.get('documentType');\r\n }\r\n\r\n get documentSubType() {\r\n return this.uploadForm.get('documentSubType');\r\n }\r\n\r\n get documentNumber() {\r\n return this.uploadForm.get('documentNumber');\r\n }\r\n\r\n get expirationDate() {\r\n return this.uploadForm.get('expirationDate');\r\n }\r\n\r\n constructor(\r\n @Inject(MAT_LEGACY_DIALOG_DATA) public data: any,\r\n public dialogRef: MatLegacyDialogRef,\r\n private privateDocumentsListService: PrivateDocumentsListService,\r\n private configurationSettingsContextService: ConfigurationSettingsContextService,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService\r\n ) {\r\n this.documentType.setValue(\r\n this.data.fields.DocumentType[0].fields.Value.value\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.setFields(this.data.fields.DocumentType[0].fields.Value.value);\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.data\r\n ) as FormFields;\r\n\r\n this.setAllowedExtensions();\r\n this.setMaxFileCount();\r\n this.setMaxFileSize();\r\n this.setMaxFileNameSize();\r\n this.setExpirationDateMin();\r\n this.allowedIdCardCharactersRegex = new RegExp(\r\n this.validationDNumberAlllowedCharacters\r\n );\r\n this.maxIdLenght = this.validationIDNumberLenght;\r\n this.isMaxFileCountReached = false;\r\n this.isMaxFileNameCountReached = false;\r\n this.isFilesExtensionsCorrect = true;\r\n this.isFilesSizesCorrect = true;\r\n this.initialState = true;\r\n\r\n this.documentType.valueChanges.subscribe((value) => this.setFields(value));\r\n }\r\n\r\n setAllowedExtensions() {\r\n this.allowedExtensions =\r\n this.data.fields.allowedFileExtensions.value.split(',');\r\n }\r\n\r\n setMaxFileCount() {\r\n this.maxFileCount = 5;\r\n }\r\n\r\n setMaxFileSize() {\r\n this.maxFileSize = this.data.fields.maxFileSize.value;\r\n }\r\n\r\n setMaxFileNameSize() {\r\n this.maxFileNameSize = parseInt(\r\n this.data.fields.maxFileNameAndExtensionSize.value,\r\n 0\r\n );\r\n }\r\n\r\n setExpirationDateMin() {\r\n this.expirationDateMin = new Date(\r\n new Date().setMonth(\r\n new Date().getMonth() +\r\n parseInt(this.data.fields.minIdValidityDuration.value)\r\n )\r\n );\r\n }\r\n\r\n setFields(value: any) {\r\n if (value === this.data.fields.DocumentType[0].fields.Value.value) {\r\n this.showDocumentSubType = true;\r\n this.documentSubType.enable();\r\n this.documentNumber.enable();\r\n this.expirationDate.enable();\r\n } else {\r\n this.showDocumentSubType = false;\r\n this.documentSubType.disable();\r\n this.documentNumber.disable();\r\n this.expirationDate.disable();\r\n }\r\n }\r\n\r\n openUploadWindow($event: any) {\r\n $event.preventDefault();\r\n this.file.nativeElement.click();\r\n }\r\n\r\n removeFile(index: number) {\r\n this.fileList.splice(index, 1);\r\n this.filesPreviews.splice(index, 1);\r\n this.isMaxFileCountReached = false;\r\n this.isMaxFileNameCountReached = false;\r\n this.isFilesExtensionsCorrect = true;\r\n this.isFilesSizesCorrect = true;\r\n for (let i = 0; i <= this.fileList.length - 1; i++) {\r\n const file = this.fileList[i];\r\n if (!this.validateExtension(file)) {\r\n this.isFilesExtensionsCorrect = false;\r\n }\r\n if (!this.validateSize(file)) {\r\n this.isFilesSizesCorrect = false;\r\n }\r\n }\r\n if (this.fileList.length == 0) {\r\n this.initialState = true;\r\n }\r\n }\r\n\r\n removeFiles() {\r\n this.fileList = [];\r\n this.filesPreviews = [];\r\n this.isMaxFileCountReached = false;\r\n this.isMaxFileNameCountReached = false;\r\n this.isFilesExtensionsCorrect = true;\r\n this.isFilesSizesCorrect = true;\r\n this.initialState = true;\r\n }\r\n\r\n onFilesSelect($event: any) {\r\n this.createFilesArray($event.target.files);\r\n this.generateFilePreviews();\r\n this.file.nativeElement.value = '';\r\n }\r\n\r\n onFilesDrop($event: any) {\r\n this.createFilesArray($event.dataTransfer.files);\r\n this.generateFilePreviews();\r\n }\r\n\r\n createFilesArray(files: Array) {\r\n let filesLenght = this.fileList.length + files.length;\r\n if (filesLenght > this.maxFileCount) {\r\n this.isMaxFileCountReached = true;\r\n this.initialState = false;\r\n return false;\r\n }\r\n this.initialState = false;\r\n this.isMaxFileCountReached = false;\r\n\r\n let filesArray: Array = [];\r\n\r\n for (let i = 0; i <= files.length - 1; i++) {\r\n const file = files[i];\r\n if (!this.validateExtension(file)) {\r\n this.isFilesExtensionsCorrect = false;\r\n }\r\n if (!this.validateSize(file)) {\r\n this.isFilesSizesCorrect = false;\r\n }\r\n filesArray.push(file);\r\n }\r\n\r\n this.fileList = this.fileList.concat(filesArray);\r\n }\r\n\r\n generateFilePreviews() {\r\n this.fileList.forEach((file, index) => {\r\n if (this.isPreviewable(file)) {\r\n const reader = new FileReader();\r\n\r\n reader.onload = (event: any) => {\r\n this.filesPreviews[index] = event.target.result;\r\n };\r\n\r\n reader.readAsDataURL(file);\r\n } else {\r\n this.filesPreviews[index] = false;\r\n }\r\n });\r\n }\r\n\r\n validateFile(file: File): boolean {\r\n return (\r\n this.validateExtension(file) &&\r\n this.validateSize(file) &&\r\n this.validateFilenameSize(file)\r\n );\r\n }\r\n\r\n validateExtension(file: File): boolean {\r\n let ext = file.name.split('.')[file.name.split('.').length - 1];\r\n return this.allowedExtensions.lastIndexOf(ext.toLowerCase()) != -1;\r\n }\r\n\r\n validateSize(file: File): boolean {\r\n return file.size / 1024 <= 1024 * this.maxFileSize;\r\n }\r\n\r\n validateFilenameSize(file: File): boolean {\r\n if (!this.isMaxFileNameCountReached) {\r\n this.isMaxFileNameCountReached = file.name.length > this.maxFileNameSize;\r\n }\r\n\r\n return file.name.length <= this.maxFileNameSize;\r\n }\r\n\r\n isPreviewable(file: File): boolean {\r\n let ext = file.name.split('.')[file.name.split('.').length - 1];\r\n return this.previewableExtenstions.lastIndexOf(ext.toLowerCase()) != -1;\r\n }\r\n\r\n get validationIDNumberLenght() {\r\n return parseFloat(\r\n this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'IDNumberLenght'\r\n )\r\n );\r\n }\r\n\r\n get validationDNumberAlllowedCharacters() {\r\n return this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'IDNumberAllowedCharacters'\r\n );\r\n }\r\n\r\n submit() {\r\n const formData: FormData = new FormData();\r\n\r\n this.fileList.forEach((file) => {\r\n formData.append('document', file, file.name);\r\n });\r\n\r\n formData.append('documentType', this.documentType.value);\r\n\r\n if (this.showDocumentSubType) {\r\n formData.append('idDocumentType', this.documentSubType.value);\r\n formData.append('documentNumber', this.documentNumber.value);\r\n formData.append(\r\n 'expirationDate',\r\n this.expirationDate.value.toISOString()\r\n );\r\n }\r\n\r\n this.privateDocumentsListService.uploadDocuments(formData).subscribe(() => {\r\n this.dialogRef.close(true);\r\n });\r\n }\r\n\r\n onDragOver(event) {\r\n this.isInTheZone = true;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n onDragLeave(event) {\r\n this.isInTheZone = false;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n onDrop(event) {\r\n this.isInTheZone = false;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n {{ documentType.fields.Label.value }}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ documentSubType.fields.Label.value }}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{\r\n formFields.genericErrors.validationInvalidMaxLength.message\r\n }}\r\n {{\r\n formFields.genericErrors.validationInvalidPattern.message\r\n }}\r\n {{ formFields.genericErrors.validationRequired.message }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{ formFields.genericErrors.validationRequired.message }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { ApprovalPopupComponent } from './components/approval-popup/approval-popup.component';\r\nimport { InfoPopupComponent } from './components/info-popup/info-popup.component';\r\nimport { PopupComponent } from './components/popup/popup.component';\r\nimport { RadioButtonsPopupComponent } from './components/radio-buttons-popup/radio-buttons-popup.component';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DetailsConfirmPopupComponent } from './components/details-confirm-popup/details-confirm-popup.component';\r\nimport { CountryListPopupComponent } from './components/country-list-popup/country-list-popup.component';\r\nimport { AddressBookPopupComponent } from './components/address-book-popup/address-book-popup.component';\r\nimport { DefaultPortfolioSelectorComponent } from './components/default-portfolio-selector/default-portfolio-selector.component';\r\nimport { PersonalArchiveMessageComponent } from './components/personal-archive-message/personal-archive-message.component';\r\nimport { UploadDocumentComponent } from './components/upload-document/upload-document.component';\r\nimport { ErrorHandlingPopupComponent } from './components/error-handling-popup/error-handling-popup.component';\r\nimport { VirtualScrollerModule } from '@iharbeck/ngx-virtual-scroller';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { SentooPaymentPopupComponent } from './components/sentoo-payment/sentoo-payment-popup.component';\r\n\r\nconst DialogsComponents = [\r\n { name: 'Popup', type: PopupComponent },\r\n { name: 'MessagesDetailsPopup', type: PopupComponent },\r\n { name: 'MessagesDeletePopup', type: PopupComponent },\r\n { name: 'DefaultPortfolioSelector', type: DefaultPortfolioSelectorComponent },\r\n { name: 'ErrorHandlingPopup', type: PopupComponent },\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n ApprovalPopupComponent,\r\n SentooPaymentPopupComponent,\r\n InfoPopupComponent,\r\n PopupComponent,\r\n RadioButtonsPopupComponent,\r\n DetailsConfirmPopupComponent,\r\n CountryListPopupComponent,\r\n AddressBookPopupComponent,\r\n DefaultPortfolioSelectorComponent,\r\n PersonalArchiveMessageComponent,\r\n UploadDocumentComponent,\r\n ErrorHandlingPopupComponent\r\n ],\r\n imports: [CommonModule, JssModule, SharedModule, VirtualScrollerModule],\r\n entryComponents: [\r\n InfoPopupComponent,\r\n ApprovalPopupComponent,\r\n SentooPaymentPopupComponent,\r\n RadioButtonsPopupComponent,\r\n DetailsConfirmPopupComponent,\r\n CountryListPopupComponent,\r\n AddressBookPopupComponent,\r\n PersonalArchiveMessageComponent,\r\n UploadDocumentComponent,\r\n ErrorHandlingPopupComponent\r\n ]\r\n})\r\nexport class DialogsModule {}\r\n\r\nexport { DialogsComponents };\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { NavigationEnd, Router, RouterEvent } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\n\r\nenum DialogState {\r\n Open,\r\n Close,\r\n Dismiss\r\n}\r\ninterface IDialogState {\r\n rendaringName: string;\r\n dialogState: DialogState;\r\n data?: any;\r\n disableClose?: boolean;\r\n errorMessage: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DialogStateService {\r\n private dialogState: Subject;\r\n private dialogObservables: { [key: string]: any } = {};\r\n private dialogIDs: string[] = [];\r\n\r\n constructor(router: Router) {\r\n this.dialogState = new Subject();\r\n\r\n router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationEnd))\r\n .subscribe(() => {\r\n this.dialogIDs = [];\r\n });\r\n }\r\n\r\n getDialogState() {\r\n return this.dialogState.asObservable();\r\n }\r\n\r\n addDialogId(id: string) {\r\n this.dialogIDs.push(id);\r\n }\r\n\r\n checkIfPopupExists(id: string) {\r\n return this.dialogIDs.indexOf(id) !== -1;\r\n }\r\n\r\n updateDialogState(\r\n rendaringName: string,\r\n data: any,\r\n dialogState: DialogState,\r\n disableClose?: boolean\r\n ) {\r\n this.dialogState.next({\r\n rendaringName: rendaringName,\r\n dialogState: dialogState,\r\n data,\r\n disableClose\r\n });\r\n }\r\n\r\n openDialog(\r\n rendaringName: string,\r\n data?: any,\r\n disableClose?: boolean\r\n ): Observable {\r\n this.dialogState.next({\r\n rendaringName: rendaringName,\r\n dialogState: DialogState.Open,\r\n data,\r\n disableClose\r\n });\r\n\r\n return Observable.create(observer => {\r\n this.dialogObservables[rendaringName] = observer;\r\n });\r\n }\r\n\r\n updateDialogWithError(\r\n rendaringName: string,\r\n data?: any,\r\n disableClose?: boolean,\r\n errorMessage?: string\r\n ): Observable {\r\n data.errorMessage = errorMessage;\r\n this.dialogState.next({\r\n rendaringName: rendaringName,\r\n dialogState: DialogState.Open,\r\n data,\r\n disableClose\r\n });\r\n return Observable.create(observer => {\r\n this.dialogObservables[rendaringName] = observer;\r\n });\r\n }\r\n\r\n closeDialog(rendaringName: string) {\r\n this.dialogState.next({\r\n rendaringName: rendaringName,\r\n dialogState: DialogState.Close\r\n });\r\n }\r\n\r\n closeDialogByReference(rendaringName: string, data?: any) {\r\n if (this.dialogObservables[rendaringName]) {\r\n this.dialogObservables[rendaringName].next(data);\r\n delete this.dialogObservables[rendaringName];\r\n }\r\n }\r\n}\r\n\r\nexport { IDialogState, DialogState };\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class GoogleAnalyticsModule { }\r\n","import { Inject, Injectable } from '@angular/core';\r\nimport { GTM, Gtm } from './gtm';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class GoogleAnalyticsService {\r\n private isInitialized = false;\r\n\r\n constructor(@Inject(GTM) private gtm: Gtm) {}\r\n\r\n initAnalytics(trackingCode: string) {\r\n if (this.isInitialized) {\r\n return;\r\n }\r\n\r\n if (!this.gtm || !document || typeof this.gtm !== 'function' ) {\r\n return;\r\n }\r\n\r\n this.gtm({\r\n 'gtm.start': new Date().getTime(),\r\n event: 'gtm.js',\r\n });\r\n\r\n if (document !== undefined) {\r\n const head: HTMLHeadElement = document?.getElementsByTagName('head')[0];\r\n\r\n const googleTagManagerScript: HTMLScriptElement =\r\n document.createElement('script');\r\n googleTagManagerScript.async = true;\r\n googleTagManagerScript.src = `https://www.googletagmanager.com/gtag/js?id=${trackingCode}`;\r\n head.appendChild(googleTagManagerScript);\r\n\r\n const googleDataLayer: HTMLScriptElement =\r\n document.createElement('script');\r\n const scriptContent = `\r\n window.dataLayer = window.dataLayer || [];\r\n function gtag(){dataLayer.push(arguments);}\r\n gtag('js', new Date());\r\n gtag('config', '${trackingCode}');\r\n `;\r\n googleDataLayer.appendChild(document.createTextNode(scriptContent));\r\n head.appendChild(googleDataLayer);\r\n\r\n this.isInitialized = true;\r\n }\r\n }\r\n\r\n page(path: string, title?: string) {\r\n try {\r\n const params = {\r\n event: 'page',\r\n pagePath: path,\r\n };\r\n\r\n if (title) {\r\n params['pageTitle'] = title;\r\n }\r\n\r\n this.gtm(params);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n event(eventName: string, eventValue: string) {\r\n try {\r\n const params = {\r\n event: eventName,\r\n eventAction: eventValue,\r\n };\r\n\r\n this.gtm(params);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n}\r\n","import { InjectionToken, inject } from '@angular/core';\r\nimport { WINDOW_REFERENCE } from './window-reference';\r\n\r\nexport type Gtm = (object: any) => void;\r\n\r\nexport function getGtm(window: Window): Gtm {\r\n if (window) {\r\n if (!window['dataLayer']) {\r\n window['dataLayer'] = [];\r\n }\r\n\r\n return (object: any) => {\r\n window['dataLayer'].push(object as any);\r\n };\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport const GTM = new InjectionToken('gtm', {\r\n providedIn: 'root',\r\n factory: () => getGtm(inject(WINDOW_REFERENCE))\r\n});\r\n","import { InjectionToken, inject, PLATFORM_ID } from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\n\r\nexport function getWindow(platformId: any) {\r\n return isPlatformBrowser(platformId) ? window : null;\r\n}\r\n\r\nexport const WINDOW_REFERENCE = new InjectionToken('window-reference', {\r\n providedIn: 'root',\r\n factory: () => getWindow(inject(PLATFORM_ID))\r\n});\r\n","import { Injectable } from '@angular/core';\r\nimport { TransferState, makeStateKey } from '@angular/platform-browser';\r\nimport { LayoutServiceData } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { map, shareReplay, catchError } from 'rxjs/operators';\r\nimport { Observable, of as observableOf, BehaviorSubject } from 'rxjs';\r\nimport { JssState } from './JssState';\r\nimport { JssLayoutService, LayoutServiceError } from './layout/jss-layout.service';\r\n\r\nexport const jssKey = makeStateKey('jss');\r\n\r\n/**\r\n * Stores the JSS app's context (current route and Sitecore context data).\r\n * This implementation runs on the client (browser) side; see jss-context.server-side.service.ts\r\n * for the implementation that runs on the server (SSR) side.\r\n */\r\n@Injectable()\r\nexport class JssContextService {\r\n // components can subscribe to this (or use getValue()) to get access to latest data from Layout Service,\r\n // as well as current language and server route\r\n state: BehaviorSubject;\r\n\r\n constructor(protected transferState: TransferState, protected layoutService: JssLayoutService) {\r\n this.state = new BehaviorSubject(new JssState());\r\n }\r\n\r\n changeLanguage(language: string) {\r\n this.state.next({ ...this.state.value, language });\r\n }\r\n\r\n // primarily invoked by JssRouteResolver on URL/route change\r\n changeRoute(route: string, language: string): Observable {\r\n // on client initial load, retrieve initial state from server\r\n const foundInitialState = this.transferState.hasKey(jssKey);\r\n if (foundInitialState) {\r\n const jssState = this.transferState.get(jssKey, null);\r\n this.transferState.remove(jssKey);\r\n this.state.next(jssState);\r\n return observableOf(jssState);\r\n }\r\n\r\n const appLanguage = this.state.value.language || language;\r\n\r\n const jssState$ = this.layoutService.getRouteData(route, appLanguage).pipe(\r\n map((routeData) => {\r\n const lsResult = routeData as LayoutServiceData;\r\n\r\n const result = new JssState();\r\n result.sitecore = lsResult.sitecore ? lsResult.sitecore : null;\r\n result.language = appLanguage;\r\n result.serverRoute = route;\r\n return result;\r\n }),\r\n catchError((error: LayoutServiceError) => {\r\n const result = new JssState();\r\n result.language = appLanguage;\r\n result.serverRoute = route;\r\n result.routeFetchError = error;\r\n return observableOf(result);\r\n }),\r\n shareReplay(1)\r\n );\r\n\r\n // subscribe to it ourselves so we can maintain current state\r\n jssState$.subscribe((jssState) => {\r\n this.state.next(jssState);\r\n });\r\n\r\n return jssState$;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { HttpResponse } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class JssDataFetcherService {\r\n constructor(\r\n private readonly httpClient: HttpClient,\r\n ) {\r\n this.fetch = this.fetch.bind(this);\r\n }\r\n\r\n fetch(url: string, data: unknown): Promise> {\r\n let result: Observable;\r\n\r\n const options = {\r\n withCredentials: true,\r\n };\r\n\r\n if (data) {\r\n result = this.httpClient.post(url, data, options);\r\n } else {\r\n result = this.httpClient.get(url, options);\r\n }\r\n\r\n return result.toPromise()\r\n .then((responseData) => ({\r\n data: responseData as T,\r\n status: 200,\r\n statusText: 'OK'\r\n }))\r\n .catch((error: HttpErrorResponse) => {\r\n if (error instanceof Error) {\r\n throw error;\r\n }\r\n\r\n return {\r\n data: error.error as T,\r\n status: error.status,\r\n statusText: error.statusText\r\n };\r\n });\r\n }\r\n}\r\n","import { NgModule, PLATFORM_ID, Inject } from '@angular/core';\r\nimport { HttpClientModule, HttpHeaders } from '@angular/common/http';\r\nimport { InMemoryCache, NormalizedCacheObject, PossibleTypesMap } from '@apollo/client/core';\r\nimport { Apollo, ApolloModule } from 'apollo-angular';\r\nimport { HttpBatchLink } from 'apollo-angular/http';\r\nimport { createPersistedQueryLink } from 'apollo-angular/persisted-queries';\r\nimport { isPlatformServer } from '@angular/common';\r\nimport { TransferState, makeStateKey } from '@angular/platform-browser';\r\nimport { sha256 } from 'js-sha256';\r\nimport { environment } from '../environments/environment';\r\nimport { JssGraphQLService } from './jss-graphql.service';\r\n\r\n/*\r\n INTROSPECTION DATA\r\n See https://www.apollographql.com/docs/react/recipes/fragment-matching.html\r\n This enables the Apollo cache to process fragments on interface types correctly.\r\n If this file does not exist, you may need to run the `jss graphql:update` script.\r\n*/\r\nimport introspectionQueryResultData from '../graphql-fragment-types';\r\n\r\n// SSR transfer state key to serialize + rehydrate apollo cache on client side\r\n// See https://www.apollographql.com/docs/angular/recipes/server-side-rendering.html\r\nconst STATE_KEY = makeStateKey('apollo.state');\r\n\r\n@NgModule({\r\n imports: [\r\n ApolloModule,\r\n HttpClientModule, // provides HttpClient for HttpLink\r\n ],\r\n providers: [JssGraphQLService],\r\n})\r\nexport class GraphQLModule {\r\n constructor(\r\n private readonly apollo: Apollo,\r\n private readonly httpLink: HttpBatchLink,\r\n private readonly transferState: TransferState,\r\n @Inject(PLATFORM_ID) private readonly platformId: string\r\n ) {\r\n this.createApolloClient();\r\n }\r\n\r\n onServer(cache: InMemoryCache) {\r\n this.transferState.onSerialize(STATE_KEY, () => cache.extract());\r\n }\r\n\r\n onBrowser(cache: InMemoryCache) {\r\n const state = this.transferState.get(STATE_KEY, null);\r\n\r\n cache.restore(state);\r\n }\r\n\r\n private createApolloClient(): void {\r\n /*\r\n QUERY LINK SELECTION\r\n A link is transport which GraphQL queries are pushed across.\r\n You have many choices.\r\n See the apollo-link documentation for more details.\r\n */\r\n\r\n\r\n // set sc_apikey header which is required for any GraphQL calls\r\n const sc_apikey = new HttpHeaders().set('sc_apikey', environment.sitecoreApiKey);\r\n\r\n // choose between a basic HTTP link to run queries...\r\n // import { createHttpLink } from 'apollo-angular-link-http';\r\n // const link = createHttpLink({ uri: endpoint });\r\n\r\n // ...or a batched link (multiple queries within 10ms all go in one HTTP request)\r\n const batchHttp = this.httpLink.create({\r\n uri: environment.graphQLEndpoint,\r\n headers: sc_apikey\r\n });\r\n\r\n // ...and an automatic persisted query link, which reduces bandwidth by using query hashes to alias content\r\n // the APQ link is _chained_ behind another link that performs the actual HTTP calls, so you can choose\r\n // APQ + batched, or APQ + http links for example.\r\n const automaticPersistHttp = createPersistedQueryLink({ sha256 }).concat(batchHttp);\r\n\r\n const possibleTypes = {} as PossibleTypesMap;\r\n\r\n introspectionQueryResultData.__schema.types.forEach((supertype) => {\r\n possibleTypes[supertype.name] = supertype.possibleTypes.map((subtype) => subtype.name);\r\n });\r\n\r\n const cache = new InMemoryCache({\r\n possibleTypes,\r\n });\r\n\r\n this.apollo.create({\r\n link: automaticPersistHttp,\r\n cache,\r\n ssrMode: isPlatformServer(this.platformId),\r\n ssrForceFetchDelay: 100,\r\n });\r\n\r\n const isBrowser = this.transferState.hasKey(STATE_KEY);\r\n\r\n if (isBrowser) {\r\n this.onBrowser(cache);\r\n } else {\r\n this.onServer(cache);\r\n }\r\n }\r\n}\r\n","import { Injectable, PLATFORM_ID, Inject, } from '@angular/core';\r\nimport { Apollo } from 'apollo-angular';\r\nimport { ExtraSubscriptionOptions, EmptyObject, MutationResult } from 'apollo-angular/types';\r\nimport {\r\n QueryOptions,\r\n ApolloQueryResult,\r\n SubscriptionOptions,\r\n MutationOptions,\r\n DocumentNode\r\n} from '@apollo/client/core';\r\nimport { Observable, EMPTY } from 'rxjs';\r\nimport { first } from 'rxjs/operators';\r\nimport { ComponentRendering, isEditorActive, resetEditorChromes } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { JssContextService } from './jss-context.service';\r\nimport { ExecutableDefinitionNode } from 'graphql';\r\nimport { isPlatformServer } from '@angular/common';\r\n\r\nexport interface JssGraphQLOptions {\r\n renderingContext?: ComponentRendering;\r\n}\r\n\r\n/**\r\n * Provides GraphQL querying services via Apollo Client.\r\n * This service is needed to use _connected GraphQL_ with your JSS app.\r\n * If you are not using GraphQL, or are only using the _integrated GraphQL_\r\n * that is within the Layout Service, you do not need this service.\r\n *\r\n * Compared to using apollo-angular directly, using this service:\r\n * * Handles Sitecore SSR issues\r\n * * Makes available ambient $datasource and $contextItem GQL variables based on current route data\r\n * * Integrates with Sitecore Experience Editor's DOM-based update needs\r\n *\r\n * The API is identical to apollo-angular's `Apollo` service otherwise.\r\n */\r\n@Injectable()\r\nexport class JssGraphQLService {\r\n private isEditingOrPreviewingAndSsr: boolean;\r\n\r\n constructor(\r\n private readonly apollo: Apollo,\r\n private readonly sitecoreContext: JssContextService,\r\n @Inject(PLATFORM_ID) private readonly platformId: string,\r\n ) {\r\n this.isEditingOrPreviewingAndSsr =\r\n isPlatformServer(this.platformId) &&\r\n this.sitecoreContext.state.value.sitecore.context.pageState !== 'normal';\r\n }\r\n\r\n private static extractVariableNames(query: DocumentNode) {\r\n const variableNames: { [key: string]: boolean } = {};\r\n query.definitions\r\n .map((def) => (def as ExecutableDefinitionNode).variableDefinitions)\r\n .filter((def) => def)\r\n .forEach((defs) =>\r\n defs.forEach((def) => {\r\n if (def.kind && def.kind === 'VariableDefinition') {\r\n variableNames[def.variable.name.value] = true;\r\n }\r\n })\r\n );\r\n\r\n return variableNames;\r\n }\r\n\r\n /**\r\n * Executes a read query against the GraphQL endpoint\r\n */\r\n query(options: QueryOptions & JssGraphQLOptions): Observable> {\r\n if (this.isEditingOrPreviewingAndSsr) {\r\n return EMPTY;\r\n }\r\n\r\n options.variables = this.addJssAmbientVariables(options.query, options.variables, options.renderingContext);\r\n\r\n const observable = this.apollo.query(options);\r\n\r\n // When a query reply is received, and we're in Experience Editor mode,\r\n // xEditor needs to know to rebind to the editable DOM elements after they get inserted\r\n // (assuming use of `jss` field in the GQL query). This accomplishes that.\r\n observable.pipe(first()).subscribe(() => {\r\n setTimeout(() => {\r\n if (isEditorActive()) {\r\n resetEditorChromes();\r\n }\r\n }, 1000);\r\n });\r\n\r\n return observable;\r\n }\r\n\r\n /**\r\n * Executes a GraphQL mutation (write) against the GraphQL endpoint\r\n */\r\n mutate(options: MutationOptions & JssGraphQLOptions): Observable> {\r\n if (this.isEditingOrPreviewingAndSsr) {\r\n return EMPTY;\r\n }\r\n\r\n this.addJssAmbientVariables(options.mutation, options.variables, options.renderingContext);\r\n\r\n return this.apollo.mutate(options);\r\n }\r\n\r\n /**\r\n * Executes a GraphQL subscription (real-time data) against the GraphQL endpoint\r\n */\r\n subscribe(options: SubscriptionOptions & JssGraphQLOptions, extra?: ExtraSubscriptionOptions) {\r\n if (this.isEditingOrPreviewingAndSsr) {\r\n return EMPTY;\r\n }\r\n\r\n this.addJssAmbientVariables(options.query, options.variables, options.renderingContext);\r\n\r\n return this.apollo.subscribe(options, extra);\r\n }\r\n\r\n private addJssAmbientVariables(query: DocumentNode, variables: V, rendering?: ComponentRendering) {\r\n if (!variables) {\r\n variables = {} as V;\r\n }\r\n\r\n const usedVariables = JssGraphQLService.extractVariableNames(query);\r\n\r\n if (usedVariables.datasource && rendering && rendering.dataSource) {\r\n (variables as EmptyObject).datasource = rendering.dataSource;\r\n }\r\n\r\n if (\r\n usedVariables.contextItem &&\r\n this.sitecoreContext.state.value.sitecore &&\r\n this.sitecoreContext.state.value.sitecore.route &&\r\n this.sitecoreContext.state.value.sitecore.route.itemId\r\n ) {\r\n (variables as EmptyObject).contextItem = this.sitecoreContext.state.value.sitecore.route.itemId;\r\n }\r\n\r\n // pass language as a variable to the query, if language exists as a variable and in sitecoreContext\r\n if (\r\n usedVariables.language &&\r\n this.sitecoreContext.state.value.language\r\n ) {\r\n (variables as EmptyObject).language = this.sitecoreContext.state.value.language;\r\n }\r\n\r\n return variables;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\n\r\nexport interface MetaSettings {\r\n title?: string;\r\n}\r\n\r\n@Injectable()\r\nexport class JssMetaService {\r\n constructor(private titleService: Title, private meta: Meta) {}\r\n\r\n setTitle(title?: string) {\r\n this.titleService.setTitle(title);\r\n }\r\n\r\n setTag(name: string, value: string) {\r\n this.meta.addTag({ name, content: value });\r\n }\r\n\r\n update(meta: MetaSettings) {\r\n this.setTitle(meta.title);\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-footer-wrapper',\r\n templateUrl: './footer-wrapper.component.html',\r\n styleUrls: ['./footer-wrapper.component.scss']\r\n})\r\nexport class FooterWrapperComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","\r\n","
\r\n \r\n \r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","
\r\n \r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n LayoutServiceData,\r\n LayoutServiceContextData,\r\n} from '@sitecore-jss/sitecore-jss-angular';\r\nimport { from as fromPromise, Observable, throwError as observableThrow } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { layoutServiceFactory } from '../lib/layout-service-factory';\r\n\r\nconst layoutServiceInstance = layoutServiceFactory.create();\r\n\r\nexport class LayoutServiceError {\r\n status: number;\r\n statusText: string;\r\n data?: { sitecore?: LayoutServiceContextData };\r\n}\r\n\r\n@Injectable()\r\nexport class JssLayoutService {\r\n getRouteData(\r\n route: string,\r\n language: string\r\n ): Observable {\r\n return fromPromise(layoutServiceInstance.fetchLayoutData(route, language)).pipe(\r\n map(routeData => {\r\n if (!routeData.sitecore.route) {\r\n // A missing route value signifies an invalid path, so simulate Not Found error\r\n const error = new LayoutServiceError();\r\n error.status = 404;\r\n error.statusText = 'Not Found';\r\n error.data = routeData;\r\n throw error;\r\n }\r\n return routeData;\r\n }),\r\n catchError(this.getLayoutServiceError)\r\n );\r\n }\r\n\r\n private getLayoutServiceError(error: { [key: string]: unknown }): Observable {\r\n if (error instanceof LayoutServiceError) {\r\n return observableThrow(error);\r\n }\r\n const layoutServiceError = new LayoutServiceError();\r\n const response = error.response as { status: number; statusText: string; data: unknown };\r\n if (response) {\r\n layoutServiceError.status = response.status;\r\n layoutServiceError.statusText = response.statusText;\r\n layoutServiceError.data = response.data;\r\n }\r\n\r\n return observableThrow(layoutServiceError);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { LayoutModule as Layout } from '@angular/cdk/layout';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { MatLegacyMenuModule } from '@angular/material/legacy-menu';\r\nimport { MatLegacyTooltipModule } from '@angular/material/legacy-tooltip';\r\n\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { FooterComponent } from './footer/footer.component';\r\nimport { LogoComponent } from './logo/logo.component';\r\nimport { NavigationComponent } from './navigation/navigation.component';\r\nimport { PageTitleComponent } from './page-title/page-title.component';\r\nimport { FooterWrapperComponent } from './footer-wrapper/footer-wrapper.component';\r\nimport { PortfolioSelectorComponent } from './portfolio-selector/portfolio-selector.component';\r\nimport { PortfolioSettingComponent } from './portfolio-setting/portfolio-setting.component';\r\nimport { SharedModule } from '../shared/shared.module';\r\n\r\nconst LayoutComponents = [\r\n { name: 'Header', type: HeaderComponent },\r\n { name: 'Logo', type: LogoComponent },\r\n { name: 'Navigation', type: NavigationComponent },\r\n { name: 'PortfolioSelector', type: PortfolioSelectorComponent },\r\n { name: 'PortfolioSetting', type: PortfolioSettingComponent },\r\n { name: 'PageTitle', type: PageTitleComponent },\r\n { name: 'Footer', type: FooterComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n JssModule,\r\n RouterModule,\r\n Layout,\r\n MatLegacyMenuModule,\r\n MatLegacyTooltipModule,\r\n SharedModule\r\n ],\r\n declarations: [\r\n HeaderComponent,\r\n FooterComponent,\r\n LogoComponent,\r\n NavigationComponent,\r\n PageTitleComponent,\r\n FooterWrapperComponent,\r\n PortfolioSelectorComponent,\r\n PortfolioSettingComponent\r\n ],\r\n exports: [\r\n HeaderComponent,\r\n FooterComponent,\r\n LogoComponent,\r\n NavigationComponent,\r\n PageTitleComponent,\r\n FooterWrapperComponent\r\n ]\r\n})\r\nexport class LayoutModule {}\r\nexport { LayoutComponents };\r\n","\r\n \r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ab-logo',\r\n templateUrl: './logo.component.html',\r\n styleUrls: ['./logo.component.scss']\r\n})\r\nexport class LogoComponent implements OnInit {\r\n @Input() rendering: any;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n HostListener,\r\n ElementRef,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { Router, ResolveEnd } from '@angular/router';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nimport { filter } from 'rxjs/operators';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/types/layout';\r\nimport { IActiveItem } from '../../shared/interfaces/active-item.interface';\r\n@Component({\r\n selector: 'ab-navigation',\r\n templateUrl: './navigation.component.html',\r\n styleUrls: ['./navigation.component.scss']\r\n})\r\nexport class NavigationComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public toggleMobileMenu = false;\r\n public inMobileView: boolean;\r\n public subMenuOpen: { [key: string]: boolean } = {};\r\n\r\n private breakpointSubscription: Subscription;\r\n private routerSubscription: Subscription;\r\n\r\n @HostListener('document:click', ['$event'])\r\n documentClick(event) {\r\n if (!this.element.nativeElement.contains(event.target)) {\r\n this.subMenuOpen = {};\r\n }\r\n }\r\n\r\n constructor(\r\n private breakpointObserver: BreakpointObserver,\r\n private element: ElementRef,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.selectActiveMenu(this.router.url);\r\n\r\n this.breakpointSubscription = this.breakpointObserver\r\n .observe('(max-width: 767.98px)')\r\n .subscribe((state: BreakpointState) => {\r\n this.inMobileView = state.matches;\r\n });\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(filter(event => event instanceof ResolveEnd))\r\n .subscribe(event => {\r\n this.subMenuOpen = {};\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.breakpointSubscription) {\r\n this.breakpointSubscription.unsubscribe();\r\n }\r\n\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n showMobileMenu() {\r\n this.toggleMobileMenu = !this.toggleMobileMenu;\r\n }\r\n\r\n isOpen(id: string) {\r\n return !!this.subMenuOpen[id];\r\n }\r\n\r\n showSubMenu(link, id: string) {\r\n if (link) {\r\n this.router.navigate([link.url]);\r\n return;\r\n }\r\n\r\n if (!this.inMobileView && !this.subMenuOpen[id]) {\r\n this.subMenuOpen = {};\r\n }\r\n\r\n this.subMenuOpen[id] = !this.subMenuOpen[id];\r\n }\r\n\r\n isAccessEnabled(items: Item[]) {\r\n if (!items || items.length === 0) {\r\n return true;\r\n }\r\n\r\n return items.some((subItem: any) => {\r\n return subItem.fields.Link?.fields.AccessEnabled === 'True';\r\n });\r\n }\r\n\r\n private selectActiveMenu(url: string) {\r\n if (url.indexOf('?') !== -1) {\r\n url = url.split('?')[0];\r\n }\r\n\r\n const items = this.rendering.fields\r\n ? (this.rendering.fields.items as IActiveItem[])\r\n : [];\r\n\r\n if (items && items.length !== 0) {\r\n items.some(item => {\r\n this.setActiveMenuRecursive(item, item, url);\r\n\r\n return item.isActive;\r\n });\r\n }\r\n }\r\n\r\n private setActiveMenuRecursive(\r\n mainItem: IActiveItem,\r\n item: Item,\r\n url: string\r\n ) {\r\n if (item.fields.Link) {\r\n mainItem.isActive = (item.fields.Link as any).url.indexOf(url) !== -1;\r\n } else {\r\n if (\r\n item.fields.items &&\r\n (item.fields.items as IActiveItem[]).length !== 0\r\n ) {\r\n (item.fields.items as IActiveItem[]).some(subItem => {\r\n this.setActiveMenuRecursive(mainItem, subItem, url);\r\n\r\n return mainItem.isActive;\r\n });\r\n } else {\r\n mainItem.isActive = false;\r\n }\r\n }\r\n }\r\n}\r\n","\r\n","\r\n
\r\n

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

\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-page-title',\r\n templateUrl: './page-title.component.html',\r\n styleUrls: ['./page-title.component.scss']\r\n})\r\nexport class PageTitleComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public title: any;\r\n public description: any;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n if (this.rendering.fields) {\r\n this.title = (this.rendering.fields.title as Field).value;\r\n this.description = (this.rendering.fields.description as Field).value;\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n OnDestroy,\r\n Input,\r\n ViewChildren,\r\n QueryList,\r\n HostListener,\r\n AfterViewInit,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MatLegacyMenu, MatLegacyMenuTrigger } from '@angular/material/legacy-menu';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { IPortfolio, PortfolioService, PortfolioResponse } from '../../shared/services/portfolio.service';\r\nimport { LoginService } from '../../login/services/login.service';\r\nimport { UserService } from '../../shared/services/user.service';\r\nimport { BasketCheckPaymentsService } from '../../transfers/services/basket-check-payments.service';\r\nimport { DialogStateService } from '../../dialogs/services/dialog-state.service';\r\nimport { timeout } from 'rxjs/operators';\r\nimport { FullPortfolioViewService } from './../../shared/services/full-portfolio-view.service';\r\n\r\n@Component({\r\n selector: 'ab-portfolio-selector',\r\n templateUrl: './portfolio-selector.component.html',\r\n styleUrls: ['./portfolio-selector.component.scss'],\r\n})\r\nexport class PortfolioSelectorComponent implements OnInit, AfterViewInit, OnDestroy {\r\n @Input() rendering: any;\r\n @ViewChildren(MatLegacyMenu) matMenuPortfolio: QueryList;\r\n @ViewChildren(MatLegacyMenuTrigger)\r\n menuTriggers: QueryList;\r\n\r\n private portfolioMenuTrigger: MatLegacyMenuTrigger;\r\n private isMenuOpen: boolean;\r\n private subscriptions: Subscription[] = [];\r\n\r\n public portfolios: IPortfolio[];\r\n public username: string;\r\n isLoading = false;\r\n isLoadingPortfolios = true;\r\n\r\n constructor(\r\n private portfolioService: PortfolioService,\r\n private loginService: LoginService,\r\n private router: Router,\r\n private userService: UserService,\r\n private basketCheckPaymentsService: BasketCheckPaymentsService,\r\n private dialogStateService: DialogStateService,\r\n private renderer: Renderer2,\r\n private fullPortfolioViewService: FullPortfolioViewService\r\n ) {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n documentClick(event) {\r\n if (\r\n document.querySelector('.portfolio-actions-list') &&\r\n !document.querySelector('.portfolio-actions-list').contains(event.target as Node)\r\n ) {\r\n if (this.portfolioMenuTrigger && !this.isMenuOpen) {\r\n this.portfolioMenuTrigger.closeMenu();\r\n this.portfolioMenuTrigger = undefined;\r\n return;\r\n }\r\n\r\n this.isMenuOpen = false;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.getPortfolios();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.menuTriggers.changes.subscribe(() => {\r\n this.menuTriggers.forEach((menuTrigger) => {\r\n menuTrigger.menuOpened.subscribe(() => {\r\n this.portfolioMenuTrigger = menuTrigger;\r\n this.isMenuOpen = true;\r\n });\r\n });\r\n });\r\n }\r\n\r\n getPortfolios() {\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService.getFullPortfolioView().subscribe((res) => {\r\n this.subscriptions.push(\r\n this.portfolioService.getPortfolios().subscribe((response) => {\r\n this.isLoadingPortfolios = false;\r\n this.publishSelectedPortfolio(response);\r\n this.portfolios = response.portfolios;\r\n this.username = response.name;\r\n })\r\n );\r\n })\r\n );\r\n }\r\n\r\n publishSelectedPortfolio(response: PortfolioResponse): void {\r\n response.portfolios.forEach((portfolio) => {\r\n if (portfolio.isSelected) {\r\n this.portfolioService.setCurrentPortfolio(portfolio);\r\n }\r\n });\r\n }\r\n\r\n changePortfolio(portfolioId: string) {\r\n this.subscriptions.push(\r\n this.portfolioService.changePortfolio({ portfolioId: portfolioId }).subscribe((response) => {\r\n if (response.updated) {\r\n const url = this.rendering.fields.HomeLink.url;\r\n this.router.navigate([url]);\r\n }\r\n })\r\n );\r\n }\r\n\r\n logout() {\r\n this.showLoader();\r\n this.subscriptions.push(\r\n this.basketCheckPaymentsService\r\n .checkPayments()\r\n .pipe(timeout(5000))\r\n .subscribe(\r\n (response) => {\r\n this.hideLoader();\r\n if (response) {\r\n this.dialogStateService.openDialog('PendingApproval').subscribe((response) => {\r\n if (response) {\r\n this.logoutUser();\r\n }\r\n });\r\n } else {\r\n this.logoutUser();\r\n }\r\n },\r\n () => {\r\n this.logoutUser();\r\n }\r\n )\r\n );\r\n }\r\n\r\n logoutUser() {\r\n this.loginService.logout().subscribe((response) => {\r\n if (response.callIsSuccess) {\r\n this.userService.logoutUser();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscriptions) {\r\n this.subscriptions.forEach((subscription) => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n }\r\n\r\n private showLoader() {\r\n this.renderer.setStyle(document.body, 'overflow', 'hidden');\r\n this.isLoading = true;\r\n }\r\n\r\n private hideLoader() {\r\n this.renderer.removeStyle(document.body, 'overflow');\r\n this.isLoading = false;\r\n }\r\n}\r\n","
\r\n \r\n \r\n {{ username }}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { combineLatest, Subscription } from 'rxjs';\r\nimport { IProduct } from '../../dashboard/services/account-overview.service';\r\nimport {\r\n DefaultPortfolioResponse,\r\n DefaultPortfolioService\r\n} from '../../shared/services/default-portfolio.service';\r\nimport {\r\n IPortfolio,\r\n PortfolioService\r\n} from '../../shared/services/portfolio.service';\r\nimport {\r\n DialogState,\r\n DialogStateService\r\n} from './../../dialogs/services/dialog-state.service';\r\n\r\nimport { FullPortfolioViewService } from '../../shared/services/full-portfolio-view.service';\r\n\r\n@Component({\r\n selector: 'ab-portfolio-setting',\r\n templateUrl: './portfolio-setting.component.html',\r\n styleUrls: ['./portfolio-setting.component.scss']\r\n})\r\nexport class PortfolioSettingComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public portfolios: Array;\r\n private subscription: Subscription;\r\n private subscriptions: Subscription[] = [];\r\n private dialogStateSubscription: Subscription;\r\n private fullPortfolioViewSubscription: Subscription;\r\n public tooltipInfo: Field;\r\n public accounts: IProduct[] = [];\r\n public accountDetails: { [key: string]: IProduct } = {};\r\n public isLoading: boolean = true;\r\n public popupIsOpen: boolean;\r\n public defaultPortfolio: DefaultPortfolioResponse;\r\n constructor(\r\n private portfolioService: PortfolioService,\r\n private dialogStateService: DialogStateService,\r\n private defaultPortfolioService: DefaultPortfolioService,\r\n private fullPortfolioViewService: FullPortfolioViewService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.isLoading = true;\r\n this.subscriptions.push(\r\n this.fullPortfolioViewService\r\n .getFullPortfolioView()\r\n .subscribe(accounts => {\r\n this.subscription = combineLatest(\r\n this.portfolioService.getPortfolios(),\r\n this.defaultPortfolioService.getPortfolio()\r\n ).subscribe(([portfolios, defaultPortfolio]) => {\r\n this.isLoading = false;\r\n this.portfolios = portfolios.portfolios;\r\n this.accountDetails = accounts.bankAccounts;\r\n this.defaultPortfolio = defaultPortfolio;\r\n this.setAccountOptions();\r\n this.setDefaultPortfolio();\r\n\r\n this.dialogStateService.updateDialogState(\r\n 'DefaultPortfolioSelector',\r\n {\r\n selectedPortfolio: this.defaultPortfolio,\r\n portfolios: this.portfolios,\r\n accounts: this.accounts,\r\n isLoading: false\r\n },\r\n this.popupIsOpen === true ? DialogState.Open : DialogState.Close\r\n );\r\n });\r\n })\r\n );\r\n\r\n this.tooltipInfo = this.rendering.fields.tooltip as Field;\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n if (this.dialogStateSubscription) {\r\n this.dialogStateSubscription.unsubscribe();\r\n }\r\n if (this.fullPortfolioViewSubscription) {\r\n this.fullPortfolioViewSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n setDefaultPortfolio() {\r\n this.portfolios.forEach(portfolio => {\r\n portfolio.isDefault =\r\n portfolio.id === this.defaultPortfolio.portfolioNumber;\r\n });\r\n }\r\n\r\n setAccountOptions(accountsDetails?: { [key: string]: IProduct }) {\r\n this.accounts = Object.values(\r\n this.accountDetails || accountsDetails\r\n ).filter(accounts => accounts?.status === 'open');\r\n }\r\n\r\n openDialog() {\r\n if (this.defaultPortfolio && this.defaultPortfolio.portfolioNumber) {\r\n this.setDefaultPortfolio();\r\n }\r\n\r\n this.setAccountOptions();\r\n this.popupIsOpen = true;\r\n this.dialogStateService\r\n .openDialog('DefaultPortfolioSelector', {\r\n portfolios: this.portfolios,\r\n accounts: this.accounts,\r\n isLoading: this.isLoading\r\n })\r\n .subscribe(result => {\r\n if (result) {\r\n this.popupIsOpen = false;\r\n this.defaultPortfolioService\r\n .getPortfolio()\r\n .subscribe(\r\n defaultPortfolio => (this.defaultPortfolio = defaultPortfolio)\r\n );\r\n this.fullPortfolioViewService.clearBankAccounts();\r\n this.fullPortfolioViewSubscription = this.fullPortfolioViewService\r\n .getFullPortfolioView()\r\n .subscribe(accountsDetails => {\r\n this.accountDetails = accountsDetails.bankAccounts;\r\n });\r\n }\r\n });\r\n\r\n this.dialogStateSubscription = this.dialogStateService\r\n .getDialogState()\r\n .subscribe(state => {\r\n if (state.dialogState)\r\n this.popupIsOpen =\r\n state.dialogState === DialogState.Open ? true : false;\r\n });\r\n }\r\n}\r\n","\r\n\r\n","import {\r\n LayoutService,\r\n RestLayoutService\r\n} from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nexport class LayoutServiceFactory {\r\n create(): LayoutService {\r\n return new RestLayoutService({\r\n apiHost: '',\r\n apiKey: '{2A4DCA72-3283-4714-B8C9-D175B84CF9F4}',\r\n siteName: '',\r\n configurationName: 'jss'\r\n });\r\n }\r\n}\r\n\r\nexport const layoutServiceFactory = new LayoutServiceFactory();\r\n","import {\r\n Component,\r\n Input,\r\n Output,\r\n OnDestroy,\r\n OnInit,\r\n EventEmitter,\r\n} from '@angular/core';\r\n\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields,\r\n} from './../../../shared/services/form-fields-generator.service';\r\n\r\nimport { QrCodeService } from './../../services/qr-code.service';\r\nimport { StatusService } from './../../services/status.service';\r\nimport { AB_DASHBOARD_URL } from './../../../shared/constants';\r\nimport { GetItemListFieldsService } from './../../../shared/services/get-item-list-fields.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/types/layout';\r\nimport { NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { Subscription, filter, interval, switchMap } from 'rxjs';\r\nimport { InitialViewService } from './../../../shared/services/initial-view.service';\r\nimport { IdleService } from './../../../session/services/idle.service';\r\nimport { AccountDetailsService } from './../../../shared/services/account-details.service';\r\nimport { UserAgentService } from './../../../shared/services/user-agent.service';\r\nimport { GoogleAnalyticsService } from '../../../../app/google-analytics/services/google-analytics.service';\r\n\r\n@Component({\r\n selector: 'ab-landing',\r\n templateUrl: './landing.component.html',\r\n styleUrls: ['./landing.component.scss'],\r\n})\r\nexport class LandingComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @Output() loginWithToken: EventEmitter = new EventEmitter();\r\n\r\n public items: { [key: string]: Item };\r\n public formFields: FormFields;\r\n public apiError = false;\r\n public isLoading = false;\r\n public routerSubscription: Subscription;\r\n public isDesktop: boolean;\r\n public loginWith: { [key: string]: { [name: string]: Field } };\r\n public helpSteps: Item;\r\n public pageTitle: Field;\r\n public description: Field;\r\n public qrCodeImage: string;\r\n public loginRequestId: string;\r\n public retryQR = false;\r\n private statusSubscription: Subscription;\r\n private qrCodeSubscription: Subscription;\r\n\r\n constructor(\r\n protected router: Router,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private qrCodeService: QrCodeService,\r\n private statusService: StatusService,\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n private accountDetailsService: AccountDetailsService,\r\n private initialViewService: InitialViewService,\r\n private idleService: IdleService,\r\n private userAgentService: UserAgentService,\r\n private googleAnalyticsService: GoogleAnalyticsService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.idleService.stopRefreshToken();\r\n this.isDesktop = this.userAgentService.isDesktopDevice();\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as FormFields;\r\n\r\n if (\r\n this.rendering.fields?.items &&\r\n (this.rendering.fields.items).length !== 0\r\n ) {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.rendering.fields.items as Item[]\r\n );\r\n this.loginWith = this.getItemListFieldsService.getFields(\r\n (this.rendering.fields.items as Item[]).filter(\r\n (o) => o.name === 'LoginWith'\r\n )[0]\r\n );\r\n }\r\n\r\n this.getQRCode();\r\n }\r\n\r\n getQRCode(): void {\r\n this.isLoading = true;\r\n this.qrCodeSubscription = this.qrCodeService.getQrCode().subscribe(\r\n (qrcodeImageResponse) => {\r\n if (this.retryQR) {\r\n this.retryQR = false;\r\n }\r\n this.isLoading = false;\r\n this.qrCodeImage =\r\n 'data:image/jpeg;base64,' + qrcodeImageResponse.imageBytes;\r\n this.loginRequestId = qrcodeImageResponse.loginRequestId;\r\n this.pollLoginStatus();\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n\r\n pollLoginStatus(): void {\r\n const statusObservable$ = interval(8000).pipe(\r\n switchMap(() => this.statusService.getStatus(this.loginRequestId))\r\n );\r\n\r\n this.statusSubscription = statusObservable$.subscribe({\r\n next: (status) => {\r\n if (status) {\r\n this.idleService.doRefreshToken();\r\n this.accountDetailsService.setFromLogin();\r\n\r\n this.googleAnalyticsService.event('login_method', 'QR');\r\n\r\n this.isLoading = true;\r\n\r\n this.statusSubscription.unsubscribe();\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(\r\n filter((event: RouterEvent) => event instanceof NavigationStart)\r\n )\r\n .subscribe(() => {\r\n this.initialViewService.getInitialView().subscribe(() => {});\r\n });\r\n this.router.navigate([AB_DASHBOARD_URL]);\r\n }\r\n },\r\n error: (error) => {\r\n this.retryQR = true;\r\n this.isLoading = false;\r\n },\r\n });\r\n }\r\n\r\n openApp(): void {\r\n if (this.items.continueWithApp.fields.description) {\r\n window.location.replace(\r\n (\r\n this.items.continueWithApp.fields.description as Field\r\n ).value.toString()\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n if (this.statusSubscription) {\r\n this.statusSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n \r\n\r\n

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

\r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n
    \r\n
    \r\n 1\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 2\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 3\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

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

\r\n\r\n
\r\n
\r\n
    \r\n \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields,\r\n} from './../../../shared/services/form-fields-generator.service';\r\n\r\nimport { LoginRequest, LoginService } from './../../services/login.service';\r\nimport { AB_DASHBOARD_URL } from './../../../shared/constants';\r\nimport { GetItemListFieldsService } from './../../../shared/services/get-item-list-fields.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/types/layout';\r\nimport {\r\n ActivatedRoute,\r\n NavigationStart,\r\n Router,\r\n RouterEvent,\r\n} from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\nimport { InitialViewService } from './../../../shared/services/initial-view.service';\r\nimport { IdleService } from './../../../session/services/idle.service';\r\nimport { AccountDetailsService } from './../../../shared/services/account-details.service';\r\nimport { UserAgentService } from './../../../shared/services/user-agent.service';\r\nimport { ConfigurationSettingsContextService } from '../../../shared/services/configuration-settings-context.service';\r\nimport { GoogleAnalyticsService } from '../../../../app/google-analytics/services/google-analytics.service';\r\n\r\ntype LoginMethod = 'qr' | 'app' | 'token';\r\n@Component({\r\n selector: 'ab-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss'],\r\n})\r\nexport class LoginComponent implements OnInit, AfterViewInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild('usernameInput') usernameInput: ElementRef;\r\n @ViewChild('passwordInput') passwordInput: ElementRef;\r\n\r\n public title: Field;\r\n public submitButtonText: Field;\r\n public items: { [key: string]: Item };\r\n public formFields: FormFields;\r\n public apiError = false;\r\n public userBlockedError = false;\r\n public invalidCredentialsError = false;\r\n public invalidLoginMessage = '';\r\n public isLoading = false;\r\n public loginForm = new UntypedFormGroup({\r\n username: new UntypedFormControl('', Validators.required),\r\n logincode: new UntypedFormControl('', Validators.required),\r\n otpType: new UntypedFormControl(''),\r\n });\r\n public routerSubscription: Subscription;\r\n public isDesktop: boolean;\r\n public loginMethod: LoginMethod;\r\n public loginWith: { [key: string]: { [name: string]: Field } };\r\n public helpSteps: Item;\r\n public pageTitle: Field;\r\n public toggleButton: Field;\r\n public description: Field;\r\n public qrCodeImage: string;\r\n public loginRequestId: string;\r\n public displaySentooLoginScreen: boolean;\r\n public QRloginParam: string;\r\n\r\n constructor(\r\n protected router: Router,\r\n private route: ActivatedRoute,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private loginService: LoginService,\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n private accountDetailsService: AccountDetailsService,\r\n private initialViewService: InitialViewService,\r\n private idleService: IdleService,\r\n private userAgentService: UserAgentService,\r\n private configurationSettingsContextService: ConfigurationSettingsContextService,\r\n private googleAnalyticsService: GoogleAnalyticsService\r\n ) {}\r\n\r\n get username() {\r\n return this.loginForm.get('username');\r\n }\r\n\r\n get logincode() {\r\n return this.loginForm.get('logincode');\r\n }\r\n\r\n get otpType() {\r\n return this.loginForm.get('otpType');\r\n }\r\n\r\n get allowQRLogin() {\r\n return this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'AllowQRLogin'\r\n );\r\n }\r\n\r\n get getMaintenanceMode() {\r\n return this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'MaintenanceModeEnabled'\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.QRloginParam = this.route.snapshot.queryParamMap.get('QRlogin');\r\n\r\n this.displaySentooLoginScreen =\r\n this.allowQRLogin || this.QRloginParam ? true : false;\r\n this.idleService.stopRefreshToken();\r\n this.submitButtonText = this.rendering?.fields?.submitButtonText as Field;\r\n this.isDesktop = this.userAgentService.isDesktopDevice();\r\n this.loginMethod = 'app';\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as FormFields;\r\n if (\r\n this.rendering?.fields?.items &&\r\n (this.rendering?.fields?.items).length !== 0\r\n ) {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.rendering.fields.items as Item[]\r\n );\r\n this.loginWith = this.getItemListFieldsService.getFields(\r\n (this.rendering.fields.items as Item[]).filter(\r\n (o) => o.name === 'LoginWith'\r\n )[0]\r\n );\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.usernameInput) {\r\n this.usernameInput.nativeElement.focus();\r\n }\r\n }\r\n\r\n loginWithToken() {\r\n this.loginMethod = 'token';\r\n }\r\n\r\n loginWithApp() {\r\n this.loginMethod = 'app';\r\n }\r\n\r\n submitAction() {\r\n if (this.loginForm.valid) {\r\n this.loginService.login(this.loginForm.value as LoginRequest).subscribe(\r\n (response) => {\r\n this.handleResponse(response);\r\n },\r\n (error) => {\r\n this.handleResponse(error);\r\n }\r\n );\r\n }\r\n }\r\n\r\n changeToken(tokenValue) {\r\n if (tokenValue) {\r\n this.otpType?.setValue(tokenValue);\r\n this.username?.setValue(this.usernameInput.nativeElement.value);\r\n setTimeout(() => {\r\n this.passwordInput.nativeElement.focus();\r\n });\r\n }\r\n }\r\n\r\n handleResponse(response) {\r\n if (!response || !response.callIsSuccess) {\r\n this.apiError = true;\r\n this.loginForm.reset({\r\n otpType: '',\r\n });\r\n if (response.error) {\r\n this.userBlockedError = response.error.errorCode === 'User.Blocked';\r\n this.invalidCredentialsError =\r\n response.error.errorCode === 'User.Failed';\r\n this.invalidLoginMessage = response.error.loginErrorMessage;\r\n }\r\n } else {\r\n this.idleService.doRefreshToken();\r\n this.accountDetailsService.setFromLogin();\r\n\r\n this.googleAnalyticsService.event(\r\n 'login_method',\r\n this.otpType.value === 'mobilephoneValue' ? 'soft_token' : 'hard_token'\r\n );\r\n\r\n this.isLoading = true;\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n this.initialViewService.getInitialView().subscribe(() => {});\r\n });\r\n this.router.navigate([AB_DASHBOARD_URL]);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

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

\r\n \r\n
\r\n {{ formFields.genericErrors.userBlocked.message }}\r\n
\r\n
\r\n\r\n \r\n
\r\n {{ formFields.genericErrors.userFailed.message }}\r\n
\r\n
\r\n\r\n \r\n
\r\n {{ invalidLoginMessage }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n\r\n {{\r\n formFields.genericErrors.usernameRequired.message\r\n }}\r\n
\r\n\r\n
\r\n
    \r\n
  • \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
  • \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n {{\r\n formFields.genericErrors.required.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n {{\r\n formFields.genericErrors.required.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n
    \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import {\r\n Component,\r\n Input,\r\n Output,\r\n OnDestroy,\r\n OnInit,\r\n EventEmitter,\r\n ElementRef,\r\n ViewChild,\r\n} from '@angular/core';\r\n\r\nimport {\r\n UntypedFormControl,\r\n UntypedFormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\n\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields,\r\n} from './../../../shared/services/form-fields-generator.service';\r\n\r\nimport { LoginRequest, LoginService } from './../../services/login.service';\r\nimport { AB_DASHBOARD_URL } from './../../../shared/constants';\r\nimport { GetItemListFieldsService } from './../../../shared/services/get-item-list-fields.service';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/types/layout';\r\nimport { NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { Subscription, filter, interval, switchMap } from 'rxjs';\r\nimport { InitialViewService } from './../../../shared/services/initial-view.service';\r\nimport { IdleService } from './../../../session/services/idle.service';\r\nimport { AccountDetailsService } from './../../../shared/services/account-details.service';\r\nimport { GoogleAnalyticsService } from '../../../../app/google-analytics/services/google-analytics.service';\r\n\r\n@Component({\r\n selector: 'ab-token-form',\r\n templateUrl: './token-form.component.html',\r\n styleUrls: ['./token-form.component.scss'],\r\n})\r\nexport class TokenFormComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @Output() loginWithApp: EventEmitter = new EventEmitter();\r\n @ViewChild('usernameInput') usernameInput: ElementRef;\r\n @ViewChild('passwordInput') passwordInput: ElementRef;\r\n\r\n public submitButtonText: Field;\r\n public items: { [key: string]: Item };\r\n public formFields: FormFields;\r\n public apiError = false;\r\n public userBlockedError = false;\r\n public invalidCredentialsError = false;\r\n public invalidLoginMessage = '';\r\n public isLoading = false;\r\n public loginForm = new UntypedFormGroup({\r\n username: new UntypedFormControl('', Validators.required),\r\n logincode: new UntypedFormControl('', Validators.required),\r\n otpType: new UntypedFormControl(''),\r\n });\r\n public routerSubscription: Subscription;\r\n public loginWith: { [key: string]: { [name: string]: Field } };\r\n public helpSteps: Item;\r\n public pageTitle: Field;\r\n public helpMethod = 'token';\r\n\r\n constructor(\r\n protected router: Router,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private loginService: LoginService,\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n private accountDetailsService: AccountDetailsService,\r\n private initialViewService: InitialViewService,\r\n private idleService: IdleService,\r\n private googleAnalyticsService: GoogleAnalyticsService\r\n ) {}\r\n\r\n get username() {\r\n return this.loginForm.get('username');\r\n }\r\n\r\n get logincode() {\r\n return this.loginForm.get('logincode');\r\n }\r\n\r\n get otpType() {\r\n return this.loginForm.get('otpType');\r\n }\r\n\r\n ngOnInit() {\r\n this.idleService.stopRefreshToken();\r\n this.submitButtonText = this.rendering.fields.submitButtonText as Field;\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as FormFields;\r\n if (\r\n this.rendering.fields.items &&\r\n (this.rendering.fields.items).length !== 0\r\n ) {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.rendering.fields.items as Item[]\r\n );\r\n this.loginWith = this.getItemListFieldsService.getFields(\r\n (this.rendering.fields.items as Item[]).filter(\r\n (o) => o.name === 'LoginWith'\r\n )[0]\r\n );\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.usernameInput) {\r\n this.usernameInput.nativeElement.focus();\r\n }\r\n }\r\n\r\n selectActiveTab(method) {\r\n this.helpMethod = method;\r\n }\r\n\r\n submitAction() {\r\n if (this.loginForm.valid) {\r\n this.loginService.login(this.loginForm.value as LoginRequest).subscribe(\r\n (response) => {\r\n this.handleResponse(response);\r\n },\r\n (error) => {\r\n this.handleResponse(error);\r\n }\r\n );\r\n }\r\n }\r\n\r\n handleResponse(response) {\r\n if (!response || !response.callIsSuccess) {\r\n this.apiError = true;\r\n this.loginForm.reset({\r\n otpType: '',\r\n });\r\n if (response.error) {\r\n this.userBlockedError = response.error.errorCode === 'User.Blocked';\r\n this.invalidCredentialsError =\r\n response.error.errorCode === 'User.Failed';\r\n this.invalidLoginMessage = response.error.loginErrorMessage;\r\n }\r\n } else {\r\n this.idleService.doRefreshToken();\r\n this.accountDetailsService.setFromLogin();\r\n\r\n this.googleAnalyticsService.event('login_method', 'token');\r\n this.isLoading = true;\r\n\r\n this.routerSubscription = this.router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n this.initialViewService.getInitialView().subscribe(() => {});\r\n });\r\n this.router.navigate([AB_DASHBOARD_URL]);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.routerSubscription) {\r\n this.routerSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","

\r\n\r\n\r\n
\r\n {{ formFields.genericErrors.userBlocked.message }}\r\n
\r\n
\r\n\r\n\r\n
\r\n {{ formFields.genericErrors.userFailed.message }}\r\n
\r\n
\r\n\r\n\r\n
\r\n {{ invalidLoginMessage }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n \r\n
  • \r\n
  • \r\n \r\n
  • \r\n
\r\n \r\n
\r\n
    \r\n \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n
\r\n \r\n
\r\n
    \r\n \r\n
  • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nimport { SharedModule } from './../shared/shared.module';\r\nimport { LandingComponent } from './components/landing/landing.component';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { TokenFormComponent } from './components/token-form/token-form.component';\r\nimport { LayoutModule } from '../layout/layout.module';\r\n\r\nconst LoginComponents = [\r\n { name: 'Login', type: LoginComponent },\r\n { name: 'Landing', type: LandingComponent },\r\n { name: 'TokenForm', type: TokenFormComponent }\r\n];\r\n\r\n@NgModule({\r\n declarations: [LoginComponent, LandingComponent, TokenFormComponent],\r\n exports: [LoginComponent],\r\n imports: [\r\n SharedModule,\r\n CommonModule,\r\n LayoutModule,\r\n JssModule,\r\n ReactiveFormsModule\r\n ]\r\n})\r\nexport class LoginModule {}\r\n\r\nexport { LoginComponents };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n ApiResponse,\r\n ApiClientService\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_LOGIN } from './../../shared/constants';\r\n\r\nenum tokentype {\r\n mobilephoneValue = 'softToken',\r\n abopassValue = 'hardToken'\r\n}\r\ninterface LoginRequest extends ApiResponse {\r\n username: string;\r\n logincode: string;\r\n otpType: tokentype;\r\n}\r\n\r\ninterface LoginResponse extends LoginRequest {\r\n DisableMode: string;\r\n callIsSuccess: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_LOGIN);\r\n }\r\n\r\n login(loginInputRequest: LoginRequest): Observable {\r\n return this.postWithButtonLoader({\r\n username: loginInputRequest.username,\r\n password: loginInputRequest.logincode,\r\n tokentype: tokentype[loginInputRequest.otpType]\r\n });\r\n }\r\n\r\n logout(): Observable {\r\n return this.delete();\r\n }\r\n}\r\n\r\nexport { LoginRequest, LoginResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { ApiClientService } from './../../shared/services/api-client.service';\r\nimport { AB_API_QRCODE } from './../../shared/constants';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class QrCodeService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_QRCODE);\r\n }\r\n\r\n getQrCode(): Observable {\r\n return this.get();\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AB_API_QRCODE_STATUS } from '../../../app/shared/constants';\r\nimport { ApiClientService } from '../../../app/shared/services/api-client.service';\r\n\r\nexport interface StatusResponse {\r\n callIsSuccess: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StatusService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_QRCODE_STATUS);\r\n }\r\n\r\n getStatus(loginRequestId: string): Observable {\r\n return this.post({\r\n loginRequestId\r\n });\r\n }\r\n}\r\n","import { Component, Input, OnDestroy, OnInit, Renderer2 } from '@angular/core';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Router } from '@angular/router';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/types/layout';\r\nimport { FormFields, FormFieldsGeneratorService } from '../../../shared/services/form-fields-generator.service';\r\nimport {ConfigurationSettingsContextService} from '../../../shared/services/configuration-settings-context.service';\r\n\r\n@Component({\r\n selector: 'ab-maintenance',\r\n templateUrl: './maintenance.component.html',\r\n styleUrls: ['./maintenance.component.scss'],\r\n})\r\nexport class MaintenanceComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public formFields: FormFields;\r\n public items: { [key: string]: Item };\r\n public pageTitle: Field;\r\n\r\n constructor(\r\n protected router: Router,\r\n private renderer: Renderer2,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private configurationSettingsContextService: ConfigurationSettingsContextService,\r\n ) {}\r\n\r\n get getMaintenanceMode() {\r\n return this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'MaintenanceModeEnabled'\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.renderer.addClass(document.getElementsByClassName('main')[0], 'maintenance');\r\n }\r\n}\r\n","
\r\n
\r\n

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

\r\n \r\n
\r\n
","import {ANALYZE_FOR_ENTRY_COMPONENTS, NgModule} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport {DYNAMIC_COMPONENT, JssModule} from '@sitecore-jss/sitecore-jss-angular';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { MaintenanceComponent } from './components/maintenance/maintenance.component';\r\nimport { LayoutModule } from '../layout/layout.module';\r\nimport {ROUTES} from \"@angular/router\"\r\nconst ProviderArray = {};\r\nconst MaintenanceComponents = [\r\n { name: 'MaintenanceMode', type: MaintenanceComponent }\r\n];\r\n@NgModule({\r\n declarations: [MaintenanceComponent],\r\n exports: [MaintenanceComponent],\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n JssModule\r\n ],\r\n})\r\nexport class MaintenanceModule {}\r\nexport { MaintenanceComponents };\r\n","// This file is generated do not modify manually\r\nexport const miscellaneous = [\r\n { path: 'Contact', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'ExchangeRates', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'BlockAccount', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'TravelNotice', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'LinkCreditCard', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'AccountsBanner', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'ActivateTextBanking', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'LinkAtmCard', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'RequestApp', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'ATMPINCode', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'BlockBankCard', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'OverdraftList', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'ManageMobileDevices', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'Mashup', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n { path: 'NewAccount', loadChildren: () =>\r\n import('./miscellaneous.module').then(m => m.MiscellaneousModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const orcoAddressbook = [\r\n { path: 'OrcoAddressBookForm', loadChildren: () =>\r\n import('./orco-addressbook.module').then(m => m.OrcoAddressbookModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const orcoLayout = [\r\n { path: 'OrcoNavigation', loadChildren: () =>\r\n import('./orco-layout.module').then(m => m.OrcoLayoutModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const orcoMiscellaneous = [\r\n { path: 'OrcoTravelNotice', loadChildren: () =>\r\n import('./orco-miscellaneous.module').then(m => m.OrcoMiscellaneousModule) },\r\n { path: 'OrcoAccountsBanner', loadChildren: () =>\r\n import('./orco-miscellaneous.module').then(m => m.OrcoMiscellaneousModule) },\r\n { path: 'OrcoContactForm', loadChildren: () =>\r\n import('./orco-miscellaneous.module').then(m => m.OrcoMiscellaneousModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const orcoPersonalArchive = [\r\n { path: 'OrcoUnreadMessages', loadChildren: () =>\r\n import('./orco-personal-archive.module').then(m => m.OrcoPersonalArchiveModule) },\r\n { path: 'OrcoArchiveIcon', loadChildren: () =>\r\n import('./orco-personal-archive.module').then(m => m.OrcoPersonalArchiveModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const orcoTransfers = [\r\n { path: 'OrcoTransfer', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n { path: 'OrcoBulkHeader', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n { path: 'OrcoBulkDomesticForm', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n { path: 'OrcoBulkInternationalForm', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n { path: 'OrcoBulkHeaderDetails', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n { path: 'OrcoBulkTransfersDetails', loadChildren: () =>\r\n import('./orco-transfers.module').then(m => m.OrcoTransfersModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const overdraft = [\r\n { path: 'ApplyForOverdraftSteps', loadChildren: () =>\r\n import('./overdraft.module').then(m => m.OverdraftModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const personalArchive = [\r\n { path: 'MessagesList', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'PrivateDocumentsList', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'MessagesListSearch', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'PrintMessage', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'MessagesPanel', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'UnreadMessages', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n { path: 'ArchiveIcon', loadChildren: () =>\r\n import('./personal-archive.module').then(m => m.PersonalArchiveModule) },\r\n];\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_PERSONALARCHIVE_MESSAGES_COUNT } from './../../shared/constants';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\n\r\nenum MessagesType {\r\n All,\r\n UnRead\r\n}\r\n\r\ninterface MessagesCountResponse extends ApiResponse {\r\n messagesCount: number;\r\n callIsSuccess: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MessagesCountService extends ApiClientService {\r\n private unreadMessagesCount = new ReplaySubject(null);\r\n private isLoaded = false;\r\n private isLoading = false;\r\n private cleanTimer = null;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PERSONALARCHIVE_MESSAGES_COUNT);\r\n }\r\n\r\n getUnreadMessagesCount(): Observable {\r\n if (this.isLoaded) {\r\n return this.unreadMessagesCount.asObservable();\r\n }\r\n\r\n if (!this.isLoading) {\r\n this.isLoading = true;\r\n\r\n this.get({ messagesType: MessagesType.UnRead }).subscribe(\r\n res => {\r\n this.isLoading = false;\r\n this.isLoaded = true;\r\n this.unreadMessagesCount.next({ ...res });\r\n this.startCleanTimer();\r\n },\r\n error => {\r\n this.isLoading = false;\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n\r\n return this.unreadMessagesCount.asObservable();\r\n }\r\n\r\n getUnreadMessagesCountWithRefresh(): Observable {\r\n this.cleanUnreadMessagesCount();\r\n\r\n return this.getUnreadMessagesCount();\r\n }\r\n\r\n cleanUnreadMessagesCount() {\r\n this.stopCleanTimer();\r\n this.isLoaded = false;\r\n this.unreadMessagesCount.complete();\r\n this.unreadMessagesCount = new ReplaySubject(null);\r\n }\r\n\r\n private startCleanTimer() {\r\n this.cleanTimer = setTimeout(() => {\r\n this.cleanUnreadMessagesCount();\r\n }, 300000); // 5 minutes timeout\r\n }\r\n\r\n private stopCleanTimer() {\r\n clearTimeout(this.cleanTimer);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_PERSONALARCHIVE_MESSAGES } from './../../shared/constants';\r\n\r\ninterface IMessage {\r\n id: string;\r\n body?: string;\r\n itemType: string;\r\n itemTypeName: string;\r\n itemTypeDisplayName: string;\r\n createdDate: Date;\r\n subject: string;\r\n author: Author;\r\n isRead: boolean;\r\n documentId: string;\r\n}\r\n\r\ninterface Author {\r\n name: string;\r\n}\r\n\r\ninterface ISearchMessagesRequest {\r\n fromDate?: string;\r\n toDate?: string;\r\n searchText?: string;\r\n}\r\n\r\ninterface MessagesResponse extends ApiResponse {\r\n messagesList: Array;\r\n callIsSuccess: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MessagesListService extends ApiClientService {\r\n private messageStatus = new Subject();\r\n private messageDeleted = new Subject();\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PERSONALARCHIVE_MESSAGES);\r\n }\r\n\r\n public getMessages(maxCount: string): Observable {\r\n return this.get({ maxCount: maxCount });\r\n }\r\n\r\n public getMessage(id: string): Observable {\r\n return this.get({ id: id });\r\n }\r\n\r\n public getMessagesList(\r\n request?: ISearchMessagesRequest\r\n ): Observable {\r\n return this.get(request);\r\n }\r\n\r\n public deleteMessage(id: string): Observable {\r\n return this.delete({ id: id });\r\n }\r\n\r\n public getMessageStatus(): Observable {\r\n return this.messageStatus.asObservable();\r\n }\r\n\r\n public publishMessageStatus(message: IMessage): void {\r\n this.messageStatus.next(message);\r\n }\r\n\r\n public getDeletedMessage(): Observable {\r\n return this.messageDeleted.asObservable();\r\n }\r\n\r\n public publishDeteledMessage(messageId: string): void {\r\n this.messageDeleted.next(messageId);\r\n }\r\n}\r\n\r\nexport { IMessage, ISearchMessagesRequest, MessagesResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_PERSONALARCHIVE_PRIVATE_DOCUMENTS } from './../../shared/constants';\r\n\r\ninterface IDocuments {\r\n documentId: string;\r\n name: string;\r\n documentType: string;\r\n date: Date;\r\n extension: string;\r\n size: string;\r\n portfolioNumber?: string;\r\n}\r\n\r\ninterface PrivateDocumentsListResponse extends ApiResponse {\r\n documentsList: Array;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PrivateDocumentsListService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PERSONALARCHIVE_PRIVATE_DOCUMENTS);\r\n }\r\n\r\n getDocuments(type: string): Observable {\r\n return this.get({ type });\r\n }\r\n\r\n uploadDocuments(formData: FormData): Observable {\r\n return this.postWithButtonLoader(formData);\r\n }\r\n}\r\n\r\nexport { PrivateDocumentsListResponse, IDocuments };\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators\r\n} from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\nimport * as moment from 'moment';\r\n\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields\r\n} from './../../../shared/services/form-fields-generator.service';\r\n\r\nimport {\r\n NewTokenRequestModel,\r\n NewTokenRequestResult,\r\n RequestLoginToolService\r\n} from './../../services/request-login-tool.service';\r\n\r\nimport { DialogStateService } from './../../../dialogs/services/dialog-state.service';\r\nimport {\r\n AB_DATE_MOMENT_FORMAT,\r\n AB_LOGIN_FORM_URL,\r\n AB_LOGIN_NAME_PATTERN,\r\n AB_LOGIN_USERNAME_PATTERN\r\n} from './../../../shared/constants';\r\n\r\n@Component({\r\n selector: 'ab-login',\r\n templateUrl: './request-login-tool.component.html',\r\n styleUrls: ['./request-login-tool.component.scss']\r\n})\r\nexport class RequestLoginToolComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public submitButtonText: Field;\r\n public formBottomText: Field;\r\n public formFields: FormFields;\r\n\r\n public maxDateOfBirth: moment.Moment = moment().subtract(14, 'years');\r\n public minDateOfBirth: moment.Moment = moment().subtract(100, 'years');\r\n public noPhone = false;\r\n public selectToken = false;\r\n public apiLoading = false;\r\n public apiError = false;\r\n\r\n public requestLoginToolForm = new UntypedFormGroup({\r\n mobileDeviceType: new UntypedFormControl('', [Validators.required]),\r\n name: new UntypedFormControl('', [\r\n Validators.required,\r\n Validators.pattern(AB_LOGIN_NAME_PATTERN),\r\n Validators.maxLength(50)\r\n ]),\r\n username: new UntypedFormControl('', [\r\n Validators.required,\r\n Validators.pattern(AB_LOGIN_USERNAME_PATTERN),\r\n Validators.maxLength(20),\r\n Validators.minLength(8)\r\n ]),\r\n dateOfBirth: new UntypedFormControl('', [Validators.required]),\r\n reason: new UntypedFormControl('', [Validators.required]),\r\n pickupBranch: new UntypedFormControl('', [Validators.required])\r\n });\r\n\r\n get mobileDeviceTypeField() {\r\n return this.requestLoginToolForm.get('mobileDeviceType');\r\n }\r\n\r\n get nameField() {\r\n return this.requestLoginToolForm.get('name');\r\n }\r\n\r\n get usernameField() {\r\n return this.requestLoginToolForm.get('username');\r\n }\r\n\r\n get dateOfBirthField() {\r\n return this.requestLoginToolForm.get('dateOfBirth');\r\n }\r\n\r\n get reasonField() {\r\n return this.requestLoginToolForm.get('reason');\r\n }\r\n\r\n get pickupBranchField() {\r\n return this.requestLoginToolForm.get('pickupBranch');\r\n }\r\n\r\n constructor(\r\n protected router: Router,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private requestLoginToolService: RequestLoginToolService,\r\n private dialogStateService: DialogStateService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.submitButtonText = this.rendering.fields.submitButtonText as Field;\r\n this.formBottomText = this.rendering.fields.FormBottomText as Field;\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as FormFields;\r\n\r\n this.mobileDeviceTypeField.valueChanges.subscribe(value => {\r\n this.reasonField.reset('');\r\n if (value === 'Android' || value === 'iOS') {\r\n this.selectToken = true;\r\n this.noPhone = false;\r\n this.pickupBranchField.reset('');\r\n this.reasonField.clearValidators();\r\n this.reasonField.updateValueAndValidity();\r\n this.pickupBranchField.clearValidators();\r\n this.pickupBranchField.updateValueAndValidity();\r\n } else if (value === 'hardToken' || value === 'replaceToken') {\r\n this.selectToken = true;\r\n this.noPhone = true;\r\n this.pickupBranchField.setValidators(Validators.required);\r\n this.pickupBranchField.updateValueAndValidity();\r\n\r\n if (value === 'replaceToken') {\r\n this.reasonField.setValidators(Validators.required);\r\n } else {\r\n this.reasonField.clearValidators();\r\n }\r\n\r\n this.reasonField.updateValueAndValidity();\r\n } else {\r\n this.selectToken = false;\r\n }\r\n });\r\n }\r\n\r\n cancel() {\r\n this.router.navigate([AB_LOGIN_FORM_URL]);\r\n }\r\n\r\n submitAction() {\r\n if (this.requestLoginToolForm.valid) {\r\n this.apiLoading = true;\r\n const formValue = this.requestLoginToolForm.value;\r\n const newTokenRequestModel = {\r\n dateOfBirth: formValue.dateOfBirth.format(AB_DATE_MOMENT_FORMAT),\r\n name: formValue.name,\r\n username: formValue.username,\r\n mobileDeviceType: 'None'\r\n };\r\n\r\n if (\r\n formValue.mobileDeviceType === 'hardToken' ||\r\n formValue.mobileDeviceType === 'replaceToken'\r\n ) {\r\n newTokenRequestModel.tokenType = '2';\r\n newTokenRequestModel.pickupBranch = formValue.pickupBranch;\r\n newTokenRequestModel.reason =\r\n formValue.mobileDeviceType === 'replaceToken'\r\n ? formValue.reason\r\n : 'New';\r\n } else {\r\n newTokenRequestModel.tokenType = '1';\r\n newTokenRequestModel.mobileDeviceType = formValue.mobileDeviceType;\r\n }\r\n\r\n this.requestLoginToolService.send(newTokenRequestModel).subscribe(\r\n response => {\r\n this.handleResponse(response);\r\n },\r\n error => {\r\n this.handleResponse(error);\r\n }\r\n );\r\n }\r\n }\r\n\r\n private handleResponse(response: NewTokenRequestResult) {\r\n this.apiLoading = false;\r\n\r\n if (!response || !response.callIsSuccess) {\r\n this.apiError = true;\r\n this.requestLoginToolForm.reset();\r\n } else {\r\n this.openSucces();\r\n }\r\n }\r\n\r\n private openSucces() {\r\n // Depending on which token type is selected a different popup will be opened\r\n if (\r\n this.mobileDeviceTypeField.value === 'Android' ||\r\n this.mobileDeviceTypeField.value === 'iOS'\r\n ) {\r\n this.dialogStateService.openDialog('appSuccess').subscribe(() => {\r\n this.reset();\r\n this.router.navigate([AB_LOGIN_FORM_URL]);\r\n });\r\n } else {\r\n this.dialogStateService.openDialog('tokenSuccess').subscribe(() => {\r\n this.reset();\r\n this.router.navigate([AB_LOGIN_FORM_URL]);\r\n });\r\n }\r\n }\r\n\r\n private reset() {\r\n this.requestLoginToolForm.reset();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ device.fields.Label.value }}\r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n {{\r\n formFields.genericErrors.validationRequestLoginToolNameRegex\r\n .message\r\n }}\r\n\r\n {{\r\n formFields.genericErrors\r\n .validationRequestLoginToolNameLength.message\r\n }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n {{\r\n formFields.genericErrors\r\n .validationRequestLoginToolUserNameRegex.message\r\n }}\r\n {{\r\n formFields.genericErrors\r\n .validationRequestLoginToolUserNameLength.message\r\n }}\r\n {{\r\n formFields.genericErrors\r\n .validationRequestLoginToolUserNameRegex.message\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n \r\n {{\r\n formFields.genericErrors\r\n .validationRequestLoginToolDateOfBirthMaximum.message\r\n }}\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ branch.fields.Label.value }}\r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{ reason.fields.Label.value }}\r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { RequestLoginToolComponent } from './components/request-login-tool/request-login-tool.component';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nconst PublicComponents = [\r\n { name: 'RequestLoginTool', type: RequestLoginToolComponent }\r\n];\r\n\r\n@NgModule({\r\n declarations: [RequestLoginToolComponent],\r\n exports: [RequestLoginToolComponent],\r\n imports: [SharedModule, CommonModule, JssModule, ReactiveFormsModule]\r\n})\r\nexport class PublicModule {}\r\n\r\nexport { PublicComponents };\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ApiClientService } from './../../shared/services/api-client.service';\r\nimport { AB_API_REQUEST_LOGIN_TOOL } from '../../shared/constants';\r\n\r\ninterface NewTokenRequestModel {\r\n tokenType: string;\r\n mobileDeviceType: string;\r\n dateOfBirth: Date;\r\n username: string;\r\n reason: string;\r\n name: string;\r\n pickupBranch: string;\r\n}\r\n\r\ninterface NewTokenRequestResult {\r\n callIsSuccess: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RequestLoginToolService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_REQUEST_LOGIN_TOOL);\r\n }\r\n\r\n public send(message: NewTokenRequestModel) {\r\n return this.putWithButtonLoader(message);\r\n }\r\n}\r\n\r\nexport { NewTokenRequestModel, NewTokenRequestResult };\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { UntypedFormGroup, UntypedFormControl } from '@angular/forms';\r\nimport { ComponentRendering, Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n FormFieldsGeneratorService,\r\n FormFields\r\n} from './../../../shared/services/form-fields-generator.service';\r\nimport { DataSubscriptionService } from './../../../shared/services/data-subscription.service';\r\nimport {\r\n /*ReportingRequest, */ REPORTING_EVENTS,\r\n ReportingService\r\n} from './../../services/reporting.service';\r\nimport * as moment from 'moment';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\n@Component({\r\n selector: 'ab-audit-report-search',\r\n templateUrl: './audit-report-search.component.html',\r\n styleUrls: ['./audit-report-search.component.scss']\r\n})\r\nexport class AuditReportSearchComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n public formFields: FormFields;\r\n public toDateMax = new Date();\r\n public fromDateMax: moment.Moment = moment();\r\n public fromDateMin: moment.Moment = moment()\r\n .year(1950)\r\n .month(0)\r\n .date(1);\r\n public selectedReportType: string;\r\n public pageNumber: number;\r\n public searchForm: UntypedFormGroup;\r\n public page = 0;\r\n public hasMore = false;\r\n public isLoading = false;\r\n public showNoFound = false;\r\n public noFound: Item;\r\n public isFileDownloading = false;\r\n\r\n constructor(\r\n private reportingService: ReportingService,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private dataSubscriptionService: DataSubscriptionService,\r\n private cookieService: CookieService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as FormFields;\r\n\r\n this.dataSubscriptionService.initOnScroll(() => this.onScroll());\r\n\r\n this.searchForm = new UntypedFormGroup({\r\n fromDate: new UntypedFormControl(moment().subtract(30, 'days'), []),\r\n toDate: new UntypedFormControl(moment(), []),\r\n selectedReportType: new UntypedFormControl(\r\n (this.formFields.fields.select.values[0] as any).fields.Value.value,\r\n []\r\n ),\r\n selectedReportFormat: new UntypedFormControl(\r\n (this.formFields.fields.selectFormat\r\n .values[0] as any).fields.Value.value,\r\n []\r\n )\r\n });\r\n (this.rendering.fields.items as Item[]).some(o => {\r\n if (o.name === 'NoFound') {\r\n this.noFound = o;\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n\r\n get fromDateField() {\r\n return this.searchForm.get('fromDate');\r\n }\r\n\r\n get toDateField() {\r\n return this.searchForm.get('toDate');\r\n }\r\n\r\n get toDateMin() {\r\n if (this.fromDateMax.isAfter(this.fromDateField.value)) {\r\n return this.fromDateField.value;\r\n }\r\n\r\n return this.fromDateMin;\r\n }\r\n\r\n onScroll(): void {\r\n this.page++;\r\n this.dataSubscriptionService.publishEvent(REPORTING_EVENTS.SCROLLING);\r\n this.getReport(false);\r\n }\r\n\r\n onSubmit(): void {\r\n if (this.searchForm.valid) {\r\n this.page = 0;\r\n this.isLoading = true;\r\n this.dataSubscriptionService.publishEvent(REPORTING_EVENTS.SEARCHING);\r\n this.getReport(true);\r\n }\r\n }\r\n\r\n getReport(afterSubmit: boolean): void {\r\n this.reportingService.getReport(this.searchForm.value, this.page).subscribe(\r\n response => {\r\n this.stopLoading();\r\n this.hasMore = response.items.length !== 0;\r\n\r\n if (this.page === 0) {\r\n this.showNoFound = !this.hasMore;\r\n } else {\r\n this.showNoFound = false;\r\n }\r\n\r\n this.publishData(response, afterSubmit);\r\n },\r\n error => {\r\n console.error(error);\r\n this.stopLoading();\r\n }\r\n );\r\n }\r\n\r\n publishData(response, afterSubmit: boolean): void {\r\n const data = Object.assign(response);\r\n data.page = this.page;\r\n data.title = this.getTitle();\r\n data.hasMore = this.hasMore;\r\n data.afterSubmit = afterSubmit;\r\n\r\n this.dataSubscriptionService.publishData(\r\n this.searchForm.value.selectedReportType === 'SignInLog'\r\n ? REPORTING_EVENTS.SIGN_IN\r\n : REPORTING_EVENTS.MONEY_TRANSFER,\r\n data\r\n );\r\n }\r\n\r\n getTitle(): string {\r\n const arr = this.formFields.fields.select.values.filter((item: any) => {\r\n return (\r\n item.fields.Value.value === this.searchForm.value.selectedReportType\r\n );\r\n });\r\n\r\n return (arr[0] as any).fields.Label.value;\r\n }\r\n\r\n public download(): void {\r\n if (this.searchForm.valid) {\r\n this.isFileDownloading = true;\r\n\r\n const interval = setInterval(() => {\r\n if (\r\n this.cookieService.check('reportFileType') &&\r\n this.searchForm.get('selectedReportType').value ===\r\n this.cookieService.get('reportFileType')\r\n ) {\r\n this.cookieService.set('reportFileType', '0', null, '/', null, true);\r\n this.isFileDownloading = false;\r\n clearInterval(interval);\r\n }\r\n }, 500);\r\n\r\n window.location.href = this.reportingService.download(\r\n this.searchForm.value\r\n );\r\n }\r\n }\r\n\r\n private stopLoading() {\r\n this.isLoading = false;\r\n this.dataSubscriptionService.publishEvent(REPORTING_EVENTS.STOP_LOADING);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n \r\n {{ formFields.genericErrors.validationDateRange.message }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n \r\n {{ formFields.genericErrors.validationInvalidMinToDate.message }}\r\n \r\n {{ formFields.genericErrors.validationDateRange.message }}\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{ card.fields.Label.value }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ card.fields.Label.value }}\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport {\r\n ComponentRendering,\r\n Field,\r\n Item\r\n} from '@sitecore-jss/sitecore-jss/layout';\r\nimport { ReportTableComponent } from '../report-table/report-table.component';\r\nimport { REPORTING_EVENTS } from './../../services/reporting.service';\r\nimport { ICurrency } from './../../../shared/interfaces/currency.interface';\r\nimport { GetItemListFieldsService } from '../../../shared/services/get-item-list-fields.service';\r\nimport { DataSubscriptionService } from '../../../shared/services/data-subscription.service';\r\n\r\ninterface ITransferData {\r\n refN: string;\r\n beneficiary: string;\r\n amount: ICurrency;\r\n approveeId: string;\r\n approvedDate: Date;\r\n createId: string;\r\n createDate: Date;\r\n modifyId: string;\r\n modifyDate: Date;\r\n preApproveeId: string;\r\n preApproveeDate: Date;\r\n}\r\n\r\n@Component({\r\n selector: 'ab-money-transfer-table',\r\n templateUrl: './money-transfer-table.component.html',\r\n styleUrls: ['./money-transfer-table.component.scss']\r\n})\r\nexport class MoneyTransferTableComponent extends ReportTableComponent\r\n implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n public declare items: Array;\r\n public fields: { [key: string]: { [name: string]: Field } };\r\n\r\n constructor(\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n dataSubscriptionService: DataSubscriptionService\r\n ) {\r\n super(dataSubscriptionService);\r\n }\r\n\r\n ngOnInit() {\r\n this.subscribe(REPORTING_EVENTS.MONEY_TRANSFER);\r\n this.columns = (this.rendering.fields.items as Array)\r\n .filter(item => item.displayName !== 'Metadata')\r\n .map(column => {\r\n return column.fields.label.value;\r\n });\r\n\r\n this.fields = this.getItemListFieldsService.getFields(\r\n (this.rendering.fields.items as Item[]).filter(\r\n o => o.name === 'Metadata'\r\n )[0]\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 {{ totalNumberOfRecordsAvailable }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ column }}
\r\n \r\n \r\n \r\n {{ item.refN }}{{ item.beneficiary }}{{ item.amount | abCurrency }}{{ item.approveeId }}{{ item.approvedDate | date: 'MM/dd/yyyy hh:mm a' }}
\r\n
\r\n \r\n \r\n

{{ item.preApproveeId }}

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

{{ item.preApproveeDate | date: 'MM/dd/yyyy hh:mm a' }}

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

{{ item.createId }}

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

{{ item.createDate | date: 'MM/dd/yyyy hh:mm a' }}

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

{{ item.modifyId }}

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

{{ item.modifyDate | date: 'MM/dd/yyyy hh:mm a' }}

\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnDestroy } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { DataSubscriptionService } from './../../../shared/services/data-subscription.service';\r\nimport { REPORTING_EVENTS } from './../../services/reporting.service';\r\n\r\n@Component({\r\n selector: 'ab-report-table',\r\n templateUrl: './report-table.component.html',\r\n styleUrls: ['./report-table.component.scss']\r\n})\r\nexport class ReportTableComponent implements OnDestroy {\r\n public columns: Array;\r\n public totalNumberOfRecordsAvailable: number;\r\n public items: Array = [];\r\n public dataSubscription: Subscription;\r\n public show: boolean;\r\n public isLoading: boolean;\r\n public title: string;\r\n public hasMore: boolean;\r\n\r\n constructor(private dataSubscriptionService: DataSubscriptionService) {}\r\n\r\n subscribe(type: string): void {\r\n this.dataSubscription = this.dataSubscriptionService\r\n .getData()\r\n .subscribe(data => {\r\n switch (data.event) {\r\n case type:\r\n this.show = true;\r\n this.hasMore = data.data.hasMore;\r\n\r\n if (data.data.hasMore || data.data.afterSubmit) {\r\n this.title = data.data.title;\r\n this.totalNumberOfRecordsAvailable =\r\n data.data.totalNumberOfRecordsAvailable;\r\n this.items =\r\n data.data.page === 0\r\n ? data.data.items\r\n : this.items.concat(data.data.items);\r\n }\r\n break;\r\n case REPORTING_EVENTS.SCROLLING:\r\n this.isLoading = true;\r\n break;\r\n case REPORTING_EVENTS.STOP_LOADING:\r\n this.isLoading = false;\r\n break;\r\n default:\r\n this.show = false;\r\n break;\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.dataSubscription.unsubscribe();\r\n }\r\n\r\n onScroll() {\r\n if (!this.isLoading) {\r\n this.isLoading = true;\r\n this.dataSubscriptionService.onScroll();\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { ReportTableComponent } from '../report-table/report-table.component';\r\nimport { REPORTING_EVENTS } from './../../services/reporting.service';\r\n\r\ninterface ILogData {\r\n userId: string;\r\n logDateTime: string;\r\n ipAddress: string;\r\n messages: string;\r\n}\r\n\r\n@Component({\r\n selector: 'ab-sign-in-log-table',\r\n templateUrl: './sign-in-log-table.component.html',\r\n styleUrls: ['./sign-in-log-table.component.scss']\r\n})\r\nexport class SignInLogTableComponent extends ReportTableComponent\r\n implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n declare public items: Array;\r\n public totalRecordLabel: string;\r\n\r\n ngOnInit() {\r\n this.subscribe(REPORTING_EVENTS.SIGN_IN);\r\n this.columns = (this.rendering.fields.items as Array).map(column => {\r\n return column.fields.label.value;\r\n });\r\n this.totalRecordLabel = this.columns.pop();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{ title }}

\r\n
\r\n
\r\n {{ totalRecordLabel }}\r\n {{ totalNumberOfRecordsAvailable }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ column }}
{{ item.userId }}{{ item.logDateTime | date: 'MM/dd/yyyy hh:mm:ss' }}{{ item.ipAddress }}{{ item.messages }}
\r\n\r\n
\r\n
\r\n \r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SharedModule } from './../shared/shared.module';\r\n\r\nimport { AuditReportSearchComponent } from './components/audit-report-search/audit-report-search.component';\r\nimport { MoneyTransferTableComponent } from './components/money-transfer-table/money-transfer-table.component';\r\nimport { SignInLogTableComponent } from './components/sign-in-log-table/sign-in-log-table.component';\r\nimport { ReportTableComponent } from './components/report-table/report-table.component';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nconst ReportingComponents = [\r\n { name: 'AuditReportSearch', type: AuditReportSearchComponent },\r\n { name: 'MoneyTransferTable', type: MoneyTransferTableComponent },\r\n { name: 'SignInLogTable', type: SignInLogTableComponent }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n AuditReportSearchComponent,\r\n MoneyTransferTableComponent,\r\n SignInLogTableComponent,\r\n ReportTableComponent\r\n ],\r\n imports: [CommonModule, JssModule, SharedModule]\r\n})\r\nexport class ReportingModule {}\r\nexport { ReportingComponents };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n // ApiResponse,\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport {\r\n AB_API_REPORTING_TABLE,\r\n AB_API_REPORTING_DOWNLOAD,\r\n AB_API_BASE,\r\n AB_API_DOMAIN\r\n} from './../../shared/constants';\r\nimport * as moment from 'moment';\r\n\r\ninterface ReportingRequest {\r\n fromDate: moment.Moment;\r\n toDate: moment.Moment;\r\n selectedReportType: string;\r\n selectedReportFormat?: string;\r\n pageNumber?: string;\r\n}\r\n\r\ninterface ReportingResponse extends ApiResponse {\r\n items: Array;\r\n totalNumberOfRecordsAvailable: number;\r\n type: string;\r\n}\r\n\r\nconst REPORTING_EVENTS = {\r\n SIGN_IN: 'auditReportSignInLog',\r\n MONEY_TRANSFER: 'auditReportMoneyTransfer',\r\n SEARCHING: 'auditReportSearching',\r\n SCROLLING: 'auditReportScrolling',\r\n STOP_LOADING: 'stopLoading'\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ReportingService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_REPORTING_TABLE);\r\n }\r\n\r\n getReport(\r\n filter: ReportingRequest,\r\n pageNumber: number\r\n ): Observable {\r\n return this.get({\r\n fromDate: filter.fromDate.toDate().toDateString(),\r\n toDate: filter.toDate.toDate().toDateString(),\r\n selectedReportType: filter.selectedReportType,\r\n pageNumber: pageNumber\r\n });\r\n }\r\n\r\n getDownloadUrl(): string {\r\n return AB_API_DOMAIN + AB_API_BASE + AB_API_REPORTING_DOWNLOAD;\r\n }\r\n\r\n public download(request: ReportingRequest): string {\r\n let params = new HttpParams();\r\n params = params.append(\r\n 'fromDate',\r\n request.fromDate.toDate().toDateString()\r\n );\r\n params = params.append('toDate', request.toDate.toDate().toDateString());\r\n params = params.append('selectedReportType', request.selectedReportType);\r\n params = params.append(\r\n 'selectedReportFormat',\r\n request.selectedReportFormat\r\n );\r\n return this.getDownloadUrl() + '?' + params.toString();\r\n }\r\n}\r\n\r\nexport { REPORTING_EVENTS, ReportingRequest, ReportingResponse };\r\n","import { environment as env } from '../../environments/environment';\r\nimport { Injectable } from '@angular/core';\r\n\r\nexport class JssRoute {\r\n [key: string]: string;\r\n language: string;\r\n serverRoute: string;\r\n}\r\n\r\n@Injectable()\r\nexport class JssRouteBuilderService {\r\n buildRouteUrl(route: JssRoute) {\r\n if (!route.language) {\r\n route.language = env.defaultLanguage;\r\n }\r\n if (!route.serverRoute) {\r\n route.serverRoute = env.defaultServerRoute;\r\n }\r\n return `/${route.language}${route.serverRoute}`;\r\n }\r\n\r\n parseRouteUrl(url: string[], isSSR?: boolean): JssRoute {\r\n const route = new JssRoute();\r\n // In case if we are in SSR, server will extract language from cookies\r\n route.language = isSSR ? undefined : env.defaultLanguage;\r\n route.serverRoute = env.defaultServerRoute;\r\n if (url.length === 0) {\r\n return route;\r\n }\r\n\r\n const languageRegex = /^([a-zA-Z]{2})(-[a-zA-Z]{2})?$/; // e.g. 'en' or 'en-GB'\r\n let languageSegment = url[0].toString();\r\n\r\n if (languageSegment.match(languageRegex)) {\r\n languageSegment = languageSegment.replace(languageRegex, function(_v, p1, p2) {\r\n if (p2) {\r\n // DA-dk -> da-DK\r\n return p1.toLowerCase() + p2.toUpperCase();\r\n }\r\n\r\n // EN -> en\r\n return p1.toLowerCase();\r\n });\r\n\r\n route.language = languageSegment;\r\n route.serverRoute = url.length > 1 ? url.slice(1).join('/') : env.defaultServerRoute;\r\n } else {\r\n route.serverRoute = url.join('/');\r\n }\r\n if (!route.serverRoute.startsWith('/')) {\r\n route.serverRoute = '/' + route.serverRoute;\r\n }\r\n\r\n return route;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Resolve, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { JssContextService } from '../jss-context.service';\r\nimport { JssState } from '../JssState';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class JssRouteResolver implements Resolve {\r\n constructor(\r\n private jssService: JssContextService,\r\n ) { }\r\n\r\n resolve(route: ActivatedRouteSnapshot, _state: RouterStateSnapshot): Observable {\r\n // route params are created by custom route matcher in app-routing.module\r\n return this.jssService.changeRoute(route.params.serverRoute, route.params.language);\r\n }\r\n}\r\n","/* eslint-disable no-shadow, no-console */\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { RouteData, Field, LayoutServiceContextData } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { JssState } from '../../JssState';\r\nimport { JssMetaService } from '../../jss-meta.service';\r\nimport { GoogleAnalyticsService } from '../../../app/google-analytics/services/google-analytics.service';\r\n\r\nenum LayoutState {\r\n Layout,\r\n NotFound,\r\n Error\r\n}\r\n\r\ninterface RouteFields {\r\n [name: string]: unknown;\r\n pageTitle: Field;\r\n}\r\n\r\n@Component({\r\n selector: 'ab-layout',\r\n templateUrl: './layout.component.html',\r\n})\r\nexport class LayoutComponent implements OnInit, OnDestroy {\r\n route: RouteData;\r\n state: LayoutState;\r\n LayoutState = LayoutState;\r\n subscription: Subscription;\r\n errorContextData: LayoutServiceContextData;\r\n\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private readonly meta: JssMetaService,\r\n private googleAnalyticsService: GoogleAnalyticsService\r\n ) { }\r\n\r\n ngOnInit() {\r\n // route data is populated by the JssRouteResolver\r\n this.subscription = this.activatedRoute.data.subscribe((data: { jssState: JssState }) => {\r\n if (!data.jssState) {\r\n this.state = LayoutState.NotFound;\r\n return;\r\n }\r\n\r\n if (data.jssState.sitecore && data.jssState.sitecore.route) {\r\n this.route = data.jssState.sitecore.route;\r\n this.setMetadata(this.route.fields);\r\n this.state = LayoutState.Layout;\r\n }\r\n\r\n if (data.jssState.routeFetchError) {\r\n if (data.jssState.routeFetchError.status >= 400 && data.jssState.routeFetchError.status < 500) {\r\n this.state = LayoutState.NotFound;\r\n } else {\r\n this.state = LayoutState.Error;\r\n }\r\n\r\n this.errorContextData = data.jssState.routeFetchError.data && data.jssState.routeFetchError.data.sitecore;\r\n }\r\n if (this.route && this.route.fields && this.route.fields.pageTitle) {\r\n this.googleAnalyticsService.page(\r\n this.activatedRoute.snapshot.params.serverRoute,\r\n this.route.fields.pageTitle.value as string\r\n );\r\n } else {\r\n this.googleAnalyticsService.page(\r\n this.activatedRoute.snapshot.params.serverRoute\r\n );\r\n }\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n // important to unsubscribe when the component is destroyed\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n setMetadata(routeFields: RouteFields) {\r\n // set page title, if it exists\r\n if (routeFields && routeFields.pageTitle) {\r\n this.meta.setTitle(routeFields.pageTitle.value || 'Page');\r\n }\r\n }\r\n\r\n onPlaceholderLoaded(placeholderName: string) {\r\n // you may optionally hook to the loaded event for a placeholder,\r\n // which can be useful for analytics and other DOM-based things that need to know when a placeholder's content is available.\r\n console.debug(`layout.component.ts: placeholder component fired loaded event for the ${placeholderName} placeholder`);\r\n }\r\n}\r\n","
\r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-navigation',\r\n templateUrl: './navigation.component.html',\r\n})\r\nexport class NavigationComponent {\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n","import { Component, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-not-found',\r\n templateUrl: './not-found.component.html',\r\n styleUrls: ['./not-found.component.scss']\r\n})\r\nexport class NotFoundComponent implements OnInit {\r\n // @Input() errorContextData: LayoutServiceContextData;\r\n\r\n @Input() rendering: ComponentRendering;\r\n\r\n home: any;\r\n\r\n constructor(renderer: Renderer2) {\r\n renderer.addClass(document.getElementsByTagName('main')[0], 'main-center');\r\n }\r\n\r\n ngOnInit() {\r\n this.home = this.rendering.fields.home;\r\n }\r\n\r\n goToPrevious() {\r\n window.history.back();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{home.value.text}}\r\n \r\n\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes, UrlSegment, UrlMatchResult } from '@angular/router';\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { NotFoundComponent } from './not-found/not-found.component';\r\nimport { ServerErrorComponent } from './server-error/server-error.component';\r\nimport { JssRouteResolver } from './jss-route-resolver.service';\r\nimport { JssRouteBuilderService } from './jss-route-builder.service';\r\nimport { JssModule } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NavigationComponent } from './navigation/navigation.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { VisitorIdentificationComponent } from './visitor-identification/visitor-identification.component';\r\nimport { LayoutModule } from '../layout/layout.module';\r\nimport { AuthGuardService } from '../shared/services/auth-guard.service';\r\nimport { SharedModule } from '../shared/shared.module';\r\n\r\n// eslint-disable-next-line prefer-arrow/prefer-arrow-functions\r\nexport function jssRouteMatcher(url: UrlSegment[]): UrlMatchResult {\r\n // use the route builder to parse out language / server route\r\n const routeParser = new JssRouteBuilderService();\r\n const route = routeParser.parseRouteUrl(url.map((segment) => segment.toString()));\r\n if (route == null) {\r\n return null;\r\n }\r\n\r\n // convert props to route parameters\r\n const posParams: { [key: string]: UrlSegment } = {};\r\n Object.keys(route).forEach((key) => {\r\n posParams[key] = new UrlSegment(route[key], null);\r\n });\r\n\r\n return {\r\n consumed: url,\r\n posParams\r\n };\r\n}\r\n\r\nconst routes: Routes = [\r\n { path: 'ServerError', component: ServerErrorComponent },\r\n {\r\n // matcher is effectively a catch-all route\r\n matcher: jssRouteMatcher,\r\n component: LayoutComponent,\r\n canActivate: [AuthGuardService],\r\n resolve: {\r\n jssState: JssRouteResolver\r\n },\r\n runGuardsAndResolvers: 'always',\r\n }\r\n];\r\n\r\nexport const RoutingComponents = [\r\n { name: 'NotFound', type: NotFoundComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule.forRoot(routes, { onSameUrlNavigation: 'reload', initialNavigation: 'enabledBlocking' }),\r\n JssModule,\r\n TranslateModule,\r\n BrowserModule,\r\n LayoutModule,\r\n SharedModule\r\n ],\r\n exports: [\r\n RouterModule,\r\n TranslateModule,\r\n ],\r\n declarations: [\r\n NotFoundComponent,\r\n ServerErrorComponent,\r\n LayoutComponent,\r\n NavigationComponent,\r\n VisitorIdentificationComponent\r\n ],\r\n providers: [\r\n JssRouteResolver,\r\n JssRouteBuilderService,\r\n ]\r\n})\r\nexport class RoutingModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-server-error',\r\n templateUrl: './server-error.component.html'\r\n})\r\nexport class ServerErrorComponent {}\r\n","

500: Internal Server Error

\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { JssContextService } from '../../jss-context.service';\r\n\r\nlet emittedVI = false;\r\n\r\n/**\r\n VisitorIdentification is necessary for Sitecore Analytics to determine if the visitor is a robot.\r\n If Sitecore XP (with xConnect/xDB) is used, this is required or else analytics will not be collected for the JSS app.\r\n For XM (CMS-only) apps, this should be removed.\r\n\r\n VI detection only runs once for a given analytics ID, so this is not a recurring operation once cookies are established.\r\n */\r\n@Component({\r\n selector: 'app-visitor-identification',\r\n template: ``,\r\n})\r\nexport class VisitorIdentificationComponent implements OnInit, OnDestroy {\r\n visitorIdentificationTimestamp: number;\r\n\r\n private contextSubscription: Subscription;\r\n\r\n // inject the JssContextService, which maintains the current Sitecore Context\r\n constructor(private jssContext: JssContextService) { }\r\n\r\n ngOnInit() {\r\n this.contextSubscription = this.jssContext.state.subscribe((state) => {\r\n if (state.sitecore && state.sitecore.context) {\r\n if (\r\n !emittedVI &&\r\n typeof document !== 'undefined' &&\r\n state.sitecore.context.visitorIdentificationTimestamp\r\n ) {\r\n emittedVI = true;\r\n const script = document.createElement('script');\r\n script.src = `/layouts/system/VisitorIdentification.js`;\r\n script.type = 'text/javascript';\r\n document.getElementsByTagName('head')[0].appendChild(script);\r\n }\r\n\r\n this.visitorIdentificationTimestamp = state.sitecore.context.visitorIdentificationTimestamp;\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.contextSubscription) {\r\n this.contextSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ab-connection-error',\r\n templateUrl: './connection-error.component.html',\r\n styleUrls: ['./connection-error.component.scss'],\r\n})\r\nexport class ConnectionErrorComponent implements OnInit {\r\n @Output() resetPayment: EventEmitter = new EventEmitter();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n
\r\n

Sorry! It seems like you lost connection.

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

Please check your network and try again.

\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Input, OnDestroy, OnInit } from \"@angular/core\";\r\nimport { LoginService } from \"../../../../login/services/login.service\";\r\n\r\n@Component({\r\n selector: \"ab-payment-cancelled\",\r\n templateUrl: \"./payment-cancelled.component.html\",\r\n styleUrls: [\"./payment-cancelled.component.scss\"]\r\n})\r\nexport class PaymentCancelledComponent implements OnInit, OnDestroy {\r\n @Input() returnUrl: string;\r\n\r\n constructor(private loginService: LoginService) {}\r\n\r\n ngOnInit(): void {\r\n this.loginService?.logout().subscribe((response) => {});\r\n }\r\n\r\n closePayment() {\r\n if (window && window.location) {\r\n window.location.href = this.returnUrl;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {}\r\n}\r\n","
\r\n
\r\n
\r\n

You have cancelled the payment

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

You can restart the payment at the merchant.

\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ab-payment-expired',\r\n templateUrl: './payment-expired.component.html',\r\n styleUrls: ['./payment-expired.component.scss'],\r\n})\r\nexport class PaymentExpiredComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n
\r\n

Sorry! The payment has expired.

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

Please try again later.

\r\n \r\n
\r\n
\r\n
","import {\r\n Component,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { MatLegacyDialog, MatLegacyDialogRef } from '@angular/material/legacy-dialog';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription, take } from 'rxjs';\r\nimport { IAccount } from '../../../../transfers/services/internal-accounts.service';\r\nimport { ReferenceCodesService } from '../../../../transfers/services/reference-codes.service';\r\nimport { PaymentDetailsService, Transfer } from '../../../services/payment-details.service';\r\nimport { AccountsService } from '../../../services/accounts.service';\r\nimport { CancelService } from '../../../services/cancel.service';\r\nimport { SentooService } from '../../../services/sentoo.service';\r\nimport { PaymentStatus } from '../../../services/status.service';\r\nimport { CreateSentooPaymentService, TransferModel } from '../../../services/create.service';\r\n\r\n@Component({\r\n selector: 'ab-payment-screen',\r\n templateUrl: './payment-screen.component.html',\r\n styleUrls: ['./payment-screen.component.scss'],\r\n})\r\nexport class PaymentScreenComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @Output() setPaymentStatus: EventEmitter = new EventEmitter();\r\n @Output() setMerchantInfo: EventEmitter = new EventEmitter();\r\n @Output() setCancelReturnUrl: EventEmitter = new EventEmitter();\r\n\r\n // Validate payment section\r\n @ViewChild('validatePayment') validatePayment: TemplateRef;\r\n @ViewChild('cancelPayment') cancelPaymentPopup: TemplateRef;\r\n\r\n public transfer: Transfer;\r\n public challengeCode = '';\r\n public challengeCodeError: boolean;\r\n public challengeCodeErrorMessage: string;\r\n\r\n public validatePaymentDialogRef: MatLegacyDialogRef;\r\n public cancelPaymentDialogRef: MatLegacyDialogRef;\r\n\r\n // Account list related\r\n public accounts = [];\r\n public showList = false;\r\n public selectedAccount: IAccount;\r\n\r\n // Category related\r\n public defaultValue = '';\r\n public categoryForm = new UntypedFormGroup({\r\n category: new UntypedFormControl(Validators.required),\r\n subCategory: new UntypedFormControl('', Validators.required),\r\n });\r\n public selectedAccountNumber = '';\r\n public selectedReferenceCode = '';\r\n public isSubmittingCancelPayment = false;\r\n\r\n public isLoading = false;\r\n public referenceCodes: any = [];\r\n public showCategory = true;\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private createSentooPaymentService: CreateSentooPaymentService,\r\n private dialog: MatLegacyDialog,\r\n private accountsService: AccountsService,\r\n private paymentDetailsService: PaymentDetailsService,\r\n private sentooService: SentooService,\r\n private referenceCodesService: ReferenceCodesService,\r\n private cancelService: CancelService\r\n ) {}\r\n\r\n get category() {\r\n return this.categoryForm.get('category');\r\n }\r\n\r\n get subCategory() {\r\n return this.categoryForm.get('subCategory');\r\n }\r\n\r\n @HostListener('click', ['$event.target'])\r\n onClick(target: HTMLElement): void {\r\n if (target.closest('.account-selector') || target.closest('.account-info')) {\r\n return;\r\n } else {\r\n this.showList = false;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.isLoading = true;\r\n this.subscriptions.push(\r\n this.sentooService\r\n .getEncryptedData()\r\n .pipe(take(1))\r\n .subscribe((encryptedData) => {\r\n this.subscriptions.push(\r\n this.paymentDetailsService.getPaymentDetails(encryptedData).subscribe(\r\n (transferResponse) => {\r\n this.isLoading = false;\r\n if (!transferResponse.transferId) {\r\n this.setPaymentStatus.emit('invalid');\r\n } else {\r\n this.transfer = transferResponse;\r\n this.accountsService.getAccounts().subscribe((accounts) => {\r\n this.accounts = accounts;\r\n this.selectedAccount = accounts[0];\r\n this.referenceCodesService\r\n .getAll(this.transfer?.transactionType as any, this.selectedAccount as any)\r\n .subscribe((referenceCodes) => {\r\n this.referenceCodes = this.referenceCodesService.format(referenceCodes);\r\n this.category.setValue(this.referenceCodes[0]);\r\n this.selectCategory();\r\n });\r\n });\r\n }\r\n },\r\n (error) => {\r\n this.setPaymentStatus.emit('connection');\r\n }\r\n )\r\n );\r\n })\r\n );\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\r\n }\r\n\r\n onAccountChange(account: IAccount) {\r\n this.selectedAccount = account || {};\r\n this.toggleAccountList();\r\n setTimeout(() => (this.showList = false), 100);\r\n }\r\n\r\n toggleAccountList(): void {\r\n this.showList = !this.showList;\r\n }\r\n\r\n openCancelPayment() {\r\n this.cancelPaymentDialogRef = this.dialog.open(this.cancelPaymentPopup, {\r\n panelClass: 'popup-dialog-sentoo',\r\n disableClose: true,\r\n });\r\n }\r\n\r\n closeCancelPaymentDialog() {\r\n this.cancelPaymentDialogRef.close();\r\n }\r\n\r\n cancelSentooPayment() {\r\n this.isSubmittingCancelPayment = true;\r\n this.subscriptions.push(\r\n this.cancelService.cancelPayment(this.transfer.transferId.toString()).subscribe((cancelResponse) => {\r\n // TODO transform to enum and not a string\r\n this.isSubmittingCancelPayment = false;\r\n this.cancelPaymentDialogRef?.close();\r\n this.validatePaymentDialogRef?.close();\r\n this.setPaymentStatus.emit('cancelled');\r\n this.setCancelReturnUrl.emit(cancelResponse?.url);\r\n })\r\n );\r\n }\r\n\r\n // Validate payment section\r\n confirmPayment() {\r\n if (this.challengeCodeError) {\r\n this.challengeCodeError = false;\r\n }\r\n const transferProperties = {\r\n amount: this.transfer.amount,\r\n beneficiaryAccount: this.transfer.beneficiaryAccount,\r\n beneficiaryCity: this.transfer.beneficiaryCity,\r\n beneficiaryHouseNumber: this.transfer.beneficiaryHouseNumber,\r\n beneficiaryInstitutionCode: this.transfer.beneficiaryInstitutionCode,\r\n beneficiaryInstitutionCodeValue: this.transfer.beneficiaryInstitutionCodeValue,\r\n beneficiaryInstitutionName: this.transfer.beneficiaryInstitutionName,\r\n beneficiaryName: this.transfer.beneficiaryName,\r\n beneficiaryPostalCode: this.transfer.beneficiaryPostalCode,\r\n beneficiaryStreet: this.transfer.beneficiaryStreet,\r\n currency: this.transfer.currency,\r\n description: this.transfer.description,\r\n destinationCountryIsoCode: null,\r\n sentooProcessorId: this.transfer.sentooProcessorId,\r\n sentooTransactionId: this.transfer.sentooTransactionId,\r\n transactionType: this.transfer.transactionType,\r\n transferId: this.transfer.transferId,\r\n valueDate: new Date().toISOString(),\r\n referenceCategoryNumber: this.selectedReferenceCode,\r\n sourceAccount: this.selectedAccount.accountNumber,\r\n };\r\n this.isLoading = true;\r\n const transferObject: TransferModel = transferProperties;\r\n this.subscriptions.push(\r\n this.createSentooPaymentService.getChallengeNumber(transferObject).subscribe(\r\n (challengeNumberResponse) => {\r\n if (challengeNumberResponse.challengeCode) {\r\n this.isLoading = false;\r\n this.challengeCode = challengeNumberResponse.challengeCode;\r\n this.openValidatePayment();\r\n } else {\r\n this.isLoading = false;\r\n this.challengeCodeError = true;\r\n this.challengeCodeErrorMessage = challengeNumberResponse.errorDescription;\r\n }\r\n },\r\n (error) => {\r\n this.isLoading = false;\r\n }\r\n )\r\n );\r\n }\r\n\r\n openValidatePayment() {\r\n this.validatePaymentDialogRef = this.dialog.open(this.validatePayment, {\r\n panelClass: 'popup-dialog-sentoo',\r\n disableClose: true,\r\n });\r\n }\r\n\r\n // Category related\r\n selectCategory(): void {\r\n this.subCategory.setValue(this.category.value ? this.category.value.subcategory[0] : null);\r\n\r\n if (this.subCategory.value) {\r\n this.categoryForm.controls['subCategory'].enable();\r\n } else {\r\n this.categoryForm.controls['subCategory'].disable();\r\n }\r\n\r\n this.selectSubCategory();\r\n }\r\n\r\n selectSubCategory(event?): void {\r\n this.selectedReferenceCode = event?.value?.code || this.category?.value?.subcategory?.[0]?.code;\r\n this.subCategory.setValue(event ? event.value : this.category?.value?.subcategory?.[0]);\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n {{ challengeCodeErrorMessage }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

Sentoo payment

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

Webshop

\r\n {{transfer?.currency | abCurrencySymbol }} \r\n
\r\n
\r\n \r\n
\r\n
\r\n {{\r\n selectedAccount?.alias ||\r\n selectedAccount?.description ||\r\n selectedAccount?.accountName\r\n }}\r\n {{ selectedAccount?.portfolioName }}\r\n {{ selectedAccount?.accountNumber }}\r\n {{ selectedAccount?.accountOwner }}\r\n
\r\n\r\n
\r\n
\r\n {{ selectedAccount?.accountCurrency | abCurrencySymbol }}\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
    \r\n \r\n
  • \r\n
    \r\n
    \r\n {{\r\n account.alias || account.description || account.accountName\r\n }}\r\n {{ account?.accountNumber }}\r\n {{ account?.accountOwner }}\r\n
    \r\n\r\n
    \r\n
    \r\n {{ account.accountCurrency | abCurrencySymbol }}\r\n \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ category.category }}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ subcategory.name }}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{ transfer?.description }}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n

Do you want to cancel this payment?

\r\n

You can restart the payment at the merchant.

\r\n
\r\n
\r\n \r\n \r\n
\r\n
","import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Renderer2,\r\n TemplateRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription } from 'rxjs';\r\nimport { AB_SENTOO } from '../../../../shared/constants';\r\nimport { SentooService } from '../../../services/sentoo.service';\r\nimport { PaymentStatus } from '../../../services/status.service';\r\n\r\n@Component({\r\n selector: 'ab-sentoo-transfer',\r\n templateUrl: './sentoo-transfer.component.html',\r\n styleUrls: ['./sentoo-transfer.component.scss']\r\n})\r\nexport class SentooTransferComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild('qrCodeImage') qrCodeImage: ElementRef;\r\n @ViewChild('sentooPaymentToken') sentooPaymentToken: TemplateRef;\r\n\r\n public paymentStatus: PaymentStatus = 'paying';\r\n public merchantInfo: any;\r\n public isLoading = false;\r\n public searchParams: any = undefined;\r\n public returnUrl: string;\r\n private subscription: Subscription;\r\n\r\n constructor(\r\n private sentooService: SentooService,\r\n private route: ActivatedRoute,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.route.queryParams.subscribe((params) => {\r\n this.searchParams = new URLSearchParams();\r\n for (const key in params) {\r\n if (params.hasOwnProperty(key)) {\r\n this.searchParams.set(key, params[key]);\r\n }\r\n }\r\n if (this.searchParams) {\r\n this.sentooService.setEncryptedData(this.searchParams.toString());\r\n } else {\r\n this.paymentStatus = 'invalid';\r\n }\r\n });\r\n }\r\n\r\n setPaymentStatus(paymentStatus) {\r\n this.paymentStatus = paymentStatus;\r\n }\r\n\r\n setMerchantInfo(merchantInfo) {\r\n this.merchantInfo = merchantInfo;\r\n if (this.merchantInfo.numberOfApprovalsRemaining > 0) {\r\n this.paymentStatus = 'pending';\r\n } else {\r\n this.paymentStatus = 'complete';\r\n }\r\n }\r\n\r\n setCancelReturnUrl(url) {\r\n this.returnUrl = url;\r\n }\r\n\r\n resetPayment() {\r\n const sentooTransaction = this.searchParams?.get('sentoo-transaction');\r\n const country = this.searchParams?.get('country');\r\n\r\n this.router.navigate([AB_SENTOO], {\r\n queryParams: {\r\n country,\r\n 'sentoo-transaction': sentooTransaction\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {\r\n UntypedFormControl,\r\n UntypedFormGroup,\r\n Validators\r\n} from '@angular/forms';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { Subscription } from 'rxjs';\r\nimport { FormAllFieldsValidationService } from '../../../../shared/services/form-all-fields-validation.service';\r\nimport { GetItemListFieldsService, } from '../../../../shared/services/get-item-list-fields.service';\r\nimport {\r\n ApproveRequest,\r\n ApproveService\r\n} from '../../../services/approve.service';\r\nimport { Transfer } from '../../../services/payment-details.service';\r\n\r\n@Component({\r\n selector: 'ab-validate-payment',\r\n templateUrl: './validate-payment.component.html',\r\n styleUrls: ['./validate-payment.component.scss']\r\n})\r\nexport class ValidatePaymentComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @Input() transfer: Transfer;\r\n @Input() challengeCode: string;\r\n @Input() selectedAccountNumber: string;\r\n @Input() selectedReferenceCode: string;\r\n @Input() dialogRef: MatDialogRef;\r\n @Output() cancelPayment = new EventEmitter();\r\n @Output() setMerchantInfo = new EventEmitter();\r\n @Output() setPaymentStatus = new EventEmitter();\r\n @ViewChild('approvalCodeInput') approvalCodeInput: ElementRef;\r\n\r\n public isLoading = false;\r\n public isSubmittingConfirm = false;\r\n public items: any;\r\n public approvalCodeErrorMessage: string;\r\n public confirmPaymentForm = new UntypedFormGroup({\r\n approvalCode: new UntypedFormControl(null, [\r\n Validators.required,\r\n Validators.pattern('[0-9]+')\r\n ])\r\n });\r\n\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private approveService: ApproveService,\r\n private formAllFieldsValidationService: FormAllFieldsValidationService,\r\n private getItemListFieldsService: GetItemListFieldsService\r\n ) {}\r\n\r\n get approvalCode() {\r\n return this.confirmPaymentForm.get('approvalCode');\r\n }\r\n\r\n @HostListener('document:keypress', ['$event'])\r\n onEnterPress(event) {\r\n if (event.key === 'Enter' && this.confirmPaymentForm.valid) {\r\n this.submitPayment();\r\n this.approvalCodeInput.nativeElement.blur();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.items = this.getItemListFieldsService.getItems(\r\n this.rendering?.fields?.items as Item[]\r\n );\r\n\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\r\n }\r\n\r\n openCancelPaymentPopup() {\r\n this.cancelPayment.emit('trigger');\r\n }\r\n\r\n submitPayment() {\r\n const approveTransferRequest: ApproveRequest = {\r\n challengeCode: this.challengeCode,\r\n signature: this.confirmPaymentForm?.get('approvalCode')?.value\r\n };\r\n\r\n this.formAllFieldsValidationService.validationAllForms(\r\n this.confirmPaymentForm\r\n );\r\n\r\n if (!this.confirmPaymentForm.valid) {\r\n return;\r\n }\r\n\r\n this.isSubmittingConfirm = true;\r\n this.subscriptions.push(\r\n this.approveService.approveTransfer(approveTransferRequest).subscribe({\r\n next: (approveResponse: any) => {\r\n this.isSubmittingConfirm = false;\r\n if (approveResponse.callIsSuccess) {\r\n this.setMerchantInfo.emit(approveResponse);\r\n if (this.dialogRef) {\r\n this.dialogRef.close();\r\n }\r\n } else {\r\n this.approvalCodeErrorMessage = approveResponse.errorDescription;\r\n this.confirmPaymentForm.get('approvalCode')?.setErrors({\r\n approvalCodeError: true\r\n });\r\n }\r\n },\r\n error: (error: any) => {\r\n this.confirmPaymentForm.get('approvalCode')?.setErrors({\r\n approvalCodeError: true\r\n });\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Sentoo payment
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

\r\n Confirm your payment with the {{items.bankToken.fields.text.value}}\r\n

\r\n
\r\n
    \r\n
  • \r\n
    \r\n
    \r\n 1\r\n
    \r\n
    \r\n
    \r\n Pressto turn on the {{items.bankToken.fields.text.value}}\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 2\r\n
    \r\n
    \r\n
    \r\n Enter your 4-digit PIN Code in the {{items.bankToken.fields.text.value}}\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 3\r\n
    \r\n
    \r\n
    \r\n Press number \"2\"\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 4\r\n
    \r\n
    \r\n
    \r\n Enter the following Security Code in the {{items.bankToken.fields.text.value}}: {{ challengeCode }} \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 5\r\n
    \r\n
    \r\n
    \r\n Press and hold until \"2\" is shown\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 6\r\n
    \r\n
    \r\n
    \r\n Pressto generate the Transfer\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 7\r\n
    \r\n
    \r\n
    \r\n Enter the generated Transfer Approval Code in the field below\r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n","import { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { ComponentRendering, Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { Subject, Subscription, combineLatest, filter, interval, switchMap, takeUntil, takeWhile } from 'rxjs';\r\nimport { LoginRequest, LoginService } from '../../../../login/services/login.service';\r\nimport { AB_SENTOO_TRANSFER } from '../../../../shared/constants';\r\nimport { FormFields } from '../../../../shared/services/form-fields-generator.service';\r\nimport { GetItemListFieldsService } from '../../../../shared/services/get-item-list-fields.service';\r\nimport { QrCodeService } from '../../../services/qr-code.service';\r\nimport { SentooService } from '../../../services/sentoo.service';\r\nimport { PaymentStatus, StatusService } from '../../../services/status.service';\r\n\r\ntype AuthorizationMethod = 'qr' | 'token';\r\n\r\n@Component({\r\n selector: 'ab-landing',\r\n templateUrl: './landing.component.html',\r\n styleUrls: ['./landing.component.scss'],\r\n})\r\nexport class LandingComponent implements OnInit, OnDestroy {\r\n @Input() rendering: ComponentRendering;\r\n @Output() setMerchantInfo = new EventEmitter();\r\n @Output() setPaymentStatus = new EventEmitter();\r\n @Output() setReturnUrl: EventEmitter = new EventEmitter();\r\n\r\n public authorizationMethod: AuthorizationMethod = 'qr';\r\n public qrCodeImage: string;\r\n public apiError = false;\r\n public userBlockedError = false;\r\n public invalidCredentialsError = false;\r\n public helpMethod = 'token';\r\n public arubaAppImg = 'assets/images/aruba-app.svg';\r\n public desktopImg = 'assets/images/aruba-desktop.svg';\r\n public mobileImg = 'assets/images/icon-mobile.svg';\r\n public refreshImg = 'assets/images/refresh.svg';\r\n public retryQR = false;\r\n public isLoading = false;\r\n public formFields: FormFields;\r\n public items: any;\r\n\r\n public loginForm = new UntypedFormGroup({\r\n username: new UntypedFormControl('', Validators.required),\r\n logincode: new UntypedFormControl('', Validators.required),\r\n tokenType: new UntypedFormControl('hardToken'),\r\n });\r\n\r\n private destroy$ = new Subject();\r\n private subscriptions: Subscription[] = [];\r\n private statusSubscription: Subscription;\r\n private requestQRError: boolean;\r\n\r\n constructor(\r\n private qrCodeService: QrCodeService,\r\n private sentooService: SentooService,\r\n private loginService: LoginService,\r\n private router: Router,\r\n private statusService: StatusService,\r\n private getItemListFieldsService: GetItemListFieldsService\r\n ) {}\r\n\r\n get username() {\r\n return this.loginForm.get('username');\r\n }\r\n\r\n get logincode() {\r\n return this.loginForm.get('logincode');\r\n }\r\n\r\n get tokenType() {\r\n return this.loginForm.get('tokenType');\r\n }\r\n\r\n ngOnInit(): void {\r\n this.items = this.getItemListFieldsService.getItems(this.rendering?.fields?.items as Item[]);\r\n this.getQrCodeImage();\r\n }\r\n\r\n getQrCodeImage() {\r\n this.isLoading = true;\r\n combineLatest([this.sentooService.getCountry(), this.sentooService.getSentooTransaction()])\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(([country, transaction]) => {\r\n this.qrCodeService\r\n .getQrCode(country, transaction)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(\r\n (qrcodeImageResponse) => {\r\n if (this.retryQR) {\r\n this.retryQR = false;\r\n }\r\n this.isLoading = false;\r\n this.qrCodeImage = 'data:image/jpeg;base64,' + qrcodeImageResponse.qrImage;\r\n this.pollPaymentStatus();\r\n },\r\n () => {\r\n this.isLoading = false;\r\n this.requestQRError = true;\r\n this.setPaymentStatus.emit('invalid');\r\n }\r\n );\r\n });\r\n }\r\n\r\n pollPaymentStatus(): void {\r\n const timer$ = new Subject();\r\n\r\n this.subscriptions.push(\r\n combineLatest([this.sentooService.getCountry(), this.sentooService.getSentooTransaction()]).subscribe(\r\n ([country, transaction]) => {\r\n const statusObservable$ = interval(5000).pipe(\r\n takeWhile(() => !this.requestQRError),\r\n takeUntil(timer$),\r\n switchMap(() => this.statusService.getStatus(country, transaction))\r\n );\r\n\r\n setTimeout(() => {\r\n timer$.next((this.retryQR = true));\r\n }, 240000);\r\n\r\n this.statusSubscription = statusObservable$.subscribe({\r\n next: (statusResponse) => {\r\n this.setMerchantInfo.emit(statusResponse);\r\n if (statusResponse && statusResponse.status === 'cancelled') {\r\n this.setPaymentStatus.emit('cancelled');\r\n this.setReturnUrl.emit(statusResponse.returnUrl);\r\n this.statusSubscription?.unsubscribe();\r\n } else if (\r\n statusResponse &&\r\n statusResponse.status === 'approved' &&\r\n statusResponse.numberOfApprovalsRequired > 0\r\n ) {\r\n this.setPaymentStatus.emit('pending');\r\n this.statusSubscription?.unsubscribe();\r\n } else if (statusResponse && statusResponse.status === 'approved') {\r\n this.setPaymentStatus.emit('complete');\r\n this.statusSubscription?.unsubscribe();\r\n }\r\n },\r\n error: (error) => {\r\n this.setPaymentStatus.emit('invalid');\r\n this.statusSubscription?.unsubscribe();\r\n },\r\n });\r\n }\r\n )\r\n );\r\n }\r\n\r\n login(): void {\r\n if (this.loginForm.valid) {\r\n this.loginService\r\n .login(this.loginForm.value as LoginRequest)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(\r\n (response) => {\r\n combineLatest([this.sentooService.getCountry(), this.sentooService.getSentooTransaction()])\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(([country, sentooTransaction]) => {\r\n this.router.navigate([AB_SENTOO_TRANSFER], {\r\n queryParams: {\r\n country,\r\n 'sentoo-transaction': sentooTransaction,\r\n },\r\n });\r\n this.statusSubscription?.unsubscribe();\r\n });\r\n },\r\n (error) => {\r\n if (error) {\r\n this.apiError = true;\r\n this.loginForm.reset();\r\n this.userBlockedError = error.error.errorCode === 'User.Blocked';\r\n this.invalidCredentialsError = error.error.errorCode === 'User.Failed';\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n redirectToPaymentScreen() {\r\n this.subscriptions.push(\r\n this.router.events.pipe(filter((event: RouterEvent) => event instanceof NavigationStart)).subscribe(() => {\r\n this.router.navigate([AB_SENTOO_TRANSFER]);\r\n })\r\n );\r\n }\r\n\r\n selectActiveTab(method) {\r\n this.helpMethod = method;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n if (this.subscriptions) {\r\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n \r\n
\r\n
User is permanently blocked!
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n Invalid credentials. Your access will be blocked after multiple incorrect attempts.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Select approval method

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

Login with {{ items?.bankApplication.fields.text.value }}

\r\n
\r\n
\r\n
    \r\n
  • \r\n
    \r\n
    \r\n 1\r\n
    \r\n
    \r\n
    \r\n Open the {{ items?.bankApplication.fields.text.value }}\r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    \r\n 2\r\n
    \r\n
    \r\n
    \r\n Tap on the QR-code icon in the left corner\r\n
    \r\n
\r\n \r\n
  • \r\n
    \r\n
    \r\n 3\r\n
    \r\n
    \r\n
    \r\n Scan the QR-code and approve payment\r\n
    \r\n \r\n \r\n

    Click to generate a new QR code

    \r\n
    \r\n
    \r\n
  • \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Login with token

    \r\n
    \r\n
    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n 1\r\n
      \r\n
      \r\n
      \r\n
      Click on below button to login to {{ items?.bankName.fields.text.value }} Online
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 2\r\n
      \r\n
      \r\n
      \r\n
      Follow the steps to approve payment
      \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n

    Log in with {{ items?.bankToken.fields.text.value }}

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n Username required\r\n
    \r\n\r\n \r\n
    \r\n \r\n \r\n Login code required\r\n
    \r\n\r\n
    \r\n \r\n \r\n Log in\r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
      \r\n
    • \r\n {{ items?.bankToken.fields.text.value }}\r\n
    • \r\n
    • \r\n {{ items?.bankApplication.fields.text.value }}\r\n
    • \r\n
    \r\n

    How to receive the code with the token:

    \r\n \r\n
    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n 1\r\n
      \r\n
      \r\n
      \r\n Press to turn on the\r\n {{ items?.bankToken.fields.text.value }} Token\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 2\r\n
      \r\n
      \r\n
      \r\n Enter your 4-digit PIN Code\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 3\r\n
      \r\n
      \r\n
      \r\n Press number “1”\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 4\r\n
      \r\n
      \r\n
      \r\n Enter the Login Code generated by the {{ items?.bankToken.fields.text.value }} in the\r\n designated text field\r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n 1\r\n
      \r\n
      \r\n
      \r\n Open your {{ items?.bankApplication.fields.text.value }} ® on your mobile phone\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 2\r\n
      \r\n
      \r\n
      \r\n Click on the 'Token' icon in the mobile app menu\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 3\r\n
      \r\n
      \r\n
      \r\n Select 'Login Code' from the screen\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 4\r\n
      \r\n
      \r\n
      \r\n Enter your 5-digit PIN Code for the {{ items?.bankApplication.fields.text.value }}® to\r\n generate the Login Code\r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      \r\n 5\r\n
      \r\n
      \r\n
      \r\n Enter the generated Login Code generated by the\r\n {{ items?.bankApplication.fields.text.value }}® in the field above\r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Need help?\r\n Contact us \r\n

    \r\n
    \r\n \r\n
    \r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { StatusResponse } from '../../../services/status.service';\r\nimport { ApproveResponse } from '../../../services/approve.service';\r\nimport { LoginService } from '../../../../login/services/login.service';\r\n\r\n@Component({\r\n selector: 'ab-payment-complete',\r\n templateUrl: './payment-complete.component.html',\r\n styleUrls: ['./payment-complete.component.scss']\r\n})\r\nexport class PaymentCompleteComponent implements OnInit, OnDestroy {\r\n @Input() merchantInfo: Partial;\r\n\r\n constructor(private loginService: LoginService) {}\r\n\r\n ngOnInit(): void {\r\n this.loginService?.logout().subscribe((response) => {});\r\n }\r\n\r\n redirectToMerchant() {\r\n if (window && window.location) {\r\n window.location.href =\r\n this.merchantInfo.url || this.merchantInfo.returnUrl || '';\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {}\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    You have paid successfully!

    \r\n

    You will automatically be redirected.

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ab-payment-invalid',\r\n templateUrl: './payment-invalid.component.html',\r\n styleUrls: ['./payment-invalid.component.scss'],\r\n})\r\nexport class PaymentInvalidComponent implements OnInit {\r\n @Output() resetPayment: EventEmitter = new EventEmitter();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    The payment is invalid

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

    Please try again later.

    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { StatusResponse } from '../../../services/status.service';\r\nimport { ApproveResponse } from '../../../services/approve.service';\r\n\r\n@Component({\r\n selector: 'ab-payment-pending',\r\n templateUrl: './payment-pending.component.html',\r\n styleUrls: ['./payment-pending.component.scss']\r\n})\r\nexport class PaymentPendingComponent implements OnInit {\r\n @Input() merchantInfo: Partial;\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n redirectToMerchant() {\r\n window.location.href = this.merchantInfo.returnUrl || this.merchantInfo.url;\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n

    Payment created, eligible approvers are notified

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n After approval the payment will be executed\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n","import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n SimpleChanges,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Subscription } from 'rxjs';\r\nimport { SentooService } from '../../../services/sentoo.service';\r\nimport { AB_SENTOO_TRANSFER } from '../../../../shared/constants';\r\nimport { UserService } from '../../../../shared/services/user.service';\r\nimport {\r\n PaymentStatus,\r\n StatusResponse,\r\n} from '../../../services/status.service';\r\n\r\n@Component({\r\n selector: 'ab-sentoo',\r\n templateUrl: './sentoo.component.html',\r\n styleUrls: ['./sentoo.component.scss'],\r\n})\r\nexport class SentooComponent implements OnInit, OnDestroy, OnChanges {\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild('qrCodeImage') qrCodeImage: ElementRef;\r\n @ViewChild('sentooPaymentToken') sentooPaymentToken: TemplateRef;\r\n\r\n public ARUBA_APP_SENTOO_URL = 'arubabank://open/sentoo?';\r\n public ORCO_APP_SENTOO_URL = 'orcobank://open/sentoo?';\r\n\r\n public paymentStatus: PaymentStatus = 'landing';\r\n public merchantInfo: Partial;\r\n public isLoading = false;\r\n public returnUrl: string;\r\n\r\n private subscriptions: Subscription[] = [];\r\n private encryptedData: string;\r\n private openAppTimeout;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private sentooService: SentooService,\r\n private userService: UserService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.paymentStatus) {\r\n console.log(\r\n 'Payment status changed: ',\r\n changes.paymentStatus.currentValue\r\n );\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.paymentStatus = 'landing';\r\n this.subscriptions.push(\r\n this.route.queryParams.subscribe((params) => {\r\n const searchParams = new URLSearchParams();\r\n for (const key in params) {\r\n if (params.hasOwnProperty(key)) {\r\n searchParams.set(key, params[key]);\r\n }\r\n }\r\n this.encryptedData = searchParams.toString();\r\n if (this.encryptedData) {\r\n this.sentooService.setEncryptedData(this.encryptedData);\r\n this.checkTransferRouteAccess();\r\n }\r\n })\r\n );\r\n\r\n this.openAppSamsungBrowser();\r\n }\r\n\r\n openAppSamsungBrowser() {\r\n const url = window.location.href;\r\n const searchParams = new URL(url).searchParams;\r\n if (url.indexOf('aruba') !== -1) {\r\n window.location.replace(\r\n this.ARUBA_APP_SENTOO_URL + searchParams.toString()\r\n );\r\n } else if (url.indexOf('orco') !== -1) {\r\n window.location.replace(\r\n this.ORCO_APP_SENTOO_URL + searchParams.toString()\r\n );\r\n }\r\n }\r\n\r\n checkTransferRouteAccess() {\r\n this.subscriptions.push(\r\n this.userService\r\n .userHasAccess(AB_SENTOO_TRANSFER)\r\n .subscribe((hasAccess) => {\r\n if (hasAccess) {\r\n const searchParams = new URLSearchParams(this.encryptedData);\r\n const sentooTransaction = searchParams?.get('sentoo-transaction');\r\n const country = searchParams?.get('country');\r\n\r\n this.router.navigate([AB_SENTOO_TRANSFER], {\r\n queryParams: {\r\n country,\r\n 'sentoo-transaction': sentooTransaction,\r\n },\r\n });\r\n }\r\n })\r\n );\r\n }\r\n\r\n setReturnUrl(url) {\r\n this.returnUrl = url;\r\n }\r\n\r\n setMerchantInfo(merchantInfo) {\r\n this.merchantInfo = merchantInfo;\r\n }\r\n\r\n setPaymentStatus(paymentStatus: PaymentStatus) {\r\n this.paymentStatus = paymentStatus;\r\n }\r\n\r\n resetPayment() {\r\n this.paymentStatus = 'landing';\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscriptions) {\r\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\r\n }\r\n if (this.openAppTimeout) {\r\n clearTimeout(this.openAppTimeout);\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { ANALYZE_FOR_ENTRY_COMPONENTS, NgModule } from '@angular/core';\r\nimport { ROUTES } from '@angular/router';\r\nimport {\r\n DYNAMIC_COMPONENT,\r\n JssModule,\r\n} from '@sitecore-jss/sitecore-jss-angular';\r\nimport { SharedModule } from '../shared/shared.module';\r\n\r\nimport { Title } from '@angular/platform-browser';\r\nimport { NgbPaginationModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ConnectionErrorComponent } from './components/sentoo-transfer/connection-error/connection-error.component';\r\nimport { PaymentCancelledComponent } from './components/sentoo-transfer/payment-cancelled/payment-cancelled.component';\r\nimport { PaymentExpiredComponent } from './components/sentoo-transfer/payment-expired/payment-expired.component';\r\nimport { PaymentScreenComponent } from './components/sentoo-transfer/payment-screen/payment-screen.component';\r\nimport { SentooTransferComponent } from './components/sentoo-transfer/sentoo-transfer/sentoo-transfer.component';\r\nimport { ValidatePaymentComponent } from './components/sentoo-transfer/validate-payment/validate-payment.component';\r\nimport { LandingComponent } from './components/sentoo/landing/landing.component';\r\nimport { PaymentCompleteComponent } from './components/sentoo/payment-complete/payment-complete.component';\r\nimport { PaymentInvalidComponent } from './components/sentoo/payment-invalid/payment-invalid.component';\r\nimport { PaymentPendingComponent } from './components/sentoo/payment-pending/payment-pending.component';\r\nimport { SentooComponent } from './components/sentoo/sentoo/sentoo.component';\r\n\r\nconst SentooComponents = [\r\n { name: 'Sentoo', type: SentooComponent },\r\n { name: 'SentooTransfer', type: SentooTransferComponent },\r\n { name: 'Landing', type: LandingComponent },\r\n { name: 'PaymentInvalid', type: PaymentInvalidComponent },\r\n { name: 'ConnectionError', type: ConnectionErrorComponent },\r\n { name: 'PaymentCancelled', type: PaymentCancelledComponent },\r\n { name: 'PaymentComplete', type: PaymentCompleteComponent },\r\n { name: 'PaymentExpired', type: PaymentExpiredComponent },\r\n { name: 'PaymentPending', type: PaymentPendingComponent },\r\n { name: 'PaymentScreen', type: PaymentScreenComponent },\r\n { name: 'ValidatePayment', type: ValidatePaymentComponent },\r\n];\r\n\r\nconst ProviderArray = {};\r\n\r\nSentooComponents.forEach((component) => {\r\n ProviderArray[component.name] = component.type;\r\n});\r\n\r\n@NgModule({\r\n declarations: [\r\n LandingComponent,\r\n ConnectionErrorComponent,\r\n SentooComponent,\r\n PaymentInvalidComponent,\r\n SentooTransferComponent,\r\n PaymentCancelledComponent,\r\n PaymentExpiredComponent,\r\n PaymentCompleteComponent,\r\n PaymentPendingComponent,\r\n PaymentScreenComponent,\r\n ValidatePaymentComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n NgbPaginationModule,\r\n {\r\n ngModule: JssModule,\r\n providers: [\r\n {\r\n provide: ROUTES,\r\n useValue: [],\r\n multi: true,\r\n },\r\n {\r\n provide: DYNAMIC_COMPONENT,\r\n useValue: ProviderArray,\r\n },\r\n {\r\n provide: ANALYZE_FOR_ENTRY_COMPONENTS,\r\n useValue: SentooComponents,\r\n multi: true,\r\n },\r\n ],\r\n },\r\n ],\r\n providers: [Title],\r\n exports: [],\r\n})\r\nexport class SentooModule {}\r\n\r\nexport { SentooComponents };\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AB_API_SENTOO_ACCOUNTS } from '../../shared/constants';\r\nimport { ApiClientService } from '../../shared/services/api-client.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AccountsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_ACCOUNTS);\r\n }\r\n\r\n getAccounts(): Observable {\r\n return this.get();\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { AB_API_SENTOO_APPROVE } from \"../../../app/shared/constants\";\r\nimport {\r\n ApiClientService, ApiResponse\r\n} from \"../../../app/shared/services/api-client.service\";\r\n\r\nexport interface ApproveRequest {\r\n challengeCode: string;\r\n signature: string;\r\n transfers?: {\r\n TransferId: number;\r\n TransferFrequency: string;\r\n NumberOfApprovalsRemaining: number;\r\n SentooTransactionId: string;\r\n SentooProcessorId: string;\r\n IsApproved: boolean;\r\n }[];\r\n TokenType?: string;\r\n DeviceId?: string;\r\n ClientIp?: string;\r\n BrowserInfo?: {\r\n FingerPrintHash: string;\r\n FingerPrintRaw: string;\r\n };\r\n}\r\n\r\nexport interface ApproveResponse extends ApiResponse {\r\n numberOfApprovalsRequired: number;\r\n url: string;\r\n beneficiaryName: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class ApproveService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_APPROVE);\r\n }\r\n\r\n approveTransfer(request: ApproveRequest): Observable {\r\n return this.post(request);\r\n }\r\n}\r\n","import { HttpClient, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { AB_API_SENTOO_CANCEL } from \"../../../app/shared/constants\";\r\nimport { ApiClientService } from \"../../../app/shared/services/api-client.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class CancelService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_CANCEL);\r\n }\r\n\r\n cancelPayment(paymentId: string): Observable {\r\n const params = new HttpParams().set('paymentId',paymentId);\r\n return this.get(params);\r\n }\r\n}\r\n","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ApiClientService } from '../../shared/services/api-client.service';\r\nimport { AB_API_SENTOO_CREATE } from '../../shared/constants';\r\nimport { Transfer } from './payment-details.service';\r\n\r\nexport interface TransferModel {\r\n transferId: number;\r\n beneficiaryName: string;\r\n beneficiaryHouseNumber: string | null;\r\n beneficiaryStreet: string | null;\r\n beneficiaryCity: string | null;\r\n beneficiaryPostalCode: string | null;\r\n beneficiaryInstitutionName: string;\r\n beneficiaryInstitutionCode: string;\r\n beneficiaryInstitutionCodeValue: string;\r\n valueDate: string;\r\n description: string;\r\n destinationCountryIsoCode?: string;\r\n sourceAccount: string | null;\r\n beneficiaryAccount: string;\r\n currency: string;\r\n amount: number;\r\n referenceCategoryNumber: string | null;\r\n sentooTransactionId: string;\r\n sentooProcessorId: string;\r\n transactionType: string;\r\n}\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CreateSentooPaymentService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_CREATE);\r\n }\r\n\r\n getChallengeNumber(request: TransferModel): Observable {\r\n return this.post(request);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { ApiClientService } from '../../../app/shared/services/api-client.service';\r\nimport { AB_API_SENTOO_PAYMENT_DETAILS } from './../../../app/shared/constants';\r\n\r\n\r\nexport interface Transfer {\r\n transferId: number;\r\n beneficiaryName: string;\r\n beneficiaryHouseNumber: string | null;\r\n beneficiaryStreet: string | null;\r\n beneficiaryCity: string | null;\r\n beneficiaryPostalCode: string | null;\r\n beneficiaryInstitutionName: string;\r\n beneficiaryInstitutionCode: string;\r\n beneficiaryInstitutionCodeValue: string;\r\n valueDate: string;\r\n description: string;\r\n destinationCountryISOCode?: string;\r\n sourceAccount: string | null;\r\n beneficiaryAccount: string;\r\n currency: string;\r\n amount: number;\r\n referenceCategoryNumber: string | null;\r\n sentooTransactionId: string;\r\n sentooProcessorId: string;\r\n transactionType: string;\r\n userAccountPermissions: UserAccountPermission[];\r\n}\r\n\r\ninterface UserAccountPermission {\r\n accountNumber: string;\r\n accountName: string;\r\n accessEnabled: boolean;\r\n specificEnabled: boolean;\r\n access: Access[];\r\n}\r\n\r\ninterface Access {\r\n id: string;\r\n enable: boolean;\r\n upload: boolean;\r\n create: boolean;\r\n modify: boolean;\r\n approve: boolean;\r\n inquire: boolean;\r\n delete: boolean;\r\n createApproval: boolean;\r\n amountLimit: number;\r\n totalApproval: number;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PaymentDetailsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_PAYMENT_DETAILS);\r\n }\r\n\r\n getPaymentDetails(encryptedData: string): Observable {\r\n const params = new HttpParams().set('encryptedData', '?' + encryptedData);\r\n return this.get(params);\r\n }\r\n}\r\n","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AB_API_SENTOO_QRCODE } from '../../shared/constants';\r\nimport {\r\n ApiClientService\r\n} from '../../shared/services/api-client.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class QrCodeService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_QRCODE);\r\n }\r\n\r\n getQrCode(country: string, sentooTransaction: string): Observable {\r\n const params = new HttpParams().set('country', country).set('sentoo-transaction', sentooTransaction);\r\n return this.get(params);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SentooService {\r\n private encryptedDataSubject: BehaviorSubject =\r\n new BehaviorSubject(undefined);\r\n private sentooTransactionSubject: BehaviorSubject =\r\n new BehaviorSubject(undefined);\r\n private countrySubject: BehaviorSubject = new BehaviorSubject(\r\n undefined\r\n );\r\n\r\n constructor() {}\r\n\r\n getEncryptedData(): Observable {\r\n return this.encryptedDataSubject.asObservable();\r\n }\r\n getCountry(): Observable {\r\n return this.countrySubject.asObservable();\r\n }\r\n\r\n getSentooTransaction(): Observable {\r\n return this.sentooTransactionSubject.asObservable();\r\n }\r\n\r\n setEncryptedData(transactionId: string) {\r\n this.extractSentooTransactionAndCountry(transactionId);\r\n this.encryptedDataSubject.next(transactionId);\r\n }\r\n\r\n private extractSentooTransactionAndCountry(transactionId: string) {\r\n const searchParams = new URLSearchParams(transactionId);\r\n\r\n const sentooTransaction = this.extractSentooTransaction(searchParams);\r\n const country = this.extractCountry(searchParams);\r\n this.sentooTransactionSubject.next(sentooTransaction);\r\n this.countrySubject.next(country);\r\n }\r\n\r\n private extractSentooTransaction(searchParams: URLSearchParams): string {\r\n return searchParams?.get('sentoo-transaction');\r\n }\r\n\r\n private extractCountry(searchParams: URLSearchParams): string {\r\n return searchParams?.get('country');\r\n }\r\n}\r\n","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AB_API_SENTOO_STATUS } from '../../../app/shared/constants';\r\nimport { ApiClientService } from '../../../app/shared/services/api-client.service';\r\n\r\nexport type PaymentStatus =\r\n | 'complete'\r\n | 'landing'\r\n | 'pending'\r\n | 'unpaid'\r\n | 'paying'\r\n | 'validatePaymentWithToken'\r\n | 'cancelled'\r\n | 'expired'\r\n | 'invalid'\r\n | 'connection';\r\n\r\nexport interface StatusResponse {\r\n numberOfApprovalsRequired: number;\r\n returnUrl: string;\r\n beneficiaryName: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StatusService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_SENTOO_STATUS);\r\n }\r\n\r\n getStatus(country: string, sentooTransaction: string): Observable {\r\n const params = new HttpParams()\r\n .set('country', country)\r\n .set('sentoo-transaction', sentooTransaction);\r\n return this.get(params);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { PopupComponent } from '../../../dialogs/components/popup/popup.component';\r\nimport { MatLegacyDialog } from '@angular/material/legacy-dialog';\r\nimport { DialogStateService } from '../../../dialogs/services/dialog-state.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'ab-session-expiry-popup',\r\n templateUrl: './session-expiry-popup.component.html',\r\n styleUrls: ['./session-expiry-popup.component.scss']\r\n})\r\nexport class SessionExpiryPopupComponent extends PopupComponent {\r\n constructor(\r\n dialog: MatLegacyDialog,\r\n dialogStateService: DialogStateService,\r\n router: Router\r\n ) {\r\n super(dialog, dialogStateService, router);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { DialogStateService } from '../../dialogs/services/dialog-state.service';\r\nimport { AB_SHOW_SESSION_EXPIRY_POPUP } from '../../shared/constants';\r\nimport { UserService } from '../../shared/services/user.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExpiryPopupService {\r\n private popupId = 'session';\r\n private timeout: any;\r\n private popupIsOpen = false;\r\n\r\n constructor(\r\n private dialogStateService: DialogStateService,\r\n private userService: UserService\r\n ) {\r\n this.userService.initOpenPopUp(() => this.openSessionPopup());\r\n }\r\n\r\n public startPopupTimer(stopTimer?: boolean) {\r\n if (stopTimer && this.timeout) {\r\n clearTimeout(this.timeout);\r\n }\r\n\r\n this.timeout = setTimeout(() => {\r\n this.openSessionPopup();\r\n }, AB_SHOW_SESSION_EXPIRY_POPUP * 60000);\r\n }\r\n\r\n public openSessionPopup() {\r\n console.log('session popup is opening');\r\n if (\r\n this.popupIsOpen ||\r\n !this.dialogStateService.checkIfPopupExists('session')\r\n ) {\r\n console.log(\r\n `Session popup is opened already. Flag is: ${this.popupIsOpen}`\r\n );\r\n return;\r\n }\r\n\r\n console.log('session popup is opened');\r\n this.dialogStateService.openDialog(this.popupId).subscribe(() => {\r\n console.log('session popup is closed');\r\n this.userService.logoutUser();\r\n this.popupIsOpen = false;\r\n });\r\n this.popupIsOpen = true;\r\n }\r\n}\r\n","import { Injectable, PLATFORM_ID, Inject } from '@angular/core';\r\nimport { IdleService } from './idle.service';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { merge } from 'rxjs/internal/observable/merge';\r\nimport { fromEvent } from 'rxjs/internal/observable/fromEvent';\r\nimport { SessionService } from './session.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IdleConfigService {\r\n constructor(\r\n private idleService: IdleService,\r\n private sessionService: SessionService,\r\n @Inject(PLATFORM_ID) private platform\r\n ) {}\r\n\r\n configIdle() {\r\n if (isPlatformBrowser(this.platform)) {\r\n this.idleService.configIdle(\r\n merge(\r\n fromEvent(window, 'mousemove'),\r\n fromEvent(window, 'resize'),\r\n fromEvent(window, 'message'),\r\n fromEvent(document, 'keydown')\r\n )\r\n );\r\n\r\n this.idleService.onActivity.subscribe(() => {\r\n this.sessionService.refreshSession().subscribe(\r\n () => {},\r\n () => {\r\n console.error('Refresh token request failed');\r\n }\r\n );\r\n });\r\n }\r\n }\r\n}\r\n","import { Injectable, EventEmitter } from '@angular/core';\r\nimport { from, Subscription, Observable } from 'rxjs';\r\nimport { AB_REFRESH_SESSION_TIME } from '../../shared/constants';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IdleService {\r\n private isRunningValue = false;\r\n private userEvents: Observable;\r\n private idleSubsctiption: Subscription;\r\n private timeout;\r\n\r\n private _timeUp = false;\r\n private _activity = false;\r\n\r\n constructor() {\r\n }\r\n\r\n private set timeUp(value) {\r\n this._timeUp = value;\r\n\r\n if (value) {\r\n clearTimeout(this.timeout);\r\n } else {\r\n this.timeout = setTimeout(() => {\r\n this.timeUp = true;\r\n }, AB_REFRESH_SESSION_TIME * 60000);\r\n }\r\n\r\n if (value && this._activity) {\r\n this.onActivity.emit(event);\r\n this.activity = false;\r\n this.timeUp = false;\r\n }\r\n }\r\n\r\n private set activity(value) {\r\n this._activity = value;\r\n\r\n if (value) {\r\n this.stopCheckUserActivity();\r\n } else {\r\n this.startCheckUserActivity();\r\n }\r\n\r\n if (value && this._timeUp) {\r\n this.onActivity.emit(event);\r\n this.timeUp = false;\r\n this.activity = false;\r\n }\r\n }\r\n\r\n public onActivity = new EventEmitter();\r\n\r\n get isRunning() {\r\n return this.isRunningValue;\r\n }\r\n\r\n configIdle(events: Observable) {\r\n this.userEvents = events;\r\n this.doRefreshToken();\r\n }\r\n\r\n doRefreshToken() {\r\n this.activity = false;\r\n this.timeUp = false;\r\n }\r\n\r\n stopRefreshToken() {\r\n this.stopCheckUserActivity();\r\n clearTimeout(this.timeout);\r\n }\r\n\r\n startCheckUserActivity() {\r\n if (this.userEvents) {\r\n this.isRunningValue = true;\r\n this.idleSubsctiption = from(this.userEvents).subscribe(event => {\r\n if (event instanceof MessageEvent) {\r\n let data;\r\n try {\r\n data = event.data ? JSON.parse(event.data) : {};\r\n } catch {\r\n data = { channelName: undefined };\r\n }\r\n\r\n if (data.channelName) {\r\n this.onActivity.emit(event);\r\n }\r\n } else {\r\n this.activity = true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n stopCheckUserActivity() {\r\n this.isRunningValue = false;\r\n if (this.idleSubsctiption) {\r\n this.idleSubsctiption.unsubscribe();\r\n }\r\n }\r\n}\r\n","import {\r\n Injectable,\r\n Inject,\r\n PLATFORM_ID,\r\n} from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpResponse,\r\n HttpErrorResponse\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { tap } from 'rxjs/internal/operators/tap';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { ExpiryPopupService } from './expiry-popup.service';\r\nimport { SessionService } from './session.service';\r\nimport { switchMap } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionInterceptorService implements HttpInterceptor {\r\n constructor(\r\n @Inject(PLATFORM_ID) private platform,\r\n private expiryPopupService: ExpiryPopupService,\r\n private sessionService: SessionService\r\n ) {}\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n const request = () => {\r\n if (req.url.indexOf('/general/refreshsession') === -1) {\r\n this.sessionService.waitingOtherRequest = true;\r\n this.sessionService.setRequset(req);\r\n }\r\n\r\n return next.handle(req).pipe(\r\n tap(\r\n (response: HttpResponse) => {\r\n if (response.status && response.status === 200) {\r\n this.sessionService.chechResponse(req);\r\n\r\n if (isPlatformBrowser(this.platform)) {\r\n this.expiryPopupService.startPopupTimer(true);\r\n }\r\n }\r\n },\r\n (error: HttpErrorResponse) => {\r\n if (isPlatformBrowser(this.platform) && error.status === 401) {\r\n this.expiryPopupService.openSessionPopup();\r\n }\r\n\r\n if (error.status) {\r\n this.sessionService.chechResponse(req);\r\n }\r\n }\r\n )\r\n );\r\n };\r\n\r\n if (\r\n this.sessionService.waitingForRefreshToken &&\r\n req.url.indexOf('/general/refreshsession') === -1\r\n ) {\r\n return this.waitRefreshToken(request);\r\n } else {\r\n return request();\r\n }\r\n }\r\n\r\n private waitRefreshToken(request) {\r\n return this.sessionService.refreshToken.pipe(switchMap(request));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpClient\r\n} from '@angular/common/http';\r\n\r\nimport { ApiClientService } from './../../shared/services/api-client.service';\r\nimport { AB_API_REFRESH_SESSION } from './../../shared/constants';\r\nimport { Subject } from 'rxjs';\r\nimport { tap, switchMap } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionService extends ApiClientService {\r\n private callDone = new Subject();\r\n private waitOtherRequest = new Subject();\r\n private waiting = false;\r\n private _waitingOtherRequest = false;\r\n private requests = new Map();\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_REFRESH_SESSION);\r\n }\r\n\r\n get refreshToken() {\r\n return this.callDone.asObservable();\r\n }\r\n\r\n get waitingForRefreshToken() {\r\n return this.waiting;\r\n }\r\n\r\n set waitingOtherRequest(value) {\r\n this._waitingOtherRequest = value;\r\n\r\n if (!value) {\r\n this.waitOtherRequest.next(true);\r\n this.waitOtherRequest.complete();\r\n this.waitOtherRequest = new Subject();\r\n }\r\n }\r\n\r\n refreshSession() {\r\n const refresh = () => {\r\n this.waiting = true;\r\n return this.get().pipe(\r\n tap(\r\n () => {},\r\n () => {\r\n this.refreshTokenOver();\r\n },\r\n () => {\r\n this.refreshTokenOver();\r\n }\r\n )\r\n );\r\n };\r\n\r\n if (this._waitingOtherRequest) {\r\n return this.refreshTokenWait(refresh);\r\n } else {\r\n return refresh();\r\n }\r\n }\r\n\r\n setRequset(req) {\r\n this.requests.set(req.url, true);\r\n }\r\n\r\n public chechResponse(req) {\r\n if (this.requests.has(req.url)) {\r\n this.requests.delete(req.url);\r\n }\r\n\r\n if (this.requests.size === 0) {\r\n this.waitingOtherRequest = false;\r\n }\r\n }\r\n\r\n private refreshTokenWait(request) {\r\n return this.waitOtherRequest.asObservable().pipe(switchMap(request));\r\n }\r\n\r\n private refreshTokenOver() {\r\n this.callDone.next(true);\r\n this.waiting = false;\r\n this.callDone.complete();\r\n this.callDone = new Subject();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SessionInterceptorService } from './services/session-interceptor.service';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { IdleConfigService } from './services/idle-config.service';\r\nimport { SessionExpiryPopupComponent } from './components/session-expiry-popup/session-expiry-popup.component';\r\nimport { SharedModule } from '../shared/shared.module';\r\n\r\nconst SessionComponents = [\r\n { name: 'SessionExpiryPopup', type: SessionExpiryPopupComponent }\r\n];\r\n\r\n@NgModule({\r\n declarations: [SessionExpiryPopupComponent],\r\n imports: [CommonModule, SharedModule],\r\n providers: [\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: SessionInterceptorService,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SessionModule {\r\n constructor(idleConfigService: IdleConfigService) {\r\n idleConfigService.configIdle();\r\n }\r\n}\r\n\r\nexport { SessionComponents };\r\n","import { AbDatePipe } from '../pipes/ab-date.pipe';\r\nimport { Inject, LOCALE_ID, PLATFORM_ID, Injectable } from '@angular/core';\r\nimport { MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { Moment } from 'moment';\r\n\r\n@Injectable()\r\nexport class AbDateAdapter extends MomentDateAdapter {\r\n constructor(\r\n private abDatePipe: AbDatePipe,\r\n @Inject(LOCALE_ID) locale: string,\r\n @Inject(PLATFORM_ID) platformId: any\r\n ) {\r\n super(locale, platformId);\r\n }\r\n\r\n format(value: Moment) {\r\n return this.abDatePipe.transform(value);\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport {\r\n AB_DASHBOARD_URL,\r\n AB_ACCESS_DENIED_REDIRECT_INTERVAL\r\n} from '../../constants';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss/layout';\r\n\r\n@Component({\r\n selector: 'ab-access-denied',\r\n templateUrl: './access-denied.component.html',\r\n styleUrls: ['./access-denied.component.scss']\r\n})\r\nexport class AccessDeniedComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n @Input() stopTimer = false;\r\n constructor(private router: Router) {}\r\n\r\n ngOnInit() {\r\n if (!this.stopTimer) {\r\n setTimeout(() => {\r\n this.router.navigate([AB_DASHBOARD_URL]);\r\n }, AB_ACCESS_DENIED_REDIRECT_INTERVAL);\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n

    \r\n

    \r\n
    \r\n
    \r\n","import {\r\n Component,\r\n OnInit,\r\n ViewChild,\r\n ElementRef,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n TemplateRef\r\n} from '@angular/core';\r\nimport { Item, Field } from '@sitecore-jss/sitecore-jss/layout';\r\nimport {\r\n ToAccountsListForTransfersResponse,\r\n IBankAccountListItem,\r\n IBasicAddress\r\n} from '../../../transfers/services/to-accounts.service';\r\nimport {\r\n trigger,\r\n style,\r\n transition,\r\n animate,\r\n AnimationEvent\r\n} from '@angular/animations';\r\nimport { fromEvent, Observable, Subject } from 'rxjs';\r\nimport { startWith, map } from 'rxjs/operators';\r\nimport { GetItemListFieldsService } from '../../services/get-item-list-fields.service';\r\nimport {\r\n ISecurityAddressBook,\r\n IAddressBookAction\r\n} from '../../interfaces/address-book.interfaces';\r\n\r\nenum ADDRESS_BOOK_TABS {\r\n Personal,\r\n Companies,\r\n Animation\r\n}\r\n\r\nconst tabAnimation = [\r\n transition(':enter', [\r\n style({\r\n opacity: 0\r\n }),\r\n animate(800)\r\n ]),\r\n transition(':leave', [animate(200, style({ opacity: 0 }))])\r\n];\r\n\r\n@Component({\r\n selector: 'ab-address-book',\r\n templateUrl: './address-book.component.html',\r\n styleUrls: ['./address-book.component.scss'],\r\n animations: [\r\n trigger('changeTabPersonal', tabAnimation),\r\n trigger('changeTabCompanies', tabAnimation)\r\n ]\r\n})\r\nexport class AddressBookComponent implements OnInit {\r\n @Input() personalTabNotPermission: TemplateRef;\r\n @Input() internalTransferDisabled: TemplateRef;\r\n @Input() externalTransferDisabled: TemplateRef;\r\n @Input() billTransferDisabled: TemplateRef;\r\n\r\n @Input() items: { [key: string]: Item };\r\n @Input() data: ToAccountsListForTransfersResponse;\r\n @Input() securityAddressBook: ISecurityAddressBook;\r\n @Input() pageMode: boolean;\r\n @Input() companiesActions: IAddressBookAction[];\r\n @Input() beneficiariesActions: IAddressBookAction[];\r\n @Output() onSelect = new EventEmitter();\r\n @Output() addAddress = new EventEmitter();\r\n @Output() tabChange = new EventEmitter();\r\n\r\n @ViewChild('searchInput', { static: true }) searchInput: ElementRef;\r\n\r\n private _companiesList: { [key: string]: any[] } = {};\r\n private _ownAccountList: IBankAccountListItem[];\r\n private _beneficiariesList: { [key: string]: IBasicAddress[] } = {};\r\n private _searchSubject;\r\n\r\n public tabs: { [key: string]: Item };\r\n public addressBookTabs = ADDRESS_BOOK_TABS;\r\n public selectedTab: ADDRESS_BOOK_TABS = ADDRESS_BOOK_TABS.Personal;\r\n public search: string;\r\n public personalSearch: Field;\r\n public companiesSearch: Field;\r\n public ownAccountList: Observable;\r\n public beneficiariesList: Observable<{ [key: string]: IBasicAddress[] }>;\r\n public companiesList: Observable<{ [key: string]: any[] }>;\r\n public showOwnAccounts = true;\r\n public isEmpty = false;\r\n public ownAccountListEmpty = false;\r\n public beneficiariesListEmpty = false;\r\n\r\n constructor(private getItemListFieldsService: GetItemListFieldsService) {}\r\n\r\n ngOnInit() {\r\n this.pageMode = !!this.pageMode;\r\n this.tabs = this.getItemListFieldsService.getItems(\r\n this.items.tabs.fields.items as Item[]\r\n );\r\n\r\n this.personalSearch = this.items.personalSearch.fields.label as Field;\r\n this.companiesSearch = this.items.companiesSearch.fields.label as Field;\r\n\r\n this.initPersonalList();\r\n this.initCompaniesList();\r\n\r\n this.ownAccountList = this.searchObservable.pipe(\r\n startWith(null),\r\n map(event => {\r\n const result = this.filterOwnAccounts(event);\r\n // setTimeout prevent console error for changeing the value\r\n setTimeout(() => {\r\n this.ownAccountListEmpty = result.length === 0;\r\n });\r\n\r\n return result;\r\n })\r\n );\r\n\r\n this.companiesList = this.searchObservable.pipe(\r\n startWith(null),\r\n map(event => {\r\n const result = this.filterLetterArray(event, this._companiesList);\r\n // setTimeout prevent console error for changeing the value\r\n setTimeout(() => {\r\n this.isEmpty = Object.keys(result).length === 0;\r\n });\r\n\r\n return result;\r\n })\r\n );\r\n\r\n this.beneficiariesList = this.searchObservable.pipe(\r\n startWith(null),\r\n map(event => {\r\n const result = this.filterLetterArray(event, this._beneficiariesList);\r\n // setTimeout prevent console error for changeing the value\r\n setTimeout(() => {\r\n this.beneficiariesListEmpty = Object.keys(result).length === 0;\r\n });\r\n\r\n return result;\r\n })\r\n );\r\n\r\n if (\r\n this.securityAddressBook.hideContacts &&\r\n this.securityAddressBook.hideOwnAccounts\r\n ) {\r\n this.selectedTab = ADDRESS_BOOK_TABS.Companies;\r\n }\r\n\r\n this.tabChange.emit(this.selectedTab);\r\n }\r\n\r\n selectTab(tab: ADDRESS_BOOK_TABS) {\r\n if (tab === this.selectedTab) {\r\n return;\r\n }\r\n\r\n this.selectedTab = this.isEmpty ? tab : ADDRESS_BOOK_TABS.Animation;\r\n if (this.isEmpty) {\r\n this.tabChange.emit(this.selectedTab);\r\n }\r\n\r\n this.isEmpty = false;\r\n }\r\n\r\n setOdd(i: number) {\r\n return i % 2 === 0;\r\n }\r\n\r\n select(item: any) {\r\n this.onSelect.emit(item);\r\n }\r\n\r\n trackByFn(index, item) {\r\n if (!item) {\r\n return null;\r\n }\r\n\r\n return item.accountNumber;\r\n }\r\n\r\n clearValue() {\r\n this.search = '';\r\n this._searchSubject.next();\r\n }\r\n\r\n captureDoneEvent(event: AnimationEvent, tab: ADDRESS_BOOK_TABS) {\r\n if (event.toState === 'void') {\r\n this.selectedTab = tab;\r\n this.tabChange.emit(this.selectedTab);\r\n }\r\n }\r\n\r\n triggerAddAddress() {\r\n this.addAddress.emit(true);\r\n }\r\n\r\n private initPersonalList() {\r\n let letter: string;\r\n\r\n if (this.data.beneficiariesAddresses) {\r\n this.data.beneficiariesAddresses.forEach(beneficiary => {\r\n if (\r\n !letter ||\r\n (beneficiary.name && letter !== beneficiary.name[0].toUpperCase())\r\n ) {\r\n letter = beneficiary.name[0].toUpperCase();\r\n this._beneficiariesList[letter] = [];\r\n }\r\n\r\n this._beneficiariesList[letter].push(beneficiary);\r\n });\r\n }\r\n\r\n if (this.data.ownBankAccounts) {\r\n this._ownAccountList = this.data.ownBankAccounts.sort((first, second) => {\r\n const firstName = this.getNameValue(first).toLocaleLowerCase();\r\n const secondName = this.getNameValue(second).toLocaleLowerCase();\r\n if (firstName > secondName) {\r\n return 1;\r\n }\r\n\r\n if (firstName < secondName) {\r\n return -1;\r\n }\r\n\r\n return 0;\r\n });\r\n\r\n this.showOwnAccounts =\r\n this._ownAccountList.length > 0 &&\r\n !this.securityAddressBook.hideOwnAccounts;\r\n }\r\n }\r\n\r\n private get searchObservable(): Observable {\r\n if (!this._searchSubject) {\r\n this._searchSubject = new Subject();\r\n\r\n fromEvent(\r\n this.searchInput.nativeElement,\r\n 'input'\r\n ).subscribe(event => {\r\n this._searchSubject.next(event);\r\n });\r\n }\r\n\r\n return this._searchSubject.asObservable();\r\n }\r\n\r\n private initCompaniesList() {\r\n let letter: string;\r\n if (this.data.billPayeesCompanies) {\r\n this.data.billPayeesCompanies.forEach(company => {\r\n if (\r\n !letter ||\r\n (company.name && letter !== company.name[0].toUpperCase())\r\n ) {\r\n letter = company.name[0].toUpperCase();\r\n this._companiesList[letter] = [];\r\n }\r\n\r\n this._companiesList[letter].push(company);\r\n });\r\n }\r\n }\r\n\r\n private getNameValue(item): string {\r\n return item.name || item.alias || item.description;\r\n }\r\n\r\n private filterOwnAccounts(event) {\r\n if (!this.search) {\r\n return this._ownAccountList;\r\n }\r\n\r\n return this._ownAccountList.filter(account => {\r\n return (\r\n this.getNameValue(account)\r\n .toLocaleLowerCase()\r\n .indexOf(this.search.toLocaleLowerCase()) !== -1 ||\r\n account.accountNumber.indexOf(this.search) !== -1\r\n );\r\n });\r\n }\r\n\r\n private filterLetterArray(event, data: { [key: string]: any[] }) {\r\n if (!this.search) {\r\n return data;\r\n }\r\n\r\n const search = this.search.toLocaleLowerCase();\r\n\r\n return Object.keys(data).reduce((result, key) => {\r\n const filterdData = data[key].filter(item => {\r\n return (\r\n this.getNameValue(item)\r\n .toLocaleLowerCase()\r\n .indexOf(search) !== -1 ||\r\n item.accountNumber.toLocaleLowerCase().indexOf(search) !== -1 ||\r\n (item.alias && item.alias.toLocaleLowerCase().indexOf(search) !== -1)\r\n );\r\n });\r\n\r\n if (filterdData.length !== 0) {\r\n result[key] = filterdData;\r\n }\r\n\r\n return result;\r\n }, {});\r\n }\r\n}\r\n\r\nexport { ADDRESS_BOOK_TABS };\r\n","\r\n
      \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ personal.alias || personal.description }}\r\n \r\n {{ personal.accountNumber }}\r\n \r\n {{ personal.portfolioName }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ item.key }}\r\n \r\n \r\n \r\n \r\n {{ beneficiary.name }}\r\n \r\n \r\n {{ beneficiary.alias }}\r\n \r\n \r\n {{ beneficiary.accountNumber || beneficiary.iban }}\r\n \r\n \r\n {{\r\n beneficiary.bank || beneficiary.bicCode || beneficiary.aba\r\n }}\r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {{ action.tooltip + ' ' + beneficiary.name }}\r\n
    \r\n \r\n {{ action.disbledTooltip }}\r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ item.key }}\r\n \r\n \r\n \r\n \r\n {{ company.name }}\r\n \r\n \r\n {{ company.accountNumber }}\r\n \r\n \r\n {{ company.bank }}\r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n {{ action.tooltip + ' ' + company.name }}\r\n
    \r\n
    \r\n {{ action.disbledTooltip }}\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n Optional,\r\n Host,\r\n SkipSelf,\r\n forwardRef,\r\n Input,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport {\r\n ControlContainer,\r\n NG_VALUE_ACCESSOR,\r\n ControlValueAccessor,\r\n AbstractControl,\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators,\r\n Validator,\r\n NG_VALIDATORS\r\n} from '@angular/forms';\r\nimport { FormFields } from '../../services/form-fields-generator.service';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { FormAllFieldsValidationService } from '../../services/form-all-fields-validation.service';\r\n\r\n@Component({\r\n selector: 'ab-address',\r\n templateUrl: './address.component.html',\r\n styleUrls: ['./address.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => AddressComponent),\r\n multi: true\r\n },\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => AddressComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AddressComponent\r\n implements OnInit, OnDestroy, Validator, ControlValueAccessor {\r\n @Input() formFields: FormFields;\r\n @Input() rendering: ComponentRendering;\r\n @Input() formControlName: string;\r\n @Input() showSaveAddressCheckbox = false;\r\n\r\n public addressForm = new UntypedFormGroup({\r\n streetName: new UntypedFormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(37)\r\n ]),\r\n houseNumber: new UntypedFormControl(null, Validators.maxLength(6)),\r\n city: new UntypedFormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(35)\r\n ]),\r\n ZIPCode: new UntypedFormControl(null, Validators.maxLength(10)),\r\n country: new UntypedFormControl(null, Validators.required)\r\n });\r\n\r\n public onTouched;\r\n\r\n private formControl: AbstractControl;\r\n\r\n constructor(\r\n @Optional()\r\n @Host()\r\n @SkipSelf()\r\n private controlContainer: ControlContainer,\r\n private formAllFieldsValidationService: FormAllFieldsValidationService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.formControl = this.controlContainer.control.get(this.formControlName);\r\n this.formControl.enable();\r\n this.formAllFieldsValidationService.addSubForms(this.addressForm);\r\n\r\n if (this.showSaveAddressCheckbox) {\r\n this.addressForm.addControl(\r\n 'saveBeneficiaryAddress',\r\n new UntypedFormControl(false)\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.formControl) {\r\n this.formControl.disable();\r\n this.formControl.setValue(null);\r\n this.formControl.clearValidators();\r\n }\r\n }\r\n\r\n get streetName() {\r\n return this.addressForm.get('streetName');\r\n }\r\n\r\n get city() {\r\n return this.addressForm.get('city');\r\n }\r\n\r\n get houseNumber() {\r\n return this.addressForm.get('houseNumber');\r\n }\r\n\r\n get ZIPCode() {\r\n return this.addressForm.get('ZIPCode');\r\n }\r\n\r\n get country() {\r\n return this.addressForm.get('country');\r\n }\r\n\r\n writeValue(value) {\r\n if (!value) {\r\n this.addressForm.reset(\r\n {\r\n streetName: null,\r\n houseNumber: null,\r\n city: null,\r\n ZIPCode: null,\r\n country: null\r\n },\r\n { emitEvent: false }\r\n );\r\n } else {\r\n this.addressForm.setValue(value, { emitEvent: false });\r\n }\r\n }\r\n\r\n registerOnChange(fn) {\r\n this.addressForm.valueChanges.subscribe(fn);\r\n }\r\n\r\n registerOnTouched(fn) {\r\n this.onTouched = fn;\r\n }\r\n\r\n validate() {\r\n if (this.addressForm.invalid) {\r\n return { invalid: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n {{\r\n formFields.genericErrors.validationInvalidStreetNameLength.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{\r\n formFields.genericErrors.validationInvalidHouseNumberLength\r\n .message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{\r\n formFields.genericErrors.required.message\r\n }}\r\n {{\r\n formFields.genericErrors.validationInvalidCityLength.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{\r\n formFields.genericErrors.validationInvalidZIpCodeLength.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{\r\n formFields.genericErrors.required.message\r\n }}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import {\r\n Component,\r\n forwardRef,\r\n Input,\r\n OnInit,\r\n Optional,\r\n Host,\r\n SkipSelf,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n NG_VALIDATORS,\r\n Validator,\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators,\r\n ValidationErrors,\r\n ControlContainer,\r\n AbstractControl\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { FormFields } from '../../../shared/services/form-fields-generator.service';\r\nimport {\r\n BankService,\r\n IBankInfo\r\n} from '../../../transfers/services/bank.service';\r\nimport { FormAllFieldsValidationService } from '../../../shared/services/form-all-fields-validation.service';\r\nimport TRANSFER_TYPE from '../../../transfers/enums/transfer-type';\r\nimport {\r\n StateService,\r\n IFinalState,\r\n IState\r\n} from '../../../transfers/services/state.service';\r\nimport { IBillPayees } from '../../../transfers/services/to-accounts.service';\r\n\r\n@Component({\r\n selector: 'ab-bank-list',\r\n templateUrl: './bank-list.component.html',\r\n styleUrls: ['./bank-list.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n multi: true,\r\n useExisting: forwardRef(() => BankListComponent)\r\n },\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => BankListComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class BankListComponent\r\n implements OnInit, Validator, ControlValueAccessor, OnDestroy {\r\n @Input() formFields: FormFields;\r\n @Input() formControlName: string;\r\n @Input() withoutState: boolean;\r\n @Input() withoutLabel: boolean;\r\n @Input() skipDestroy: boolean;\r\n\r\n public bankList: IBankInfo[];\r\n public onTouched: Function;\r\n public onChange: Function;\r\n public selectedBank: IBankInfo;\r\n private prefilledValue: string;\r\n protected transferType: TRANSFER_TYPE;\r\n private isAba = false;\r\n\r\n public bankFormGroup = new UntypedFormGroup({\r\n domesticBeneficiaryBank: new UntypedFormControl(null, Validators.required)\r\n });\r\n protected subscriptions: { [key: string]: Subscription } = {};\r\n\r\n protected formControl: AbstractControl;\r\n\r\n get domesticBeneficiaryBank() {\r\n return this.bankFormGroup.get('domesticBeneficiaryBank');\r\n }\r\n\r\n constructor(\r\n @Optional()\r\n @Host()\r\n @SkipSelf()\r\n protected controlContainer: ControlContainer,\r\n protected stateService: StateService,\r\n protected bankService: BankService,\r\n protected formAllFieldsValidationService: FormAllFieldsValidationService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.formControl = this.controlContainer.control.get(this.formControlName);\r\n this.formControl.enable();\r\n this.formAllFieldsValidationService.addSubForms(this.bankFormGroup);\r\n\r\n if (this.withoutState) {\r\n this.bankService.getBankByCountry().subscribe(banks => {\r\n this.bankList = banks;\r\n this.updateForm(0);\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.stateService.setProp(IState.domesticBeneficiaryBank, {});\r\n\r\n this.subscriptions.valueChanges = this.domesticBeneficiaryBank.valueChanges.subscribe(\r\n value => {\r\n if (value) {\r\n this.stateService.setProp(IState.domesticBeneficiaryBank, value);\r\n }\r\n }\r\n );\r\n\r\n this.subscriptions.stateSubscription = this.stateService\r\n .getState()\r\n .subscribe(state => this.updateState(state));\r\n }\r\n\r\n updateState(state: IFinalState) {\r\n if (state && state.transferType) {\r\n this.transferType = state.transferType;\r\n this.bankService.getBankByCountry().subscribe(banks => {\r\n this.bankList = banks;\r\n this.updateForm();\r\n });\r\n }\r\n }\r\n\r\n updateForm(transferType?: TRANSFER_TYPE) {\r\n const type =\r\n transferType || transferType === 0 ? transferType : this.transferType;\r\n\r\n if (this.prefilledValue) {\r\n const prefilledBank = this.bankList.filter(bank => {\r\n if (\r\n this.isAba &&\r\n bank.abaCode.toLocaleLowerCase() ===\r\n this.prefilledValue.toLocaleLowerCase()\r\n ) {\r\n return bank;\r\n }\r\n\r\n if (bank.bicCode.toLowerCase() === this.prefilledValue.toLowerCase()) {\r\n return bank;\r\n }\r\n })[0];\r\n\r\n this.selectBank(prefilledBank);\r\n if (type !== TRANSFER_TYPE.default) {\r\n this.prefilledValue = null;\r\n }\r\n\r\n return;\r\n }\r\n\r\n if (type === TRANSFER_TYPE.billPayee) {\r\n const toAccount = this.stateService.getPropValue(IState.toAccount)\r\n .value as IBillPayees,\r\n arubaBank = this.bankList.filter(bank => {\r\n if (\r\n toAccount.bicCode &&\r\n bank.bicCode.toLowerCase() === toAccount.bicCode.toLowerCase()\r\n ) {\r\n return bank;\r\n }\r\n });\r\n\r\n this.selectBank(arubaBank[0]);\r\n } else {\r\n this.bankFormGroup.reset();\r\n }\r\n }\r\n\r\n selectBank(bank: any) {\r\n this.bankFormGroup.controls['domesticBeneficiaryBank'].setValue(bank);\r\n this.stateService.setProp(IState.domesticBeneficiaryBank, bank);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.stateService.setProp(IState.domesticBeneficiaryBank, {});\r\n\r\n Object.keys(this.subscriptions).forEach(subscription => {\r\n this.subscriptions[subscription].unsubscribe();\r\n });\r\n\r\n if (!this.skipDestroy) {\r\n this.formControl.clearValidators();\r\n this.formControl.disable();\r\n this.formControl.markAsPristine();\r\n this.formControl.markAsUntouched();\r\n this.formControl.patchValue(null);\r\n }\r\n }\r\n\r\n writeValue(value) {\r\n if (!value) {\r\n this.selectedBank = value;\r\n this.prefilledValue = null;\r\n this.bankFormGroup.reset(\r\n { domesticBeneficiaryBank: null },\r\n { emitEvent: false }\r\n );\r\n } else {\r\n this.prefilledValue = value.bicCode;\r\n\r\n if (value.value) {\r\n this.prefilledValue = value.value;\r\n\r\n if (value.code && value.code === 'ABA') {\r\n this.isAba = true;\r\n }\r\n }\r\n\r\n if (this.bankList && this.bankList.length !== 0) {\r\n this.updateForm(0);\r\n }\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.domesticBeneficiaryBank.valueChanges.subscribe(fn);\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouched = fn;\r\n }\r\n\r\n validate(): ValidationErrors | null {\r\n if (this.bankFormGroup.valid) {\r\n return null;\r\n }\r\n\r\n if (\r\n this.bankFormGroup.invalid &&\r\n this.domesticBeneficiaryBank.errors &&\r\n this.domesticBeneficiaryBank.errors.required\r\n ) {\r\n return { required: true };\r\n }\r\n }\r\n}\r\n","
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {{ bank.name }}\r\n \r\n \r\n {{ formFields.genericErrors.required.message }}\r\n
    \r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n ViewChild,\r\n forwardRef,\r\n Optional,\r\n Host,\r\n SkipSelf,\r\n DoCheck,\r\n RendererFactory2,\r\n Renderer2,\r\n OnDestroy,\r\n AfterViewInit,\r\n} from \"@angular/core\";\r\nimport { ComponentRendering } from \"@sitecore-jss/sitecore-jss-angular\";\r\nimport {\r\n CountryListResponse,\r\n CountryListService,\r\n} from \"../../../transfers/services/country-list.service\";\r\nimport { FormFieldsGeneratorService } from \"../../services/form-fields-generator.service\";\r\nimport { DialogStateService } from \"../../../dialogs/services/dialog-state.service\";\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n ControlContainer,\r\n AbstractControl,\r\n} from \"@angular/forms\";\r\nimport { MatLegacySelect } from \"@angular/material/legacy-select\";\r\nimport { FormAllFieldsValidationService } from \"../../services/form-all-fields-validation.service\";\r\nimport { Subscription } from \"rxjs/internal/Subscription\";\r\n\r\ninterface ICountry {\r\n countryName: string;\r\n countryCode: string;\r\n hidden?: boolean;\r\n}\r\n\r\n@Component({\r\n selector: \"ab-country-list\",\r\n templateUrl: \"./country-list.component.html\",\r\n styleUrls: [\"./country-list.component.scss\"],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => CountryListComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class CountryListComponent\r\n implements OnInit, DoCheck, ControlValueAccessor, OnDestroy, AfterViewInit\r\n{\r\n @Input() rendering: ComponentRendering;\r\n @ViewChild(MatLegacySelect, { static: true }) matSelect: MatLegacySelect;\r\n @Input() formControlName: string;\r\n @Input() hideLabel: boolean;\r\n\r\n public formFields: any;\r\n public countryList: ICountry[] = [];\r\n public countryListDropDown: ICountry[] = [];\r\n public selectedCountryName: string;\r\n public onTouched;\r\n\r\n private formControl: AbstractControl;\r\n private prefilledValue: string;\r\n private renderer: Renderer2;\r\n private positionChangeSubscription: Subscription;\r\n\r\n public countryForm = new UntypedFormGroup({\r\n country: new UntypedFormControl(),\r\n });\r\n\r\n get country() {\r\n return this.countryForm.get(\"country\");\r\n }\r\n\r\n constructor(\r\n @Optional()\r\n @Host()\r\n @SkipSelf()\r\n private controlContainer: ControlContainer,\r\n private countyListService: CountryListService,\r\n private formFieldsGeneratorService: FormFieldsGeneratorService,\r\n private dialogStateService: DialogStateService,\r\n private formAllFieldsValidationService: FormAllFieldsValidationService,\r\n rendererFactory: RendererFactory2\r\n ) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n ngOnInit() {\r\n this.formControl = this.controlContainer.control.get(this.formControlName);\r\n this.country.setValidators(this.formControl.validator);\r\n this.formFields = this.formFieldsGeneratorService.generateFormFields(\r\n this.rendering\r\n ) as any;\r\n this.getCountryList();\r\n }\r\n\r\n ngAfterViewInit() {\r\n // this.positionChangeSubscription = this.matSelect.overlayDir.positionChange.subscribe(\r\n // () => {\r\n // this.setPosition(\r\n // this.matSelect._overlayPanelClass.overlayRef.overlayElement,\r\n // 'left',\r\n // 7\r\n // );\r\n // if (this.matSelect.overlayDir.overlayRef.overlayElement.style.top) {\r\n // this.setPosition(\r\n // this.matSelect.overlayDir.overlayRef.overlayElement,\r\n // 'top',\r\n // 31\r\n // );\r\n // } else {\r\n // this.setPosition(\r\n // this.matSelect.overlayDir.overlayRef.overlayElement,\r\n // 'bottom',\r\n // 33\r\n // );\r\n // }\r\n // }\r\n // );\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.positionChangeSubscription) {\r\n this.positionChangeSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n ngDoCheck() {\r\n if (this.formControl.dirty && this.formControl.touched) {\r\n this.formAllFieldsValidationService.validation(this.countryForm);\r\n }\r\n }\r\n\r\n onOpenedChange(value) {\r\n if (value) {\r\n this.renderer.addClass(document.body, \"menu-opened\");\r\n } else {\r\n this.renderer.removeClass(document.body, \"menu-opened\");\r\n }\r\n }\r\n\r\n getCountryList() {\r\n this.countyListService\r\n .get()\r\n .subscribe((response) => this.handleResponse(response));\r\n }\r\n\r\n handleResponse(response: CountryListResponse) {\r\n const orderArray =\r\n this.formFields.fields.intCountry.shortListCountries.value\r\n .toLowerCase()\r\n .split(\", \");\r\n if (response.list) {\r\n Object.keys(response.list).forEach((key) => {\r\n this.countryList.push({\r\n countryCode: key,\r\n countryName: response.list[key],\r\n });\r\n\r\n const index = orderArray.indexOf(key);\r\n\r\n if (index !== -1) {\r\n this.countryListDropDown[index] = {\r\n countryCode: key,\r\n countryName: response.list[key],\r\n };\r\n }\r\n });\r\n\r\n if (this.prefilledValue) {\r\n this.setPrefilledToForm();\r\n }\r\n }\r\n }\r\n\r\n openDialog() {\r\n this.matSelect.close();\r\n this.dialogStateService\r\n .openDialog(\"countryList\", this.countryList)\r\n .subscribe((result: ICountry) => {\r\n if (result) {\r\n result.hidden = true;\r\n this.countryListDropDown.push(result);\r\n this.country.setValue(result);\r\n }\r\n });\r\n }\r\n\r\n writeValue(value) {\r\n if (!value) {\r\n this.countryForm.reset(\r\n {\r\n country: null,\r\n },\r\n {\r\n emitEvent: false,\r\n }\r\n );\r\n } else {\r\n this.prefilledValue = value.countryCode\r\n ? value.countryCode.toLowerCase()\r\n : value.toLowerCase();\r\n\r\n if (this.countryList && this.countryList.length !== 0) {\r\n this.setPrefilledToForm();\r\n } else {\r\n this.country.setValue(null, { emitEvent: true });\r\n }\r\n }\r\n }\r\n\r\n registerOnChange(fn) {\r\n this.country.valueChanges.subscribe(fn);\r\n }\r\n\r\n registerOnTouched(fn) {\r\n this.onTouched = fn;\r\n }\r\n\r\n public setPosition(\r\n element: HTMLElement,\r\n propertyName: string,\r\n increaseValue: number\r\n ) {\r\n let position = 0;\r\n position = parseFloat(element.style[propertyName].replace(\"px\", \"\"));\r\n\r\n position = position + increaseValue;\r\n\r\n element.style[propertyName] = `${position}px`;\r\n }\r\n\r\n private setPrefilledToForm() {\r\n let prefilledCountry;\r\n this.countryListDropDown.some((country) => {\r\n if (country.countryCode === this.prefilledValue) {\r\n prefilledCountry = country;\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n\r\n if (!prefilledCountry) {\r\n this.countryList.some((country) => {\r\n if (country.countryCode === this.prefilledValue) {\r\n prefilledCountry = country;\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n\r\n prefilledCountry.hidden = true;\r\n this.countryListDropDown.push(prefilledCountry);\r\n }\r\n\r\n setTimeout(() => {\r\n this.countryForm.setValue({\r\n country: prefilledCountry,\r\n });\r\n });\r\n\r\n this.prefilledValue = null;\r\n }\r\n}","
    \r\n \r\n \r\n \r\n \r\n \r\n {{\r\n country.value ? country.value.countryName : ''\r\n }}\r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    {{ country.countryName }}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n","import { Component, forwardRef, Input, OnInit, DoCheck } from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n UntypedFormControl,\r\n Validator,\r\n ValidationErrors,\r\n NG_VALIDATORS,\r\n UntypedFormGroup,\r\n Validators,\r\n AbstractControl\r\n} from '@angular/forms';\r\nimport { ICurrency } from '../../interfaces/currency.interface';\r\nimport { FormInputField } from '../../services/form-fields-generator.service';\r\nimport { FormAllFieldsValidationService } from '../../services/form-all-fields-validation.service';\r\nimport { RangeValidator } from '../../../validators/functions/range-validation';\r\n\r\n@Component({\r\n selector: 'ab-currency-input',\r\n templateUrl: './currency-input.component.html',\r\n styleUrls: ['./currency-input.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => CurrencyInputComponent),\r\n multi: true\r\n },\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => CurrencyInputComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class CurrencyInputComponent\r\n implements ControlValueAccessor, Validator, OnInit, DoCheck {\r\n @Input() maxlength: number;\r\n @Input() placeholder: string;\r\n @Input() field: FormInputField;\r\n @Input() formControl: UntypedFormControl;\r\n @Input() amountRequired: boolean;\r\n\r\n @Input() set rangeMin(value) {\r\n if (!this._rangeMin) {\r\n this._rangeMin = value;\r\n return;\r\n }\r\n\r\n this._rangeMin = value;\r\n\r\n this.currencyForm.get('amount').clearValidators();\r\n\r\n const validatiors = [];\r\n\r\n if (this.amountRequired) {\r\n validatiors.push(Validators.required);\r\n }\r\n\r\n if (this.rangeMax && this.rangeMin) {\r\n validatiors.push(RangeValidator(this._rangeMin, this.rangeMax));\r\n }\r\n\r\n this.currencyForm.get('amount').setValidators(validatiors);\r\n this.currencyForm.get('amount').updateValueAndValidity();\r\n }\r\n\r\n @Input() rangeMax: number;\r\n @Input() amountExceedsLimit: boolean;\r\n private _notAllowedCurrency: boolean;\r\n private _rangeMin: number;\r\n\r\n get rangeMin() {\r\n return this._rangeMin;\r\n }\r\n\r\n @Input('notAllowedCurrency') set allowedCurrency(value: boolean) {\r\n if (this._notAllowedCurrency && this._notAllowedCurrency !== value) {\r\n this._notAllowedCurrency = value;\r\n this.currencyCode.setErrors(null);\r\n\r\n this.currencyForm.updateValueAndValidity();\r\n return;\r\n }\r\n\r\n this._notAllowedCurrency = value;\r\n }\r\n\r\n get notAllowedCurrency(): boolean {\r\n return this._notAllowedCurrency;\r\n }\r\n\r\n @Input() currencyInput: string;\r\n\r\n public currencyForm = new UntypedFormGroup({\r\n amount: new UntypedFormControl(null),\r\n currencyCode: new UntypedFormControl(null)\r\n });\r\n\r\n private onChange;\r\n private onTouched;\r\n private initValueDone = false;\r\n get currencyCode() {\r\n return this.currencyForm.get('currencyCode');\r\n }\r\n constructor(\r\n private formAllFieldsValidationService: FormAllFieldsValidationService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.formAllFieldsValidationService.addSubForms(this.currencyForm);\r\n\r\n const validatiors = [];\r\n\r\n if (this.amountRequired) {\r\n validatiors.push(Validators.required);\r\n }\r\n\r\n if (this.rangeMax && this.rangeMin) {\r\n validatiors.push(RangeValidator(this.rangeMin, this.rangeMax));\r\n }\r\n\r\n this.currencyForm.get('amount').setValidators(validatiors);\r\n }\r\n\r\n ngDoCheck() {\r\n if (this.amountExceedsLimit || this.notAllowedCurrency) {\r\n this.currencyForm.updateValueAndValidity();\r\n }\r\n\r\n if (this.formControl.hasError('lessThan')) {\r\n this.currencyForm.get('amount').setErrors({\r\n lessThan: true\r\n });\r\n } else if (this.currencyForm.get('amount').hasError('lessThan')) {\r\n this.currencyForm.get('amount').setErrors(null);\r\n this.currencyForm.updateValueAndValidity();\r\n }\r\n }\r\n\r\n writeValue(value: ICurrency) {\r\n if (value) {\r\n if (\r\n this.currencyForm.get('amount').value !== null &&\r\n value.amount === null\r\n ) {\r\n this.currencyForm.reset(value, { emitEvent: false });\r\n return;\r\n }\r\n\r\n if (this.currencyForm.get('amount').value === value.amount) {\r\n return this.currencyForm.patchValue({\r\n currencyCode: value.currencyCode\r\n });\r\n }\r\n\r\n if (!value.amount || !value.currencyCode) {\r\n this.currencyForm.patchValue(value);\r\n } else {\r\n this.currencyForm.setValue(value);\r\n }\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.onChange = fn;\r\n this.currencyForm.valueChanges.subscribe(value => this.change(value));\r\n }\r\n\r\n change(value) {\r\n if (this.initValueDone && this.currencyForm.get('amount').dirty) {\r\n this.onChange(value);\r\n } else {\r\n this.initValueDone = true;\r\n }\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouched = fn;\r\n }\r\n\r\n touch() {\r\n this.onTouched();\r\n }\r\n\r\n validate(): ValidationErrors | null {\r\n if (\r\n this.rangeMin &&\r\n this.rangeMax &&\r\n this.currencyForm.value.amount !== null\r\n ) {\r\n const validation = RangeValidator(\r\n this.rangeMin,\r\n this.rangeMax\r\n )({\r\n value: this.currencyForm.value.amount\r\n } as AbstractControl);\r\n\r\n if (validation) {\r\n return validation;\r\n }\r\n }\r\n\r\n if (this.amountRequired && !this.currencyForm.value.amount) {\r\n return { required: true };\r\n }\r\n\r\n if (this.amountExceedsLimit) {\r\n this.currencyForm.get('amount').setErrors({\r\n amountExceedsLimit: true\r\n });\r\n return { amountExceedsLimit: true };\r\n }\r\n\r\n if (this.notAllowedCurrency) {\r\n this.currencyForm.get('currencyCode').setErrors({\r\n notAllowedCurrency: true\r\n });\r\n return { notAllowedCurrency: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","
    \r\n \r\n \r\n \r\n \r\n {{ value.fields.Label.value }}\r\n \r\n \r\n \r\n \r\n
    \r\n
    {{ currencyCode.value }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validators\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { DialogStateService } from '../../../dialogs/services/dialog-state.service';\r\nimport {\r\n BulkTransferService,\r\n BULK_TRANSFER_TYPES\r\n} from './../../../transfers/services/bulk-transfer.service';\r\n\r\nimport { FormFields } from './../../services/form-fields-generator.service';\r\n\r\ninterface IFileUploadConfiguration {\r\n allowedExtensions: Array;\r\n maxFileSize: number;\r\n}\r\n\r\ninterface IFileInterface {\r\n file: File;\r\n format: string;\r\n}\r\n\r\n@Component({\r\n selector: 'ab-file-upload-field',\r\n templateUrl: './file-upload-field.component.html',\r\n styleUrls: ['./file-upload-field.component.scss']\r\n})\r\nexport class FileUploadFieldComponent implements OnInit {\r\n @Input()\r\n public formFields: FormFields;\r\n\r\n @Input()\r\n public configuration: IFileUploadConfiguration;\r\n\r\n @Output()\r\n private onFileUpload: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('fileElement')\r\n fileElement: ElementRef;\r\n\r\n public selectedFile: File = null;\r\n public fileEmitted: boolean = false;\r\n\r\n public uploadForm = new UntypedFormGroup({\r\n file: new UntypedFormControl(''),\r\n format: new UntypedFormControl('', Validators.required)\r\n });\r\n\r\n public bulkFileStructures: any;\r\n\r\n private defaultConfiguration: IFileUploadConfiguration = {\r\n allowedExtensions: [],\r\n maxFileSize: 1000\r\n };\r\n\r\n private subscription: Subscription;\r\n\r\n get file() {\r\n return this.uploadForm.get('file');\r\n }\r\n\r\n get format() {\r\n return this.uploadForm.get('format');\r\n }\r\n\r\n constructor(\r\n private bulkTransferService: BulkTransferService,\r\n private dialogStateService: DialogStateService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.configuration = Object.assign(\r\n this.defaultConfiguration,\r\n this.configuration\r\n );\r\n\r\n const values = [...this.formFields.fields.bulkFileStructures.values];\r\n\r\n const purposeOptions = {\r\n [BULK_TRANSFER_TYPES.INTERNATIONAL]: values.splice(2, 1),\r\n [BULK_TRANSFER_TYPES.DOMESTIC]: values.splice(0, 2)\r\n };\r\n this.bulkFileStructures = purposeOptions[BULK_TRANSFER_TYPES.DOMESTIC];\r\n\r\n this.subscription = this.bulkTransferService\r\n .getPurpose()\r\n .subscribe(purpose => {\r\n if (\r\n this.bulkTransferService.getTransferType(purpose) ===\r\n BULK_TRANSFER_TYPES.INTERNATIONAL\r\n ) {\r\n this.format.disable();\r\n this.deleteFile();\r\n this.bulkFileStructures =\r\n purposeOptions[BULK_TRANSFER_TYPES.INTERNATIONAL];\r\n } else {\r\n if (\r\n this.bulkFileStructures ===\r\n purposeOptions[BULK_TRANSFER_TYPES.INTERNATIONAL]\r\n ) {\r\n this.deleteFile();\r\n }\r\n this.format.enable();\r\n this.bulkFileStructures =\r\n purposeOptions[BULK_TRANSFER_TYPES.DOMESTIC];\r\n }\r\n\r\n this.format.setValue(this.bulkFileStructures[0].fields.Value.value);\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n openUploadWindow($event: any) {\r\n $event.preventDefault();\r\n this.fileElement.nativeElement.click();\r\n }\r\n\r\n onFilesSelect($event) {\r\n this.fileEmitted = false;\r\n let file = $event.target.files[0];\r\n this.selectedFile = file;\r\n this.validateFile(file);\r\n }\r\n\r\n deleteFile() {\r\n this.selectedFile = null;\r\n this.file.reset();\r\n this.emitFile();\r\n }\r\n\r\n emitFile() {\r\n this.fileEmitted = true;\r\n this.onFileUpload.emit({\r\n file: this.selectedFile,\r\n format: this.format.value\r\n });\r\n }\r\n\r\n openExplainationDialog() {\r\n this.dialogStateService\r\n .openDialog('bulkStructureExplainationDialog')\r\n .subscribe();\r\n }\r\n\r\n private validateFile(file: File): boolean {\r\n this.file.markAsDirty();\r\n return file && this.validateExtension(file) && this.validateSize(file);\r\n }\r\n\r\n private validateExtension(file: File): boolean {\r\n let ext = file.name.split('.')[file.name.split('.').length - 1];\r\n if (\r\n this.configuration.allowedExtensions.lastIndexOf(ext.toLowerCase()) != -1\r\n ) {\r\n return true;\r\n }\r\n\r\n this.file.setErrors({\r\n type: true\r\n });\r\n return false;\r\n }\r\n\r\n private validateSize(file: File): boolean {\r\n if (file.size <= this.configuration.maxFileSize) {\r\n return true;\r\n }\r\n\r\n this.file.setErrors({\r\n size: true\r\n });\r\n return false;\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n \r\n\r\n \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n {{ value.fields.Label.value }}\r\n \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n {{ formFields.fields.select.label.value }}\r\n \r\n\r\n \r\n {{\r\n formFields.fields.revalidate.label.value\r\n }}\r\n {{\r\n formFields.fields.upload.label.value\r\n }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n {{ formFields.genericErrors.required.message }}\r\n \r\n\r\n \r\n {{ formFields.genericErrors.validationInvalidFileType.message }}\r\n \r\n\r\n \r\n {{ formFields.genericErrors.validationInvalidFileSize.message }}\r\n \r\n
    \r\n \r\n
    \r\n","import {\r\n Component,\r\n Input,\r\n OnInit,\r\n Optional,\r\n Host,\r\n SkipSelf,\r\n OnDestroy,\r\n ElementRef,\r\n ViewChild,\r\n forwardRef,\r\n Output,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n ControlContainer,\r\n AbstractControl,\r\n NG_VALUE_ACCESSOR,\r\n NG_VALIDATORS,\r\n UntypedFormGroup,\r\n UntypedFormControl,\r\n Validator,\r\n Validators\r\n} from '@angular/forms';\r\nimport { FormFields } from '../../services/form-fields-generator.service';\r\nimport { ComponentRendering, Field } from '@sitecore-jss/sitecore-jss-angular';\r\nimport { Item } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { GetItemListFieldsService } from '../../services/get-item-list-fields.service';\r\nimport {\r\n BankByBICResponse,\r\n BankByBICService\r\n} from '../../../transfers/services/bank-by-bic.service';\r\nimport { FormAllFieldsValidationService } from '../../services/form-all-fields-validation.service';\r\nimport { Subject } from 'rxjs';\r\nimport { ConfigurationSettingsContextService } from '../../services/configuration-settings-context.service';\r\nimport SwiftFeePayee from '../../../transfers/enums/swift-fee-payee';\r\n\r\n@Component({\r\n selector: 'ab-foreign-bank',\r\n templateUrl: './foreign-bank.component.html',\r\n styleUrls: ['./foreign-bank.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ForeignBankComponent),\r\n multi: true\r\n },\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => ForeignBankComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class ForeignBankComponent\r\n implements OnInit, OnDestroy, ControlValueAccessor, Validator {\r\n @Input() formFields: FormFields;\r\n @Input() rendering: ComponentRendering;\r\n @Input() formControlName: string;\r\n @Input() hideCharges: boolean;\r\n @Output() beneficiaryBankName: EventEmitter = new EventEmitter();\r\n @Output() intermediaryBankName: EventEmitter = new EventEmitter();\r\n @ViewChild('beneficiaryBankValueInput') beneficiaryBankValueInput: ElementRef;\r\n @ViewChild('intermediaryBankValueInput')\r\n intermediaryBankValueInput: ElementRef;\r\n\r\n public bicValidators = [\r\n Validators.pattern('^(([a-zA-Z0-9 ]{8})*|([a-zA-Z0-9 ]{11}))*$'),\r\n Validators.minLength(this.validationPaymentsBICCodeMinLength),\r\n Validators.maxLength(this.validationPaymentsBICCodeLength)\r\n ];\r\n\r\n private abaValidators = [\r\n Validators.pattern('[0-9]+'),\r\n Validators.maxLength(this.validationAddressBookABALength),\r\n Validators.minLength(this.validationAddressBookABALength)\r\n ];\r\n\r\n public fields: { [key: string]: { [name: string]: Field } };\r\n public foreignBankForm = new UntypedFormGroup({\r\n swiftFeePayeeMethod: new UntypedFormControl('1', [Validators.required]),\r\n beneficiaryBankType: new UntypedFormControl(null),\r\n beneficiaryBankValue: new UntypedFormControl(null, [\r\n Validators.required,\r\n ...this.bicValidators\r\n ]),\r\n intermediaryBankType: new UntypedFormControl(null),\r\n intermediaryBankValue: new UntypedFormControl(null, this.bicValidators)\r\n });\r\n public onChange: Function;\r\n public onTouched: Function;\r\n public beneficiaryBank: BankByBICResponse = {};\r\n public intermediaryBank: BankByBICResponse = {};\r\n public beneficiaryBankMaxLength: number;\r\n public beneficiaryBankMinLength: number;\r\n public intermediaryBankMaxLength: number;\r\n public intermediaryBankMinLength: number;\r\n\r\n private formControl: AbstractControl;\r\n\r\n constructor(\r\n @Optional()\r\n @Host()\r\n @SkipSelf()\r\n private controlContainer: ControlContainer,\r\n private getItemListFieldsService: GetItemListFieldsService,\r\n protected bankByBICService: BankByBICService,\r\n private formAllFieldsValidationService: FormAllFieldsValidationService,\r\n private configurationSettingsContextService: ConfigurationSettingsContextService\r\n ) {\r\n this.beneficiaryBankMaxLength = this.validationPaymentsBICCodeLength;\r\n this.intermediaryBankMaxLength = this.validationPaymentsBICCodeLength;\r\n }\r\n\r\n get beneficiaryBankValue() {\r\n return this.foreignBankForm.get('beneficiaryBankValue');\r\n }\r\n\r\n get intermediaryBankValue() {\r\n return this.foreignBankForm.get('intermediaryBankValue');\r\n }\r\n\r\n get swiftFeePayeeMethod() {\r\n return this.foreignBankForm.get('swiftFeePayeeMethod');\r\n }\r\n\r\n get beneficiaryBankType() {\r\n return this.foreignBankForm.get('beneficiaryBankType');\r\n }\r\n\r\n get intermediaryBankType() {\r\n return this.foreignBankForm.get('intermediaryBankType');\r\n }\r\n\r\n private get validationPaymentsBICCodeLength() {\r\n return parseInt(\r\n this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'ValidationPaymentsBICCodeLength'\r\n ),\r\n 0\r\n );\r\n }\r\n\r\n private get validationPaymentsBICCodeMinLength() {\r\n return parseInt(\r\n this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'ValidationPaymentsBICCodeMinLength'\r\n ),\r\n 0\r\n );\r\n }\r\n\r\n private get validationAddressBookABALength() {\r\n return parseInt(\r\n this.configurationSettingsContextService?.getConfigurationSettingsValidationAttributeValue(\r\n 'ValidationAddressBookABALength'\r\n ),\r\n 0\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.formControl = this.controlContainer.control.get(this.formControlName);\r\n this.formControl.enable();\r\n this.formAllFieldsValidationService.addSubForms(this.foreignBankForm);\r\n\r\n if (!this.hideCharges) {\r\n this.fields = this.getItemListFieldsService.getFields(\r\n (this.rendering.fields.items as Item[]).filter(\r\n o => o.name === 'ForeignBankCharges'\r\n )[0]\r\n );\r\n }\r\n\r\n this.beneficiaryBankType.setValue(\r\n (this.formFields.fields.internationalBeneficiaryBankDD.values[0] as any)\r\n .fields.label.value\r\n );\r\n\r\n this.intermediaryBankType.setValue(\r\n (this.formFields.fields.intermediaryBeneficiaryBankDD.values[0] as any)\r\n .fields.label.value\r\n );\r\n\r\n this.beneficiaryBankType.valueChanges.subscribe(value => {\r\n this.beneficiaryBankValue.setValue(null);\r\n this.beneficiaryBank = {};\r\n setTimeout(() => {\r\n this.beneficiaryBankValueInput.nativeElement.focus();\r\n });\r\n this.setBeneficiaryBankValidators();\r\n });\r\n\r\n this.intermediaryBankType.valueChanges.subscribe(value => {\r\n this.intermediaryBankValue.setValue(null);\r\n this.intermediaryBank = {};\r\n setTimeout(() => {\r\n this.intermediaryBankValueInput.nativeElement.focus();\r\n });\r\n this.setIntermediaryBankValidators();\r\n });\r\n }\r\n\r\n setBeneficiaryBankValidators() {\r\n if (this.isABA(this.beneficiaryBankType)) {\r\n this.beneficiaryBankValue.clearValidators();\r\n this.beneficiaryBankValue.setValidators([\r\n Validators.required,\r\n ...this.abaValidators\r\n ]);\r\n this.beneficiaryBankMaxLength = this.validationAddressBookABALength;\r\n this.beneficiaryBankMinLength = this.validationAddressBookABALength;\r\n } else {\r\n this.beneficiaryBankValue.clearValidators();\r\n this.beneficiaryBankValue.setValidators([\r\n Validators.required,\r\n ...this.bicValidators\r\n ]);\r\n this.beneficiaryBankMaxLength = this.validationPaymentsBICCodeLength;\r\n this.beneficiaryBankMinLength = 1;\r\n }\r\n }\r\n\r\n setIntermediaryBankValidators() {\r\n if (this.isABA(this.intermediaryBankType)) {\r\n this.intermediaryBankValue.clearValidators();\r\n this.intermediaryBankValue.setValidators(this.abaValidators);\r\n this.intermediaryBankMaxLength = this.validationAddressBookABALength;\r\n this.intermediaryBankMinLength = this.validationAddressBookABALength;\r\n } else {\r\n this.intermediaryBankValue.clearValidators();\r\n this.intermediaryBankValue.setValidators(this.bicValidators);\r\n this.intermediaryBankMaxLength = this.validationPaymentsBICCodeLength;\r\n this.intermediaryBankMinLength = 0;\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.formControl.clearValidators();\r\n this.formControl.disable();\r\n this.formControl.markAsPristine();\r\n this.formControl.markAsUntouched();\r\n this.formControl.patchValue(null);\r\n }\r\n\r\n writeValue(value) {\r\n if (!value) {\r\n this.beneficiaryBank = {};\r\n this.intermediaryBank = {};\r\n\r\n this.foreignBankForm.reset(\r\n {\r\n swiftFeePayeeMethod: '1',\r\n beneficiaryBankType: (this.formFields.fields\r\n .internationalBeneficiaryBankDD.values[0] as any).fields.label\r\n .value,\r\n beneficiaryBankValue: null,\r\n intermediaryBankType: (this.formFields.fields\r\n .internationalBeneficiaryBankDD.values[0] as any).fields.label\r\n .value,\r\n intermediaryBankValue: null\r\n },\r\n {\r\n onlySelf: true,\r\n emitEvent: false\r\n }\r\n );\r\n\r\n setTimeout(() => {\r\n this.setBeneficiaryBankValidators();\r\n this.setIntermediaryBankValidators();\r\n });\r\n } else {\r\n this.foreignBankForm.patchValue(\r\n {\r\n swiftFeePayeeMethod: SwiftFeePayee[\r\n value.swiftFeePayeeMethod\r\n ].toString(),\r\n beneficiaryBankType: value.beneficiaryBankType,\r\n intermediaryBankType: value.intermediaryBankType || 'BIC'\r\n },\r\n { emitEvent: false }\r\n );\r\n\r\n this.beneficiaryBank = undefined;\r\n this.intermediaryBank = undefined;\r\n\r\n this.setBeneficiaryBankValidators();\r\n this.setIntermediaryBankValidators();\r\n\r\n this.foreignBankForm.patchValue({\r\n beneficiaryBankValue: value.beneficiaryBankValue,\r\n intermediaryBankValue: value.intermediaryBankValue\r\n });\r\n\r\n setTimeout(() => {\r\n this.beneficiaryBankValidationBic();\r\n this.intermediaryBankValueValidationBic();\r\n });\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.foreignBankForm.valueChanges.subscribe(fn);\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouched = fn;\r\n }\r\n\r\n touch() {\r\n this.onTouched();\r\n }\r\n\r\n validate() {\r\n if (this.foreignBankForm.invalid) {\r\n return { formInvalid: true };\r\n }\r\n\r\n return null;\r\n }\r\n\r\n beneficiaryBankValidationBic() {\r\n if (this.beneficiaryBankValue.invalid) {\r\n this.beneficiaryBank = undefined;\r\n return;\r\n }\r\n\r\n if (this.isABA(this.beneficiaryBankType)) {\r\n return;\r\n }\r\n this.beneficiaryBankValue.setValue(\r\n this.beneficiaryBankValue.value.toUpperCase()\r\n );\r\n this.checkBicCode(this.beneficiaryBankValue).subscribe(result => {\r\n this.beneficiaryBank = result;\r\n this.beneficiaryBankName.emit(this.beneficiaryBank.name);\r\n });\r\n\r\n this.onTouched();\r\n }\r\n\r\n intermediaryBankValueValidationBic() {\r\n if (\r\n this.intermediaryBankValue.invalid ||\r\n !this.intermediaryBankValue.value\r\n ) {\r\n this.intermediaryBank = undefined;\r\n return;\r\n }\r\n\r\n if (this.isABA(this.intermediaryBankType)) {\r\n return;\r\n }\r\n this.intermediaryBankValue.setValue(\r\n this.intermediaryBankValue.value.toUpperCase()\r\n );\r\n\r\n this.checkBicCode(this.intermediaryBankValue).subscribe(result => {\r\n this.intermediaryBank = result;\r\n this.intermediaryBankName.emit(this.intermediaryBank.name);\r\n });\r\n\r\n this.onTouched();\r\n }\r\n\r\n protected isABA(control: AbstractControl): boolean {\r\n return (\r\n control.value ===\r\n (this.formFields.fields.intermediaryBeneficiaryBankDD.values[1] as any)\r\n .fields.label.value\r\n );\r\n }\r\n\r\n protected checkBicCode(control: AbstractControl) {\r\n const subject = new Subject();\r\n\r\n this.bankByBICService.getBankByBIC(control.value).subscribe(bankInfo => {\r\n if (bankInfo.bicCode) {\r\n subject.next(bankInfo);\r\n } else {\r\n // Trigger Transfer form validation\r\n this.onChange(this.foreignBankForm.value);\r\n subject.next({});\r\n }\r\n });\r\n\r\n return subject.asObservable();\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n {{ value.fields.label.value }}\r\n \r\n \r\n
    \r\n \r\n\r\n {{ formFields.genericErrors.required.message }}\r\n {{ formFields.genericErrors.validationBICorABA.message }}\r\n {{\r\n beneficiaryBankType.value === 'ABA'\r\n ? formFields.genericErrors.validationBICorABA.message\r\n : formFields.genericErrors.validationBICLength.message\r\n }}\r\n {{\r\n beneficiaryBankType.value === 'ABA'\r\n ? formFields.genericErrors.validationABALength.message\r\n : formFields.genericErrors.validationBICLength.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n {{ beneficiaryBank.name }}
    \r\n {{ beneficiaryBank.city }}\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n {{ value.fields.label.value }}\r\n \r\n \r\n
    \r\n \r\n\r\n {{ formFields.genericErrors.required.message }}\r\n\r\n {{ formFields.genericErrors.validationBICorABA.message }}\r\n {{\r\n intermediaryBankType.value === 'ABA'\r\n ? formFields.genericErrors.validationBICorABA.message\r\n : formFields.genericErrors.validationBICLength.message\r\n }}\r\n {{\r\n intermediaryBankType.value === 'ABA'\r\n ? formFields.genericErrors.validationABALength.message\r\n : formFields.genericErrors.validationBICLength.message\r\n }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n
    \r\n {{ intermediaryBank.name }}
    \r\n {{ intermediaryBank.city }}\r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { LoaderService } from '../../services/loader.service';\r\nimport { BehaviorSubject } from 'rxjs';\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'ab-loader',\r\n templateUrl: './loader.component.html',\r\n styleUrls: ['./loader.component.scss']\r\n})\r\nexport class LoaderComponent implements OnInit {\r\n @Input() showLoader;\r\n isLoading: BehaviorSubject;\r\n\r\n preventAutoBlocking = false;\r\n\r\n constructor(private loaderService: LoaderService) {\r\n this.isLoading = this.loaderService?.isLoading;\r\n }\r\n\r\n ngOnInit() {\r\n if (this.showLoader !== undefined) {\r\n this.preventAutoBlocking = true;\r\n } else {\r\n this.showLoader = false;\r\n }\r\n }\r\n}\r\n","\r\n
    \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n NgZone,\r\n PLATFORM_ID,\r\n Inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { Subscription } from 'rxjs';\r\nimport { TaskService } from './../../services/task.service';\r\n\r\n@Component({\r\n selector: 'ab-print',\r\n template: '',\r\n styleUrls: ['./print.component.scss']\r\n})\r\nexport class PrintComponent implements OnInit, OnDestroy {\r\n private subscription: Subscription;\r\n constructor(\r\n private taskService: TaskService,\r\n private ngZone: NgZone,\r\n @Inject(PLATFORM_ID) private platform\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.subscription = this.taskService\r\n .onTasksComplete()\r\n .subscribe(response => {\r\n if (response) {\r\n setTimeout(() => {\r\n this.triggerBrowserPrint();\r\n }, 1000);\r\n }\r\n });\r\n }\r\n\r\n triggerBrowserPrint() {\r\n if (isPlatformBrowser(this.platform)) {\r\n this.ngZone.runOutsideAngular(() => {\r\n window.print();\r\n window.close();\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n","\r\n

    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ComponentRendering } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\n@Component({\r\n selector: 'ab-richtext',\r\n templateUrl: './richtext.component.html',\r\n styleUrls: ['./richtext.component.scss']\r\n})\r\nexport class RichtextComponent implements OnInit {\r\n @Input() rendering: ComponentRendering;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n DoCheck\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { IActiveItem } from '../../interfaces/active-item.interface';\r\nimport { Field } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { PortfolioService } from '../../services/portfolio.service';\r\nimport { PortfolioType } from '../../emuns/portfolio-type';\r\n\r\n@Component({\r\n selector: 'ab-tab-navigation',\r\n templateUrl: './tab-navigation.component.html',\r\n styleUrls: ['./tab-navigation.component.scss']\r\n})\r\nexport class TabNavigationComponent implements OnInit, DoCheck {\r\n @Input() rendering: any;\r\n @Input() activeMenu: string;\r\n\r\n @Output() change = new EventEmitter();\r\n\r\n tabs: IActiveItem[];\r\n\r\n constructor(\r\n private router: Router,\r\n private portfolioService: PortfolioService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.tabs = this.rendering.fields\r\n ? this.rendering.fields.Tabs\r\n : this.rendering;\r\n\r\n if (\r\n this.rendering.fields &&\r\n this.rendering.fields.IsRetailOnly &&\r\n this.rendering.fields.IsRetailOnly.lenght !== 0\r\n ) {\r\n this.portfolioService.getSelectedPortfolio().subscribe(portfolios => {\r\n if (\r\n PortfolioType[portfolios[0]?.portfolioType] ===\r\n PortfolioType.Corporate\r\n ) {\r\n this.rendering.fields.IsRetailOnly.forEach(nav => {\r\n const tabs = this.tabs.filter(n => n.id === nav.id);\r\n if (tabs) {\r\n this.tabs.splice(this.tabs.indexOf(tabs[0]), 1);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n this.tabs.some(navigationLink => {\r\n const link: any = navigationLink.fields.Link;\r\n if (link) {\r\n navigationLink.isActive = this.router.url.indexOf(link.url) !== -1;\r\n }\r\n\r\n if (\r\n this.activeMenu &&\r\n (navigationLink.fields.Key as Field).value === this.activeMenu\r\n ) {\r\n navigationLink.isActive = true;\r\n }\r\n\r\n return navigationLink.isActive;\r\n });\r\n }\r\n\r\n ngDoCheck() {\r\n if (this.activeMenu) {\r\n this.tabs.forEach(navigationLink => {\r\n navigationLink.isActive =\r\n this.activeMenu === (navigationLink.fields.Key as Field).value;\r\n });\r\n }\r\n }\r\n\r\n selectActiveTab(item: IActiveItem) {\r\n if (item.isActive) {\r\n return;\r\n }\r\n\r\n this.tabs.forEach(i => (i.isActive = false));\r\n item.isActive = true;\r\n this.change.emit(item);\r\n }\r\n\r\n isTransfer(link) {\r\n if (!link) {\r\n return false;\r\n }\r\n\r\n return (\r\n link.url.indexOf('international') !== -1 ||\r\n link.url.indexOf('local') !== -1\r\n );\r\n }\r\n}\r\n","
      \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\ninterface ITableHeader {\r\n id: string;\r\n name: string;\r\n}\r\n\r\n@Component({\r\n selector: 'ab-table',\r\n templateUrl: './table.component.html',\r\n styleUrls: ['./table.component.scss']\r\n})\r\nexport class TableComponent implements OnInit {\r\n @Input() header: ITableHeader;\r\n @Input() data: any;\r\n @Input() cols: Array;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n}\r\n\r\nexport { ITableHeader };\r\n","\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n \r\n \r\n \r\n Marie Kreutz A/O Jason Bourne Res\r\n

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Account NumberAccount NameCurrency\r\n Balance\r\n \r\n \r\n Available Balance\r\n \r\n
    \r\n 22220001\r\n \r\n SAVINGS USD\r\n USD1,200.001,100.00\r\n
    \r\n \r\n \r\n \r\n
      \r\n \r\n \r\n Internal Transfer\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { environment } from './../../environments/environment';\r\n\r\nexport const AB_REFRESH_SESSION_TIME = 2; // minutes\r\nexport const AB_SHOW_SESSION_EXPIRY_POPUP = 20; // minutes\r\nexport const AB_ACCESS_DENIED_REDIRECT_INTERVAL = 5000; // Milliseconds\r\n\r\nexport const AB_API_DOMAIN = environment.apiDomain || '';\r\nexport const AB_API_BASE = '/api/v2';\r\n\r\nexport const NEW_MASHUP_URL = environment.newPegaMashupScriptUrl;\r\n\r\nexport const AB_API_LOGIN = '/account/login';\r\nexport const AB_API_QRCODE = '/account/deviceless';\r\nexport const AB_API_QRCODE_STATUS = '/account/deviceless/status';\r\nexport const AB_API_INITIAL_VIEW = '/account/initialview';\r\n\r\nexport const AB_API_USER_MANAGEMENT = '/usermanagement';\r\nexport const AB_API_USER_MANAGEMENT_OVERVIEW_URL =\r\n '/useraccessmanagement/usersoverview';\r\nexport const AB_API_PORTFOLIO_USERS_DETAILS = '/usermanagement/details';\r\nexport const AB_API_SET_DEFAULT_PORTFOLIO =\r\n '/usermanagement/setdefaultportfolio';\r\n\r\nexport const AB_API_REQUEST_LOGIN_TOOL = '/requestlogintool/send';\r\n\r\nexport const AB_API_PORTFOLIO_USERS_ENDPOINT = '/getportfoliousers';\r\nexport const AB_API_PORTFOLIO_ACCOUNT_MANAGER = '/personaldetails/managerinfo';\r\n\r\nexport const AB_API_EXCHANGE_RATES_ENDPOINT = '/exchangerates/getexchangerates';\r\n\r\nexport const AB_API_ACCOUNTSOVERVIEW_ENDPOINT =\r\n '/JSSTBAccounts/getaccountoverview';\r\nexport const AB_API_LOCAL_FROM_ACCOUNTS_ENDPOINT =\r\n '/JSSTBAccounts/localFromAccounts';\r\nexport const AB_API_FROM_ACCOUNTS_BULK_ENDPOINT =\r\n '/JSSTBAccounts/fromAccounts/bulk';\r\nexport const AB_API_INTERNATIONAL_FROM_ACCOUNTS_ENDPOINT =\r\n '/JSSTBAccounts/internationalFromAccounts';\r\nexport const AB_API_ACCOUNTS_FOR_CLOSING =\r\n '/JSSTBAccounts/eligibleforclosingaccounts';\r\nexport const AB_API_OVERDRAFTS = '/JSSTBAccounts/overdrafts';\r\nexport const AB_API_GETACCOUNTDETAILS = '/JSSTBAccounts/getaccountdetails';\r\nexport const AB_API_FULL_PORTFOLIO_VIEW = '/JSSTBAccounts/fullportfolioview';\r\n\r\nexport const AB_API_GET_CREDITCARDS = '/creditcard';\r\nexport const AB_API_GET_CREDITCARD_TRANSACTIONS = '/creditcard/transactions';\r\n\r\nexport const AB_API_USER_BANKACCOUNTS_SETTINGS = '/user/bankaccounts/settings';\r\n\r\nexport const AB_API_REFRESH_SESSION = '/general/refreshsession';\r\nexport const AP_API_CHECK_ROUTE_ACCESS = '/general/checkrouteaccess';\r\nexport const AB_API_PORTFOLIO = '/general/portfolio';\r\nexport const AB_API_PORTFOLIO_DEFAULT = '/general/portfolio/default';\r\nexport const AB_API_GET_CHALLENGE = '/general/challenge';\r\n\r\nexport const AB_API_SENTOO_PAYMENT_DETAILS = '/sentoo/paymentdetails/get';\r\nexport const AB_API_SENTOO_CANCEL = '/sentoo/cancel';\r\nexport const AB_API_SENTOO_CREATE = '/sentoo/create';\r\nexport const AB_API_SENTOO_APPROVE = '/sentoo/approve';\r\nexport const AB_API_SENTOO_STATUS = '/sentoo/status';\r\nexport const AB_API_SENTOO_QRCODE = '/sentoo/qrcode/get';\r\nexport const AB_API_SENTOO_ACCOUNTS = '/sentoo/accounts/get';\r\n\r\nexport const AB_SENTOO_TRANSFER = '/sentootransfer';\r\nexport const AB_SENTOO = '/sentoo';\r\n\r\nexport const AB_API_TRANSACTION_ACCOUNT = '/transactionaccount/get';\r\n\r\nexport const AB_API_TRANSACTION_OVERVIEW = '/transactionoverview/get';\r\n\r\nexport const AB_API_TRANSACTION_SEARCH = '/transactionsearch/transactions';\r\nexport const AB_API_BLOCK_BANK_ACCOUNT = '/blockbankaccount/accounts';\r\nexport const AB_API_TRANSACTION_DOWNLOAD = '/downloadtransactions/get';\r\nexport const AB_API_TRANSACTION_STATEMENTS = '/statements';\r\n\r\nexport const AB_API_TRANSFERS_SUBMITTED = '/transfers/submitted';\r\nexport const AB_API_TRANSFERS_SUBMITTED_DETAIL = '/transfers/submitted/detail';\r\nexport const AB_API_TRANSFERS_REJECTED_ONETIME =\r\n '/transfers/rejected/onetime/default';\r\nexport const AB_API_TRANSFERS_REJECTED_ONETIME_FULL =\r\n '/transfers/rejected/onetime/full';\r\nexport const AB_API_TRANSFERS_REJECTED_RECURRING =\r\n '/transfers/rejected/recurring/default';\r\nexport const AB_API_TRANSFERS_REJECTED_RECURRING_FULL =\r\n '/transfers/rejected/recurring/full';\r\nexport const AB_API_BULK_TRANSFERS_REJECTED =\r\n '/transfers/rejected/bulk/default';\r\nexport const AB_API_BULK_TRANSFERS_REJECTED_FULL =\r\n '/transfers/rejected/bulk/full';\r\nexport const AB_API_TRANSFERS_COUNTRYLIST = '/transfers/countrylist';\r\n\r\nexport const AB_API_TRANSFERS_GETBANKSBYCOUNTRY =\r\n '/transfers/getBanksByCountry';\r\nexport const AB_API_REFERENCE_CODES = '/transfers/referencecodes';\r\nexport const AB_API_BILL_PAYEE_ATTRIBUTES = '/transfers/billpayee';\r\nexport const AB_API_TRANSFERS_TO_ACCOUNTS = '/transfers/toaccounts';\r\nexport const AB_API_TRANSFERS_TO_BENEFICIARIES =\r\n '/transfers/toaccounts/beneficiaries';\r\nexport const AB_API_TRANSFERS_SUBMIT = '/transfers/submit';\r\nexport const AB_API_TRANSFERS_SCHEDULED = '/transfers/scheduled';\r\nexport const AB_API_TRANSFERS_SCHEDULED_BULK = '/transfers/scheduled/bulk';\r\nexport const AB_API_TRANSFERS_VALIDATE = '/transfers/validate';\r\nexport const AB_API_BANK_BY_BIC = '/transfers/bankByBIC';\r\nexport const AB_API_TRANSFERS_BULK_VALIDATE = '/transfers/bulk/validate';\r\nexport const AB_API_TRANSFERS_BULK_UPLOAD = '/transfers/bulk/upload';\r\nexport const AB_API_TRANSFERS_BULK_DOMESTIC = '/transfers/bulk/domestic';\r\nexport const AB_API_TRANSFERS_BULK_INTERNATIONAL =\r\n '/transfers/bulk/international';\r\nexport const AB_API_DAILY_LIMIT = '/transfers/dailylimit';\r\n\r\nexport const AB_API_PAYMENTS_PENDING_TRANSFERS_COUNT =\r\n '/basket/payments/GetPendingTransfersCount';\r\nexport const AB_API_TRANSFERS_PENDING = '/basket/payments';\r\nexport const AB_API_TRANSFERS_DELETE = '/basket/delete';\r\nexport const AB_API_TRANSFERS_GET_TRANSFER = '/basket/payment';\r\nexport const AB_API_GET_CHALLENGE_BASKET = '/basket/challenge';\r\nexport const AB_API_TRANSFERS_APPROVE = '/basket/submit';\r\nexport const AB_API_PAYMENT_BULK_DOMESTIC = '/basket/payment/bulk/domestic';\r\nexport const AB_API_PAYMENT_BULK_INTERNATIONAL =\r\n '/basket/payment/bulk/international';\r\nexport const AB_API_BULK_VIEW_STATUS = '/basket/payments/bulk';\r\nexport const AB_API_BULK_DETAILS = '/basket/payment/bulk';\r\nexport const AB_API_BULK_REJECT = '/basket/reject';\r\nexport const AB_API_BASKET_REJECT = '/basket/payment/reject';\r\nexport const AB_API_BASKET_CHECK_PAYMENTS = '/basket/checkpayments';\r\n\r\nexport const AB_API_ADDRESSBOOK = '/addressbook';\r\nexport const AB_API_ADDRESSBOOK_COMPANIES = '/addressbook/companies';\r\nexport const AB_API_ADDRESSBOOK_BENEFICIARIES = '/addressbook/beneficiaries';\r\nexport const AB_API_ADDRESSBOOK_ADDRESS = '/addressbook/address';\r\n\r\nexport const AB_API_REPORTING_TABLE = '/reporting/table';\r\nexport const AB_API_REPORTING_DOWNLOAD = '/reporting/download';\r\nexport const AB_API_TEXTBANKING_SEND = '/textbanking/send';\r\nexport const AB_API_TEXTBANKING_INFO = '/textbanking/info';\r\nexport const AB_API_ATMPINCODE_INFO = '/personaldetails/residentialaddress';\r\nexport const AB_API_ATMPINCODE_SEND = '/atmpincode/send';\r\nexport const AB_API_LINK_ATM_CARD = '/linkatmcard/atmcards';\r\nexport const AB_API_REQUEST_APP = '/requestapp/send';\r\nexport const AB_API_DOWNLOAD_DOCUMENTS = '/download/documents';\r\nexport const AB_API_PERSONALARCHIVE_PRIVATE_DOCUMENTS =\r\n '/personalarchive/documents';\r\nexport const AB_API_PERSONALARCHIVE_INTEREST_LETTERS =\r\n '/personalarchive/interestletter';\r\nexport const AB_API_PERSONALARCHIVE_MESSAGES = '/personalarchive/messages';\r\nexport const AB_API_PERSONALARCHIVE_MARKASREAD =\r\n '/personalarchive/message/makrasread';\r\nexport const AB_API_PERSONALARCHIVE_MESSAGES_COUNT =\r\n '/personalarchive/message/count';\r\n\r\nexport const AB_API_CLOSE_ACCOUNT = '/closebankaccount/account';\r\nexport const AB_API_MASHUP_ENDPOINT = '/mashup/token';\r\nexport const AB_API_CONTACTUS_DATA = '/contactus/data';\r\n\r\nexport const AB_LOGIN_FORM_URL = '/';\r\nexport const AB_DASHBOARD_URL = '/dashboard/';\r\n\r\nexport const AB_ADDRESSBOOK_URL = '/addressbook/addressbook/';\r\nexport const AB_ADDRESSBOOK_ADD = '/addressbook/address';\r\n\r\nexport const AB_GET_BANK_CARDS = '/bankcard/all';\r\nexport const AB_BLOCK_BANK_CARD = '/bankcard/block';\r\n\r\nexport const AB_GET_MOBILE_DEVICES = '/mobiledevices/getlist';\r\nexport const AB_DISCONNECT_MOBILE_DEVICES = '/mobiledevices/disconnectdevice';\r\n\r\nexport const AB_OVERDRAFTSLIMITS = '/bankaccountoverdrafts/overdraftslimits';\r\nexport const AB_OVERDRAFTSTEPDETAILS =\r\n '/bankaccountoverdrafts/overdraftstepdetails';\r\nexport const AB_OVERDRAFTSUBMIT = '/bankaccountoverdrafts/submit';\r\n\r\nexport const AB_TRANSACTION_PRINT = '/transactions/printtransactions';\r\n\r\nexport const AB_DATE_PREVENT_REGEX = '[^0-9/]';\r\nexport const AB_PHONE_NUMBER_PATTERN = '^(\\\\+)?(\\\\d{5,15})$';\r\nexport const AB_EMAIL_PATTERN =\r\n '^[\\\\w!#$%&*+\\\\-/=?\\\\^_`{|}~]+(\\\\.[\\\\w!#$%&*+\\\\-/=?\\\\^_`{|}~]+)*@((([\\\\-\\\\w]+\\\\.)+[a-zA-Z]{2,4})|(([0-9]{1,3}\\\\.){3}[0-9]{1,3}))$';\r\nexport const AB_DATE_FORMAT_FULL = 'MM/dd/yyyy';\r\nexport const AB_DATE_MOMENT_FORMAT = 'MM/DD/YYYY';\r\nexport const AB_DATE_FORMAT_SHORT = 'yyyy-M-d';\r\nexport const AB_CURRENCY_FORMAT = '1.2-2';\r\nexport const AB_CURRENCY_FORMAT_AMOUNT = '1.0-0';\r\nexport const AB_LOGIN_NAME_PATTERN =\r\n '^[a-zA-Z0-9\\\\-:, .;@ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£ƒáíóúñÑÁÀÏÍÌÈËÓÒÚÙ€ ]+$';\r\nexport const AB_LOGIN_USERNAME_PATTERN = '^[a-zA-Z0-9_\\\\-.@]{8,20}$';\r\n","import { Directive, ElementRef, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { RouterAccessService } from '../services/router-access.service';\r\n\r\n@Directive({\r\n selector: '[abAccess]'\r\n})\r\nexport class AccessDirective implements OnInit {\r\n @Input('abAccess') url: string;\r\n @Input() checkAccess: boolean;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private routerAccessService: RouterAccessService,\r\n private renderer: Renderer2\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (this.checkAccess) {\r\n this.renderer.setAttribute(this.elementRef.nativeElement, 'hidden', '');\r\n this.routerAccessService.checkRouteAccess(this.url).subscribe(result => {\r\n if (result.access) {\r\n this.renderer.removeAttribute(\r\n this.elementRef.nativeElement,\r\n 'hidden'\r\n );\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n Inject,\r\n LOCALE_ID,\r\n Input\r\n} from '@angular/core';\r\nimport {\r\n DecimalPipe,\r\n getLocaleNumberSymbol,\r\n NumberSymbol\r\n} from '@angular/common';\r\nimport { NgControl } from '@angular/forms';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\n\r\n@Directive({\r\n selector: '[abAmountFormatter]'\r\n})\r\nexport class AmountFormatterDirective implements OnInit {\r\n @Input() pipeFormat: string;\r\n private el: HTMLInputElement;\r\n private valueChangesSubscription: Subscription;\r\n\r\n constructor(\r\n elementRef: ElementRef,\r\n private decimalPipe: DecimalPipe,\r\n private control: NgControl,\r\n @Inject(LOCALE_ID) private locale: string\r\n ) {\r\n this.el = elementRef.nativeElement;\r\n }\r\n\r\n ngOnInit() {\r\n this.format(this.control.control.value);\r\n this.valueChangesSubscription = this.control.control.valueChanges.subscribe(\r\n value => this.format(value)\r\n );\r\n }\r\n\r\n private format(value): void {\r\n this.el.value = this.decimalPipe.transform(\r\n value,\r\n this.pipeFormat || '1.0-0'\r\n );\r\n }\r\n\r\n @HostListener('input', ['$event.target.value'])\r\n onInput(value) {\r\n // Check if '.' sign is allowed for this input when the input need to show fraction part of decimal number\r\n if (this.pipeFormat && this.pipeFormat.split('-')[0].indexOf('2') !== 0) {\r\n this.el.value = value.replace(/[^0-9\\.]/g, '');\r\n this.control.control.patchValue(value.replace(/[^0-9\\.]/g, ''));\r\n } else {\r\n this.el.value = value.replace(/\\D/g, '');\r\n this.control.control.patchValue(value.replace(/\\D/g, ''));\r\n }\r\n }\r\n\r\n @HostListener('focus')\r\n onFocus() {\r\n if (this.valueChangesSubscription) {\r\n this.valueChangesSubscription.unsubscribe();\r\n this.valueChangesSubscription = undefined;\r\n }\r\n\r\n const regex = new RegExp(\r\n `\\\\${getLocaleNumberSymbol(this.locale, NumberSymbol.Group)}`,\r\n 'g'\r\n );\r\n this.el.value = this.el.value.replace(regex, '');\r\n }\r\n\r\n @HostListener('blur', ['$event.target.value'])\r\n onBlur(value: string) {\r\n if (!parseFloat(value)) {\r\n return;\r\n }\r\n\r\n const amount = this.decimalPipe.transform(\r\n value,\r\n this.pipeFormat || '1.0-0'\r\n );\r\n\r\n this.control.control.patchValue(parseFloat(value.replace(',', '.')));\r\n this.el.value = amount;\r\n }\r\n}\r\n","import {\r\n Directive,\r\n Renderer2,\r\n ElementRef,\r\n OnInit,\r\n OnDestroy,\r\n Input\r\n} from '@angular/core';\r\nimport { ButtonLoaderStateService } from '../services/button-loader-state.service';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\n\r\n@Directive({\r\n selector: '[abButtonLoader]'\r\n})\r\nexport class ButtonLoaderDirective implements OnInit, OnDestroy {\r\n @Input('abButtonLoader') index: string;\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n private el: ElementRef,\r\n private buttonLoaderStateService: ButtonLoaderStateService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (this.index === '') {\r\n this.subscriptions.push(\r\n this.buttonLoaderStateService.loaderState.subscribe(isLoading => {\r\n this.toggleState(isLoading);\r\n })\r\n );\r\n } else {\r\n this.subscriptions.push(\r\n this.buttonLoaderStateService.loaderStateWithIndex.subscribe(\r\n requests => {\r\n Object.keys(requests).forEach(key => {\r\n if (key.indexOf(this.index) !== -1) {\r\n this.toggleState(requests[key]);\r\n }\r\n });\r\n }\r\n )\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(s => s.unsubscribe());\r\n }\r\n\r\n private toggleState(isLoading: boolean) {\r\n if (isLoading) {\r\n this.renderer.addClass(this.el.nativeElement, 'btn-loader');\r\n this.renderer.setAttribute(this.el.nativeElement, 'disabled', 'disabled');\r\n } else {\r\n this.renderer.removeClass(this.el.nativeElement, 'btn-loader');\r\n this.renderer.removeAttribute(this.el.nativeElement, 'disabled');\r\n }\r\n }\r\n}\r\n","import { Directive, HostListener, ElementRef } from '@angular/core';\r\nimport { AB_DATE_PREVENT_REGEX } from '../constants';\r\n\r\n@Directive({\r\n selector: '[abDateFormatter]'\r\n})\r\nexport class DateFormatterDirective {\r\n constructor(private elementRef: ElementRef) {}\r\n\r\n @HostListener('input', ['$event.target.value'])\r\n onInput(value: string) {\r\n this.elementRef.nativeElement.value = value.replace(\r\n new RegExp(AB_DATE_PREVENT_REGEX, 'g'),\r\n ''\r\n );\r\n }\r\n}\r\n","import {\r\n Directive,\r\n HostBinding,\r\n HostListener,\r\n EventEmitter,\r\n Output\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[abFileDropZone]'\r\n})\r\nexport class FileDropZoneDirective {\r\n @Output() private filesChangeEmiter: EventEmitter<\r\n File[]\r\n > = new EventEmitter();\r\n\r\n @HostBinding('class.drop-zone-active') active: boolean;\r\n\r\n constructor() {}\r\n\r\n @HostListener('dragover', ['$event']) public onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = true;\r\n }\r\n\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n }\r\n\r\n @HostListener('drop', ['$event']) public onDrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.active = false;\r\n\r\n this.filesChangeEmiter.emit(evt);\r\n }\r\n}\r\n","import { AfterViewInit, Directive, ElementRef, OnDestroy } from '@angular/core';\r\nimport { IFrameComponent, iframeResizer } from 'iframe-resizer';\r\n\r\n@Directive({\r\n selector: '[appIframeResizer]'\r\n})\r\nexport class IFrameResizerDirective implements AfterViewInit, OnDestroy {\r\n component: IFrameComponent;\r\n\r\n constructor(public element: ElementRef) {}\r\n\r\n ngAfterViewInit() {\r\n const components = iframeResizer(\r\n {\r\n checkOrigin: false,\r\n heightCalculationMethod: 'documentElementOffset',\r\n log: false\r\n },\r\n this.element.nativeElement\r\n );\r\n console.log(components[0]);\r\n /* save component reference so we can close it later */\r\n this.component = components && components.length > 0 ? components[0] : null;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.component && this.component.iFrameResizer) {\r\n this.component.iFrameResizer.close();\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n Input,\r\n HostListener,\r\n AfterViewInit\r\n} from '@angular/core';\r\nimport { UntypedFormGroup } from '@angular/forms';\r\n\r\nexport interface FormGroupWithName extends UntypedFormGroup {\r\n formName: string;\r\n}\r\n\r\n@Directive({\r\n selector: '[abScrollInvalid]'\r\n})\r\nexport class ScrollInvalidDirective implements AfterViewInit {\r\n @Input() formGroup: UntypedFormGroup;\r\n @Input('abScrollInvalid') formName: string;\r\n @Input() scrollPriority: string;\r\n\r\n public isInvalid = false;\r\n\r\n constructor(private elementRef: ElementRef) {}\r\n\r\n ngAfterViewInit() {\r\n if (this.formName) {\r\n (this.formGroup as FormGroupWithName).formName = this.formName;\r\n }\r\n }\r\n\r\n scrollToInvalidElement(name?: string) {\r\n if (name && name !== this.formName) {\r\n return;\r\n }\r\n\r\n const invalidElement = Array.from(\r\n this.elementRef.nativeElement.querySelectorAll('.ng-invalid')\r\n ).filter(\r\n e =>\r\n e.matches('[type=\"text\"]') ||\r\n e.matches('textarea') ||\r\n e.matches('mat-select')\r\n );\r\n\r\n if (invalidElement && invalidElement.length) {\r\n window.scrollTo({\r\n left: 0,\r\n top:\r\n invalidElement[0].getBoundingClientRect().top + window.scrollY - 200\r\n });\r\n\r\n invalidElement[0].focus();\r\n\r\n this.isInvalid = true;\r\n } else {\r\n this.isInvalid = false;\r\n }\r\n }\r\n\r\n @HostListener('submit', ['$event'])\r\n onSubmit(event) {\r\n event.preventDefault();\r\n\r\n if (this.formGroup.invalid && !this.formName) {\r\n this.scrollToInvalidElement();\r\n }\r\n }\r\n}\r\n","import { Directive, ElementRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[abScrollTo]'\r\n})\r\nexport class ScrollToDirective {\r\n constructor(private elementRef: ElementRef) {}\r\n\r\n focusElement() {\r\n const input = this.elementRef.nativeElement.querySelectorAll('input')[0];\r\n\r\n if (!input) {\r\n return;\r\n }\r\n\r\n window.scrollTo({\r\n left: 0,\r\n top: input.getBoundingClientRect().top + window.scrollY - 200\r\n });\r\n\r\n input.focus();\r\n }\r\n}\r\n","import { Directive, ElementRef, Input, OnInit } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[abUnits]'\r\n})\r\nexport class UnitsDirective implements OnInit {\r\n @Input('abUnits') value: string;\r\n\r\n constructor(private element: ElementRef) {}\r\n\r\n ngOnInit() {\r\n this.element.nativeElement.innerText = `${this.convertToKiloByte(\r\n parseFloat(this.value)\r\n )} `;\r\n }\r\n\r\n private convertToKiloByte(byte: number) {\r\n if (isNaN(byte)) {\r\n return '';\r\n }\r\n\r\n const kiloByte = byte / 1000;\r\n\r\n return kiloByte === 0 ? kiloByte : kiloByte.toFixed(1);\r\n }\r\n}\r\n","export enum PortfolioType {\r\n Retail,\r\n Corporate\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'abCurrencySymbol'\r\n})\r\nexport class AbCurrencySymbolPipe implements PipeTransform {\r\n public map = {\r\n USD: '$',\r\n EURO: '€',\r\n EUR: '€',\r\n AWG: 'ƒ',\r\n XCG: 'ƒ',\r\n GBP: '£'\r\n };\r\n transform(value: any): any {\r\n return this.map[value];\r\n }\r\n}\r\n","import { DecimalPipe } from '@angular/common';\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { AB_CURRENCY_FORMAT } from '../constants';\r\n\r\n@Pipe({\r\n name: 'abCurrency',\r\n})\r\nexport class AbCurrencyPipe extends DecimalPipe implements PipeTransform {\r\n transform(value: any): any {\r\n return (\r\n super.transform(value.amount, AB_CURRENCY_FORMAT) +\r\n ' ' +\r\n value.currencyCode\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { AB_DATE_FORMAT_FULL } from '../constants';\r\n\r\n@Pipe({\r\n name: 'abDate'\r\n})\r\nexport class AbDatePipe extends DatePipe implements PipeTransform {\r\n transform(value: any): any {\r\n return super.transform(value, AB_DATE_FORMAT_FULL);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'abFileSize'\r\n})\r\nexport class AbFileSizePipe implements PipeTransform {\r\n private units = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB'];\r\n\r\n transform(bytes: number = 0, precision: number = 2): string {\r\n if (isNaN(parseFloat(String(bytes))) || !isFinite(bytes)) {\r\n return '?';\r\n }\r\n\r\n let unit = 0;\r\n\r\n while (bytes >= 1024) {\r\n bytes /= 1024;\r\n unit++;\r\n }\r\n\r\n return bytes.toFixed(+precision) + ' ' + this.units[unit];\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n//import { Dictionary } from 'async';\r\n\r\n@Pipe({\r\n name: 'abFilterCountries'\r\n})\r\nexport class AbFilterCountriesPipe implements PipeTransform {\r\n transform(arr: any, searchValue: string) {\r\n if (!searchValue) return arr;\r\n\r\n return arr.filter(\r\n country =>\r\n country.value.toLowerCase().match(searchValue.toLowerCase()) !== null\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DecimalPipe } from '@angular/common';\r\nimport { AB_CURRENCY_FORMAT } from '../constants';\r\n\r\n@Pipe({\r\n name: 'abMoney'\r\n})\r\nexport class AbMoneyPipe extends DecimalPipe implements PipeTransform {\r\n transform(value: string | number): any {\r\n return super.transform(value, AB_CURRENCY_FORMAT);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'replace'\r\n})\r\nexport class ReplacePipe implements PipeTransform {\r\n transform(input: string, replaceOn: string, value: string): unknown {\r\n return input.replace(replaceOn, value);\r\n }\r\n}\r\n","import { DomSanitizer } from '@angular/platform-browser';\r\nimport { PipeTransform, Pipe, SecurityContext } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'safeHtml'\r\n})\r\nexport class SafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) {}\r\n transform(value) {\r\n return this.sanitized.sanitize(\r\n SecurityContext.HTML,\r\n this.sanitized.bypassSecurityTrustHtml(value)\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { SafeHtml } from '@angular/platform-browser';\r\nimport { AbMoneyPipe } from './ab-money.pipe';\r\nimport { SafeHtmlPipe } from './safe-html.pipe';\r\n\r\n@Pipe({\r\n name: 'supFraction'\r\n})\r\nexport class SupFractionPipe implements PipeTransform {\r\n constructor(\r\n private moneyPipe: AbMoneyPipe,\r\n private safeHtmlPipe: SafeHtmlPipe\r\n ) {}\r\n\r\n transform(value: number, noHtml?: boolean): SafeHtml {\r\n let money = this.moneyPipe.transform(value);\r\n const moneyArray = money.split('.');\r\n money = noHtml\r\n ? `${moneyArray[0]}.${moneyArray[1]}`\r\n : `${moneyArray[0]}.${moneyArray[1]}`;\r\n\r\n return this.safeHtmlPipe.transform(money);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AB_API_GETACCOUNTDETAILS } from '../constants';\r\nimport { ApiClientService, ApiResponse } from './api-client.service';\r\nimport { IProduct } from '../../dashboard/services/account-overview.service';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\ninterface AccountDetailsResponse extends ApiResponse {\r\n bankAccounts: IProduct[];\r\n}\r\n\r\nexport enum PortfolioLevel {\r\n Selected,\r\n All\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccountDetailsService extends ApiClientService {\r\n private _formLogin = false;\r\n private isLoading = false;\r\n private accountForTransfer = new ReplaySubject<{ [key: string]: IProduct }>(\r\n null\r\n );\r\n private accountForTransferIsLoaded = false;\r\n\r\n get fromLogin() {\r\n const value = this._formLogin;\r\n if (this._formLogin) {\r\n this._formLogin = false;\r\n }\r\n\r\n return value;\r\n }\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_GETACCOUNTDETAILS);\r\n }\r\n\r\n setFromLogin() {\r\n this._formLogin = true;\r\n }\r\n\r\n getDetails(): Observable<{ [key: string]: IProduct }> {\r\n return this.getWithoutLoader().pipe(\r\n map((response: AccountDetailsResponse) => {\r\n const responseObject: { [key: string]: IProduct } = {};\r\n response.bankAccounts.forEach(account => {\r\n responseObject[account.accountId] = account;\r\n });\r\n\r\n return responseObject;\r\n })\r\n );\r\n }\r\n\r\n getAccountForTransfer() {\r\n if (!this.accountForTransferIsLoaded && !this.isLoading) {\r\n this.isLoading = true;\r\n this.getDetails().subscribe(\r\n result => {\r\n this.accountForTransfer.next(result);\r\n this.accountForTransferIsLoaded = true;\r\n this.isLoading = false;\r\n },\r\n () => (this.isLoading = false),\r\n () => (this.isLoading = false)\r\n );\r\n }\r\n\r\n return this.accountForTransfer.asObservable();\r\n }\r\n\r\n clearAccountForTransfer() {\r\n this.accountForTransferIsLoaded = false;\r\n this.accountForTransfer.complete();\r\n this.accountForTransfer = new ReplaySubject<{ [key: string]: IProduct }>(\r\n null\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { JssContextService } from '../../jss-context.service';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\ninterface IAntiForgeryToken {\r\n name: string;\r\n value: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AntiForgeryTokenService implements HttpInterceptor {\r\n private antiForgeryToken: IAntiForgeryToken;\r\n\r\n constructor(jssContextService: JssContextService) {\r\n jssContextService.state.subscribe(result => {\r\n if (\r\n result &&\r\n result.sitecore &&\r\n result.sitecore.context &&\r\n result.sitecore.context.VerificationToken\r\n ) {\r\n this.antiForgeryToken = result.sitecore.context\r\n .VerificationToken as IAntiForgeryToken;\r\n } else {\r\n this.antiForgeryToken = null;\r\n }\r\n });\r\n }\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n if (\r\n (req.method === 'POST' || req.method === 'PUT') &&\r\n this.antiForgeryToken\r\n ) {\r\n const newHeaders = req.headers.set(\r\n this.antiForgeryToken.name,\r\n this.antiForgeryToken.value\r\n );\r\n req = req.clone({ headers: newHeaders });\r\n }\r\n\r\n return next.handle(req);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { camelCase } from 'lodash';\r\n\r\nimport { AB_API_DOMAIN, AB_API_BASE } from './../constants';\r\n\r\ninterface ApiResponse {\r\n callIsSuccess?: boolean;\r\n errorCode?: any;\r\n errorSubCode?: any;\r\n errorMessage?: string;\r\n errorDescription?: string;\r\n data?: any;\r\n}\r\n\r\nexport class ApiClientService {\r\n public url: string;\r\n\r\n constructor(private http: HttpClient, private resource: string) {\r\n this.url = AB_API_DOMAIN + AB_API_BASE + this.resource;\r\n }\r\n public get(item?: { [param: string]: any }): Observable {\r\n return this.http\r\n .get(this.url, {\r\n withCredentials: true,\r\n params: item\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.log(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public getWithoutLoader(item?: { [param: string]: any }): Observable {\r\n return this.http\r\n .get(this.url, {\r\n withCredentials: true,\r\n params: item,\r\n headers: {\r\n withoutLoader: 'without'\r\n }\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.log(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public post(item?: Object): Observable {\r\n return this.http\r\n .post(this.url, item, {\r\n withCredentials: true\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.error(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public postWithButtonLoader(item?: Object): Observable {\r\n return this.http\r\n .post(this.url, item, {\r\n withCredentials: true,\r\n headers: {\r\n withButtonLoader: 'with'\r\n }\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.error(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public putWithButtonLoader(item?: Object): Observable {\r\n return this.http\r\n .put(this.url, item, {\r\n withCredentials: true,\r\n headers: {\r\n withButtonLoader: 'with'\r\n }\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.error(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public put(item?: Object): Observable {\r\n return this.http\r\n .put(this.url, item, {\r\n withCredentials: true\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.error(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n public delete(item?: { [param: string]: any }): Observable {\r\n return this.http\r\n .delete(this.url, {\r\n withCredentials: true,\r\n params: item\r\n })\r\n .pipe(\r\n map(response => ApiClientService.camelCaseResponse(response)),\r\n catchError(err => {\r\n console.error(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n protected static camelCaseResponse(response: any) {\r\n if (Array.isArray(response)) {\r\n return response.map(v => ApiClientService.camelCaseResponse(v));\r\n } else if (response !== null && response.constructor === Object) {\r\n return Object.keys(response).reduce(\r\n (result, key) => ({\r\n ...result,\r\n [camelCase(key)]: ApiClientService.camelCaseResponse(response[key])\r\n }),\r\n {}\r\n );\r\n }\r\n return response;\r\n }\r\n}\r\n\r\nexport { ApiResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot\r\n} from '@angular/router';\r\nimport { isEditorActive } from '@sitecore-jss/sitecore-jss-angular/';\r\nimport { UserService } from './user.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuardService implements CanActivate {\r\n constructor(private userService: UserService) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (!isEditorActive()) {\r\n return this.userService.userHasAccess(state.url.split('?')[0]);\r\n } else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { ButtonLoaderStateService } from './button-loader-state.service';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ButtonLoaderInterceptorService implements HttpInterceptor {\r\n constructor(private buttonLoaderStateService: ButtonLoaderStateService) {}\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n if (req.headers.has('withButtonLoader')) {\r\n const newHeaders = req.headers.delete('withButtonLoader');\r\n req = req.clone({ headers: newHeaders });\r\n\r\n this.buttonLoaderStateService.startLoader(req.url);\r\n\r\n return next.handle(req).pipe(\r\n finalize(() => {\r\n this.buttonLoaderStateService.stopLoader(req.url);\r\n })\r\n );\r\n }\r\n\r\n return next.handle(req);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs/internal/Subject';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ButtonLoaderStateService {\r\n private state: Subject;\r\n private withUrls: { [key: string]: boolean } = {};\r\n private stateWithIndex: Subject<{ [key: string]: boolean }>;\r\n\r\n constructor() {\r\n this.state = new Subject();\r\n this.stateWithIndex = new Subject<{ [key: string]: boolean }>();\r\n }\r\n\r\n get loaderState() {\r\n return this.state.asObservable();\r\n }\r\n\r\n get loaderStateWithIndex() {\r\n return this.stateWithIndex.asObservable();\r\n }\r\n\r\n startLoader(url: string) {\r\n this.withUrls[url] = true;\r\n this.stateWithIndex.next(this.withUrls);\r\n this.state.next(true);\r\n }\r\n\r\n stopLoader(url: string) {\r\n this.withUrls[url] = false;\r\n this.stateWithIndex.next(this.withUrls);\r\n this.state.next(false);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { JssContextService } from '../../jss-context.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfigurationSettingsContextService {\r\n constructor(jssContextService: JssContextService) {\r\n jssContextService.state.subscribe((result) => {\r\n if (\r\n result.sitecore?.context &&\r\n result.sitecore?.context.configurationSettings\r\n ) {\r\n this.configurationSettingsContext =\r\n result.sitecore?.context.configurationSettings;\r\n }\r\n });\r\n }\r\n\r\n private configurationSettingsContext: any;\r\n\r\n public get configurationSettings() {\r\n return this.configurationSettingsContext;\r\n }\r\n\r\n public getConfigurationSettingsValidationAttributeValue(\r\n validationAttributeName: string\r\n ) {\r\n if (\r\n validationAttributeName &&\r\n this.configurationSettingsContext &&\r\n this.configurationSettingsContext.validationAttributes &&\r\n this.configurationSettingsContext.validationAttributes[\r\n validationAttributeName\r\n ]\r\n ) {\r\n return this.configurationSettingsContext.validationAttributes[\r\n validationAttributeName\r\n ];\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, BehaviorSubject, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DataSubscriptionService {\r\n private behaviorData = new BehaviorSubject({});\r\n private data = new Subject();\r\n private _onScroll: () => void;\r\n\r\n constructor() {}\r\n\r\n initOnScroll(fn: () => void) {\r\n this.onScroll = fn;\r\n }\r\n\r\n onScroll() {\r\n this._onScroll();\r\n }\r\n\r\n getData(): Observable {\r\n return this.data.asObservable();\r\n }\r\n\r\n getBehaviorData(): Observable {\r\n return this.behaviorData.asObservable();\r\n }\r\n\r\n publishData(event: string, data: any): void {\r\n this.data.next({\r\n event: event,\r\n data: data\r\n });\r\n }\r\n\r\n publishBehaviorData(event: string, data: any): void {\r\n this.behaviorData.next({\r\n event: event,\r\n data: data\r\n });\r\n }\r\n\r\n publishEvent(event: string, data?: any): void {\r\n this.publishData(event, data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ApiClientService, ApiResponse } from './api-client.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AB_API_PORTFOLIO_DEFAULT } from '../constants';\r\nimport { ReplaySubject, Observable } from 'rxjs';\r\n\r\nexport interface DefaultPortfolioResponse extends ApiResponse {\r\n portfolioNumber: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DefaultPortfolioService extends ApiClientService {\r\n private defaultPortfolio: DefaultPortfolioResponse;\r\n private portfolio = new ReplaySubject();\r\n\r\n private isLoading = false;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PORTFOLIO_DEFAULT);\r\n }\r\n\r\n clearDefaultPortfolio() {\r\n this.defaultPortfolio = undefined;\r\n }\r\n\r\n getPortfolio() {\r\n if (this.defaultPortfolio) {\r\n return this.portfolio.asObservable();\r\n }\r\n\r\n if (!this.isLoading && !this.defaultPortfolio) {\r\n this.isLoading = true;\r\n this.get().subscribe(\r\n res => {\r\n this.isLoading = false;\r\n this.defaultPortfolio = res;\r\n this.portfolio.next({ ...this.defaultPortfolio });\r\n },\r\n error => {\r\n this.isLoading = false;\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n\r\n return this.portfolio.asObservable();\r\n }\r\n\r\n setDefaultPortfolio(portfolioId: string) {\r\n this.defaultPortfolio = {\r\n ...this.defaultPortfolio,\r\n portfolioNumber: portfolioId\r\n };\r\n this.portfolio.next({ ...this.defaultPortfolio });\r\n }\r\n\r\n setPortfolio(portfolios: any): Observable {\r\n return this.postWithButtonLoader({ portfolios: portfolios });\r\n }\r\n}\r\n","import { Injectable, Inject, PLATFORM_ID } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpErrorResponse\r\n} from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { DialogStateService } from '../../dialogs/services/dialog-state.service';\r\nimport { JssContextService } from '../../jss-context.service';\r\nimport { isPlatformServer } from '@angular/common';\r\nimport { AB_API_LOGIN, AB_API_QRCODE_STATUS } from '../constants';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ErrorHandlingInterceptorService implements HttpInterceptor {\r\n private errorMessage: string;\r\n\r\n constructor(\r\n private dialogStateService: DialogStateService,\r\n jssContextService: JssContextService,\r\n @Inject(PLATFORM_ID) private platform\r\n ) {\r\n jssContextService.state.subscribe((context) => {\r\n if (context && context.sitecore) {\r\n this.errorMessage =\r\n context.sitecore.context.errors?.['Application']?.[\r\n 'General'\r\n ]?.message;\r\n }\r\n });\r\n }\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n return next.handle(req).pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n if (isPlatformServer(this.platform)) {\r\n return throwError(error);\r\n }\r\n\r\n switch (error.status) {\r\n case 400:\r\n this.dialogStateService.openDialog('ErrorHandling', {\r\n errorDescription: this.errorMessage\r\n });\r\n break;\r\n case 500:\r\n if (req.url.indexOf('/general/refreshsession') !== -1) {\r\n return;\r\n }\r\n if (req.url.indexOf(AB_API_QRCODE_STATUS) !== -1) {\r\n return throwError(error);\r\n }\r\n if (req.url.indexOf(AB_API_LOGIN) !== -1) {\r\n return throwError(error);\r\n }\r\n this.dialogStateService.openDialog('ErrorHandling', error.error);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return throwError(error);\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { UntypedFormGroup, UntypedFormArray } from '@angular/forms';\r\nimport {\r\n ScrollInvalidDirective,\r\n FormGroupWithName\r\n} from '../directives/scroll-invalid.directive';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormAllFieldsValidationService {\r\n private _subForms: UntypedFormGroup[] = [];\r\n private scrollInvalidDirective: ScrollInvalidDirective[] = [];\r\n\r\n constructor(router: Router) {\r\n router.events.subscribe(val => {\r\n if (val instanceof NavigationEnd) {\r\n this._subForms = [];\r\n this.scrollInvalidDirective = [];\r\n }\r\n });\r\n }\r\n\r\n setScrollInvalidDirective(scrollInvalidDirective: ScrollInvalidDirective) {\r\n if (scrollInvalidDirective) {\r\n this.scrollInvalidDirective.push(scrollInvalidDirective);\r\n }\r\n\r\n this.scrollInvalidDirective.sort(\r\n (a, b) => parseInt(a.scrollPriority, 0) - parseInt(b.scrollPriority, 0)\r\n );\r\n }\r\n\r\n validation(formGroup: UntypedFormGroup) {\r\n formGroup.markAsDirty();\r\n formGroup.markAsTouched();\r\n\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof UntypedFormGroup) {\r\n this.validation(control);\r\n }\r\n if (control instanceof UntypedFormArray) {\r\n control.controls.forEach(c => this.validation(c as UntypedFormGroup));\r\n } else {\r\n control.markAsDirty();\r\n control.markAsTouched();\r\n }\r\n });\r\n }\r\n\r\n addSubForms(subForm: UntypedFormGroup) {\r\n this._subForms.push(subForm);\r\n }\r\n\r\n validationAllForms(formGroup: UntypedFormGroup) {\r\n this.validation(formGroup);\r\n\r\n if (this._subForms) {\r\n this._subForms.forEach(subForm => {\r\n this.validation(subForm);\r\n });\r\n }\r\n\r\n if (this.scrollInvalidDirective) {\r\n const formName = (formGroup).formName;\r\n this.scrollInvalidDirective.forEach((d, index) => {\r\n if (\r\n formName === d.formName &&\r\n (index === 0 || !this.scrollInvalidDirective[index - 1].isInvalid)\r\n ) {\r\n d.scrollToInvalidElement(formName);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Field } from '@sitecore-jss/sitecore-jss/layout';\r\nimport { LinkField } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\ninterface FormInputField {\r\n helpText: Field;\r\n label: Field;\r\n placeholder: string | null;\r\n alternativePlaceholder: string | null;\r\n link: LinkField | null;\r\n defaultValue: string | null;\r\n title: Field | null;\r\n values: Array;\r\n otherCountry: string;\r\n shortListCountries: string;\r\n maxLength: string;\r\n mask: string;\r\n}\r\n\r\ninterface FormErrorFields {\r\n description: string | null;\r\n message: string;\r\n type: string;\r\n parameter: string;\r\n}\r\n\r\ninterface FormFields {\r\n fields: {\r\n [fieldName: string]: FormInputField;\r\n } | null;\r\n genericErrors: {\r\n [ErrorName: string]: FormErrorFields;\r\n } | null;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormFieldsGeneratorService {\r\n constructor() {}\r\n\r\n private fields: FormFields;\r\n\r\n generateFormFields(rendering): {} {\r\n this.fields = {\r\n fields: {},\r\n genericErrors: {}\r\n };\r\n if (rendering.fields.items) {\r\n this.generateErrors(rendering.fields.items);\r\n this.generateFields(rendering.fields.items);\r\n return this.fields;\r\n } else {\r\n return {\r\n fields: null,\r\n genericErrors: null\r\n };\r\n }\r\n }\r\n\r\n private generateErrors(items) {\r\n let errorArray;\r\n // Isolate the array that holds errors;\r\n items.forEach(item => {\r\n if (item.name === 'Errors Folder') {\r\n errorArray = item.fields.items;\r\n }\r\n });\r\n // Take previous generated array and create an object with JS readable names\r\n if (errorArray && errorArray.length > 0) {\r\n errorArray.forEach(error => {\r\n /**\r\n * error code fields are returned as :\r\n * {value: 'Validation.Field.Required'}\r\n * {value: 'Validation.Field.EmailAlreadyInUse'}\r\n *\r\n * so we strip the stuff we do not need and create a morelegible version by removing the dots:\r\n * `EmailAlreadyInUse`\r\n *\r\n * Assign this stripped string as a dynamic key to the error objects\r\n * {[errorKey]:value}\r\n * {EmailAlreadyInUse: 'this email is alreay in use'}\r\n * */\r\n const errorKey = (error as any).fields.code.value\r\n .replace('Validation.Field.', '')\r\n .replace('.', '');\r\n\r\n const camelCasedErrorKey = `${errorKey\r\n .charAt(0)\r\n .toLowerCase()}${errorKey.substr(1)}`;\r\n\r\n this.fields.genericErrors = Object.assign(this.fields.genericErrors, {\r\n [camelCasedErrorKey]: {\r\n description: error.fields.description\r\n ? error.fields.description.value\r\n : null,\r\n parameter: error.fields.parameter\r\n ? error.fields.parameter.value\r\n : null,\r\n message: error.fields.parameter\r\n ? error.fields.message.value.replace(\r\n '%parameter%',\r\n error.fields.parameter.value\r\n )\r\n : error.fields.message.value,\r\n type: error.fields.type.value\r\n }\r\n });\r\n });\r\n } else {\r\n this.fields.genericErrors = null;\r\n }\r\n }\r\n private generateFields(items) {\r\n let fieldArray;\r\n // Isolate the array that holds form fields;\r\n items.forEach(item => {\r\n if (item.name === 'Fields') {\r\n fieldArray = item.fields.items;\r\n }\r\n });\r\n\r\n if (fieldArray && fieldArray.length > 0) {\r\n // Take previous generated array and create an object with JS readable names and easy structure\r\n fieldArray.forEach(field => {\r\n const fieldKey = (field as any).name.replace(/[ ]/g, '');\r\n const camelCasedFieldKey = `${fieldKey\r\n .charAt(0)\r\n .toLowerCase()}${fieldKey.substr(1)}`;\r\n this.fields.fields = Object.assign(this.fields.fields, {\r\n [camelCasedFieldKey]: {\r\n helpText: field.fields.helpText,\r\n label: field.fields.label,\r\n placeholder: field.fields.placeholder\r\n ? field.fields.placeholder.value\r\n : null,\r\n alternativePlaceholder: field.fields['Alternative Placeholder']\r\n ? field.fields['Alternative Placeholder']?.value\r\n : null,\r\n link: field.fields.Link ? field.fields.Link : null,\r\n defaultValue: field.fields.defaultValue\r\n ? field.fields.defaultValue.value\r\n : null,\r\n title: field.fields.title ? field.fields.title : null,\r\n values: field.fields.values ? field.fields.values : null,\r\n otherCountry: field.fields.otherCountry\r\n ? field.fields.otherCountry\r\n : null,\r\n shortListCountries: field.fields.shortListCountries\r\n ? field.fields.shortListCountries\r\n : null,\r\n maxLength: field.fields.maxLength\r\n ? field.fields.maxLength.value\r\n : null,\r\n mask: field.fields.mask ? field.fields.mask.value : null\r\n }\r\n });\r\n });\r\n } else {\r\n this.fields.fields = null;\r\n }\r\n }\r\n}\r\n\r\nexport { FormInputField, FormErrorFields, FormFields };\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { IProduct } from '../../dashboard/services/account-overview.service';\r\nimport { AB_API_FULL_PORTFOLIO_VIEW } from '../constants';\r\nimport { ApiClientService } from './api-client.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FullPortfolioViewService extends ApiClientService {\r\n public bankAccounts = new ReplaySubject();\r\n public accountsResponse: IProduct[] = undefined;\r\n private isLoading = false;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_FULL_PORTFOLIO_VIEW);\r\n }\r\n\r\n clearBankAccounts() {\r\n this.bankAccounts.complete();\r\n this.bankAccounts = new ReplaySubject(null);\r\n this.accountsResponse = undefined;\r\n }\r\n\r\n getFullPortfolioView() {\r\n if (this.accountsResponse) {\r\n return this.bankAccounts.asObservable();\r\n }\r\n if (!this.isLoading && !this.accountsResponse) {\r\n this.isLoading = true;\r\n this.get().subscribe(\r\n response => {\r\n this.isLoading = false;\r\n this.bankAccounts.next({ bankAccounts: response.bankAccounts });\r\n this.accountsResponse = response.bankAccounts;\r\n },\r\n () => {\r\n this.isLoading = false;\r\n this.bankAccounts.next({ bankAccounts: [] });\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n return this.bankAccounts.asObservable();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Item, Field } from '@sitecore-jss/sitecore-jss/layout';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GetItemListFieldsService {\r\n constructor() {}\r\n\r\n getFields(metadata: Item): { [key: string]: { [name: string]: Field } } {\r\n if (!metadata) {\r\n return;\r\n }\r\n\r\n const labels: { [key: string]: { [name: string]: Field } } = {};\r\n (metadata.fields.items as Item[]).forEach(item => {\r\n labels[this.getKey(item)] = item.fields as { [name: string]: Field };\r\n });\r\n\r\n return labels;\r\n }\r\n\r\n getItems(data: Item[]): { [key: string]: Item } {\r\n const items: { [key: string]: Item } = {};\r\n\r\n data.forEach(item => {\r\n items[this.getKey(item)] = item;\r\n });\r\n\r\n return items;\r\n }\r\n\r\n private getKey(item: Item) {\r\n let key = item.name.split(' ').join('');\r\n key = key.charAt(0).toLocaleLowerCase() + key.slice(1);\r\n\r\n return key;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { takeUntil } from 'rxjs/internal/operators/takeUntil';\r\nimport { Router, RouterEvent, NavigationStart } from '@angular/router';\r\nimport { filter } from 'rxjs/internal/operators/filter';\r\nimport { Subject } from 'rxjs/internal/Subject';\r\nimport { tap } from 'rxjs/operators';\r\nimport { SessionService } from '../../session/services/session.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HttpCancelInterceptorService implements HttpInterceptor {\r\n private requests = new Subject();\r\n\r\n constructor(\r\n router: Router,\r\n private sessionService: SessionService\r\n ) {\r\n router.events\r\n .pipe(filter((event: RouterEvent) => event instanceof NavigationStart))\r\n .subscribe(() => {\r\n this.requests.next();\r\n });\r\n }\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n if (req.url.indexOf('/general/refreshsession') !== -1) {\r\n return next.handle(req);\r\n }\r\n\r\n return next.handle(req).pipe(\r\n takeUntil(\r\n this.requests.pipe(\r\n tap(() => {\r\n this.sessionService.chechResponse(req);\r\n })\r\n )\r\n )\r\n );\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport { AccountOverviewResponse } from '../../dashboard/services/account-overview.service';\r\nimport { AB_API_INITIAL_VIEW } from '../constants';\r\nimport { ApiClientService } from './api-client.service';\r\nimport { DefaultPortfolioService } from './default-portfolio.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InitialViewService extends ApiClientService {\r\n public accountsOverview = new ReplaySubject();\r\n public accountsOverviewResponse: AccountOverviewResponse = undefined;\r\n private isLoading = false;\r\n\r\n constructor(\r\n http: HttpClient,\r\n private defaultPortfolioService: DefaultPortfolioService\r\n ) {\r\n super(http, AB_API_INITIAL_VIEW);\r\n }\r\n\r\n clearAccountsOverview() {\r\n this.accountsOverview.complete();\r\n this.accountsOverview = new ReplaySubject();\r\n this.accountsOverviewResponse = undefined;\r\n }\r\n\r\n getInitialView(): Observable {\r\n if (this.accountsOverviewResponse) {\r\n return this.accountsOverview.asObservable();\r\n }\r\n if (!this.isLoading && !this.accountsOverviewResponse) {\r\n this.isLoading = true;\r\n this.get().subscribe(\r\n response => {\r\n this.isLoading = false;\r\n this.accountsOverview.next(response);\r\n this.accountsOverviewResponse = response;\r\n const portfolioId = response?.portfolios?.[0]?.id;\r\n if (portfolioId) {\r\n this.defaultPortfolioService.setDefaultPortfolio(portfolioId);\r\n }\r\n },\r\n error => {\r\n this.isLoading = false;\r\n this.accountsOverview.next(undefined);\r\n }\r\n );\r\n }\r\n\r\n return this.accountsOverview.asObservable();\r\n }\r\n\r\n getAccounts(): Observable {\r\n this.accountsOverview.next(this.accountsOverviewResponse);\r\n return this.accountsOverview.asObservable();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { LoaderService } from '../services/loader.service';\r\nimport {\r\n AP_API_CHECK_ROUTE_ACCESS,\r\n AB_API_REFRESH_SESSION\r\n} from '../constants';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoaderInterceptorService implements HttpInterceptor {\r\n count = 0;\r\n constructor(private loaderService: LoaderService) {}\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n if (\r\n req.url.indexOf('sitecore') === -1 &&\r\n req.url.indexOf(AP_API_CHECK_ROUTE_ACCESS) === -1 &&\r\n req.url.indexOf(AB_API_REFRESH_SESSION) === -1 &&\r\n !req.headers.has('withoutLoader')\r\n ) {\r\n this.count++;\r\n this.loaderService.show();\r\n\r\n return next.handle(req).pipe(\r\n finalize(() => {\r\n this.count--;\r\n if (this.count === 0) {\r\n setTimeout(() => {\r\n if (this.count === 0) {\r\n this.loaderService.hide();\r\n }\r\n }, 500);\r\n }\r\n })\r\n );\r\n } else {\r\n if (req.headers.has('withoutLoader')) {\r\n const newHeaders = req.headers.delete('withoutLoader');\r\n req = req.clone({ headers: newHeaders });\r\n }\r\n\r\n return next.handle(req);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoaderService {\r\n constructor() {}\r\n isLoading = new BehaviorSubject(false);\r\n show() {\r\n this.isLoading.next(true);\r\n }\r\n\r\n hide() {\r\n this.isLoading.next(false);\r\n }\r\n}\r\n","import {\r\n Injectable,\r\n QueryList,\r\n Renderer2,\r\n RendererFactory2,\r\n} from \"@angular/core\";\r\nimport { MatLegacyMenuTrigger } from \"@angular/material/legacy-menu\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class MenuTriggerService {\r\n private currentMenuTrigger: MatLegacyMenuTrigger;\r\n private lastMenuTrigger: MatLegacyMenuTrigger;\r\n private isFirstOpen = false;\r\n private subscriptions: { [key: string]: Subscription[] } = {};\r\n private renderer: Renderer2;\r\n\r\n constructor(rendererFactory: RendererFactory2) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n this.listenForScroll();\r\n }\r\n\r\n afterViewInit(\r\n menuTriggers: QueryList,\r\n actionsCollection: string = \"actions\"\r\n ) {\r\n menuTriggers.changes.subscribe(() => {\r\n this.subscribeToEvent(menuTriggers, actionsCollection);\r\n });\r\n\r\n if (menuTriggers.length !== 0) {\r\n this.subscribeToEvent(menuTriggers, actionsCollection);\r\n }\r\n }\r\n\r\n unsubscribeFromAction(actionsCollection: string = \"actions\") {\r\n if (this.subscriptions[actionsCollection]) {\r\n this.unsubscribe(actionsCollection);\r\n }\r\n }\r\n\r\n listenForScroll() {\r\n this.renderer.listen(\"window\", \"scroll\", (evt) => {\r\n this.closeActiveMenu();\r\n });\r\n }\r\n\r\n documentEvent(event) {\r\n if (\r\n document.querySelector(\".actions-list\") &&\r\n !document.querySelector(\".actions-list\").contains(event.target as Node)\r\n ) {\r\n if (this.lastMenuTrigger && this.lastMenuTrigger.closeMenu) {\r\n this.lastMenuTrigger.closeMenu();\r\n this.lastMenuTrigger = null;\r\n return;\r\n }\r\n\r\n if (\r\n !this.isFirstOpen &&\r\n this.currentMenuTrigger &&\r\n this.currentMenuTrigger.closeMenu\r\n ) {\r\n this.currentMenuTrigger.closeMenu();\r\n this.currentMenuTrigger = null;\r\n this.renderer.removeClass(document.body, \"menu-opened\");\r\n }\r\n\r\n this.isFirstOpen = false;\r\n } else {\r\n this.currentMenuTrigger = null;\r\n this.renderer.removeClass(document.body, \"menu-opened\");\r\n }\r\n }\r\n\r\n closeActiveMenu() {\r\n if (this.currentMenuTrigger) {\r\n this.currentMenuTrigger.closeMenu();\r\n this.currentMenuTrigger = null;\r\n this.renderer.removeClass(document.body, \"menu-opened\");\r\n }\r\n }\r\n\r\n private unsubscribe(actionsCollection) {\r\n if (this.subscriptions[actionsCollection].length !== 0) {\r\n this.subscriptions[actionsCollection].forEach((s) => s.unsubscribe());\r\n this.subscriptions[actionsCollection] = [];\r\n }\r\n\r\n return this.subscriptions[actionsCollection];\r\n }\r\n\r\n private subscribeToEvent(menuTriggers, actionsCollection) {\r\n if (!this.subscriptions[actionsCollection]) {\r\n this.subscriptions[actionsCollection] = [];\r\n }\r\n\r\n const currentSubscriptions = this.unsubscribe(actionsCollection);\r\n\r\n menuTriggers.forEach((menuTrigger) => {\r\n currentSubscriptions.push(\r\n menuTrigger.menuOpened.subscribe(() => {\r\n this.isFirstOpen = !this.currentMenuTrigger;\r\n this.lastMenuTrigger = this.currentMenuTrigger;\r\n this.currentMenuTrigger = menuTrigger;\r\n if (this.currentMenuTrigger) {\r\n this.renderer.addClass(document.body, \"menu-opened\");\r\n }\r\n })\r\n );\r\n });\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable, ReplaySubject } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AB_API_PORTFOLIO } from '../constants';\r\nimport { ApiClientService } from './api-client.service';\r\n\r\ninterface PortfolioResponse {\r\n name: string;\r\n portfolios: IPortfolio[];\r\n}\r\n\r\ninterface IPortfolio {\r\n id: string;\r\n name: string;\r\n isSelected: boolean;\r\n isResident: boolean;\r\n isDefault: boolean;\r\n portfolioType: string;\r\n isMainUser: boolean;\r\n isValidCif7: boolean;\r\n defaultAccount?: any;\r\n portfolioId: any;\r\n}\r\n\r\ninterface ChangePortfolioRequest {\r\n portfolioId: string;\r\n type?: string;\r\n}\r\n\r\ninterface ChangePortfolioResponse {\r\n updated: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PortfolioService extends ApiClientService {\r\n private currentPortfolio = new BehaviorSubject(null);\r\n private getPortfolio = new ReplaySubject(null);\r\n public portfolioChanged = new ReplaySubject();\r\n\r\n private selectedPortfolio: IPortfolio;\r\n\r\n private portfolios: PortfolioResponse;\r\n\r\n private isLoading = false;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_PORTFOLIO);\r\n }\r\n\r\n setCurrentPortfolio(portfolio: IPortfolio): void {\r\n if (!this.selectedPortfolio || this.selectedPortfolio.id !== portfolio.id) {\r\n this.currentPortfolio.next(portfolio);\r\n this.selectedPortfolio = portfolio;\r\n }\r\n }\r\n\r\n getCurrentPortfolio(): Observable {\r\n return this.currentPortfolio.asObservable();\r\n }\r\n\r\n clearPortfolios(logout: boolean = false) {\r\n this.getPortfolio.complete();\r\n this.getPortfolio = new ReplaySubject(null);\r\n this.portfolios = undefined;\r\n if (logout) {\r\n this.portfolioChanged.next(null);\r\n }\r\n }\r\n\r\n getPortfolios(): Observable {\r\n if (this.portfolios) {\r\n return this.getPortfolio.asObservable();\r\n }\r\n\r\n if (!this.isLoading && !this.portfolios) {\r\n this.isLoading = true;\r\n this.get().subscribe(\r\n res => {\r\n this.isLoading = false;\r\n this.portfolios = res;\r\n this.getPortfolio.next({ ...this.portfolios });\r\n },\r\n error => {\r\n this.isLoading = false;\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n\r\n return this.getPortfolio.asObservable();\r\n }\r\n\r\n getSelectedPortfolio() {\r\n return this.getPortfolios().pipe(\r\n map(r => r.portfolios.filter(p => p.isSelected))\r\n );\r\n }\r\n\r\n changePortfolio(\r\n request: ChangePortfolioRequest\r\n ): Observable {\r\n this.portfolioChanged.next(true);\r\n this.clearPortfolios();\r\n return this.put(request);\r\n }\r\n}\r\n\r\nexport { IPortfolio, PortfolioResponse, ChangePortfolioRequest };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { ApiResponse, ApiClientService } from './api-client.service';\r\nimport { AP_API_CHECK_ROUTE_ACCESS } from '../constants';\r\n\r\ninterface CheckRouterAccessResponse extends ApiResponse {\r\n redirectUrl: string;\r\n access: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RouterAccessService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AP_API_CHECK_ROUTE_ACCESS);\r\n }\r\n\r\n checkRouteAccess(url: string): Observable {\r\n return this.get({ route: url });\r\n }\r\n}\r\n\r\nexport { CheckRouterAccessResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { delay, distinctUntilChanged, tap } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TaskService {\r\n private tasks = [];\r\n private taskObservor = new Subject();\r\n\r\n constructor() {}\r\n\r\n resetTasks() {\r\n this.tasks = [];\r\n }\r\n\r\n setTask(task: Observable): Observable {\r\n this.tasks.push(false);\r\n\r\n const index = this.tasks.length - 1;\r\n return task.pipe(\r\n tap(() => {\r\n this.tasks[index] = true;\r\n this.taskObservor.next(this.tasks.every(task => task));\r\n })\r\n );\r\n }\r\n\r\n onTasksComplete() {\r\n return this.taskObservor.pipe(\r\n distinctUntilChanged(),\r\n delay(500)\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserAgentService {\r\n private userAgent: string;\r\n\r\n constructor() {\r\n if(navigator || window){\r\n this.userAgent = navigator.userAgent || (window as any).opera || undefined;\r\n }\r\n }\r\n\r\n isMobileDevice = (): boolean => {\r\n if (!navigator)\r\n return false;\r\n const a = navigator.userAgent || navigator.vendor;\r\n if (\r\n /(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(\r\n a\r\n ) ||\r\n /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(\r\n a.substr(0, 4)\r\n )\r\n ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n isTabletDevice(): boolean {\r\n const tabletRegex =\r\n /(ipad|tablet|(android(?!.*mobile))|(windows(?!.*phone)(.*touch))|kindle|playbook|silk|(puffin(?!.*(IP|AP|WP))))/;\r\n return tabletRegex.test(this.userAgent.toLowerCase());\r\n }\r\n\r\n isDesktopDevice(): boolean {\r\n return !this.isMobileDevice() && !this.isTabletDevice();\r\n }\r\n}\r\n","import { Injectable, PLATFORM_ID, Inject } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { RouterAccessService } from './router-access.service';\r\nimport {AB_LOGIN_FORM_URL, AB_SENTOO} from '../constants';\r\nimport { isPlatformServer } from '@angular/common';\r\nimport { PortfolioService } from './portfolio.service';\r\nimport { DefaultPortfolioService } from './default-portfolio.service';\r\nimport { MessagesCountService } from '../../personal-archive/services/messages-count.service';\r\nimport { SessionService } from '../../session/services/session.service';\r\nimport { InitialViewService } from './initial-view.service';\r\nimport { FullPortfolioViewService } from './full-portfolio-view.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserService {\r\n private access: boolean;\r\n private wasLoggedIn = false;\r\n private openSessionPopup: () => void;\r\n private isFirstTime = false;\r\n\r\n constructor(\r\n private routerAccessService: RouterAccessService,\r\n private router: Router,\r\n @Inject(PLATFORM_ID) private platform,\r\n private portfolioService: PortfolioService,\r\n private defaultPortfolioService: DefaultPortfolioService,\r\n private messagesCountService: MessagesCountService,\r\n private sessionService: SessionService,\r\n private initialViewSerivce: InitialViewService,\r\n private fullPortfolioViewService: FullPortfolioViewService\r\n ) {}\r\n\r\n public get hasAccess() {\r\n return this.access;\r\n }\r\n\r\n initOpenPopUp(fn: () => void) {\r\n this.openSessionPopup = fn;\r\n }\r\n\r\n userHasAccess(url: string) {\r\n if (url.indexOf('?') !== -1) {\r\n url = url.split('?')[0];\r\n }\r\n\r\n return new Observable((observer) => {\r\n this.checkAccess(url, observer);\r\n });\r\n }\r\n\r\n logoutUser() {\r\n this.clearServices(true);\r\n this.router.navigate([AB_LOGIN_FORM_URL]);\r\n }\r\n\r\n private clearServices(logout: boolean = false) {\r\n this.wasLoggedIn = false;\r\n this.defaultPortfolioService.clearDefaultPortfolio();\r\n this.portfolioService.clearPortfolios(logout);\r\n this.messagesCountService.cleanUnreadMessagesCount();\r\n this.fullPortfolioViewService.clearBankAccounts();\r\n this.initialViewSerivce.clearAccountsOverview();\r\n }\r\n\r\n private checkAccess(url, observer) {\r\n this.routerAccessService.checkRouteAccess(url).subscribe(\r\n (result) => {\r\n this.access = result.access;\r\n\r\n if (isPlatformServer(this.platform)) {\r\n observer.next(true);\r\n }\r\n\r\n if (result.redirectUrl) {\r\n if (this.wasLoggedIn && result.redirectUrl === AB_LOGIN_FORM_URL) {\r\n this.openSessionPopup();\r\n this.wasLoggedIn = false;\r\n observer.next(false);\r\n return;\r\n }\r\n\r\n this.clearServices();\r\n this.isFirstTime = result.redirectUrl === AB_LOGIN_FORM_URL;\r\n this.router.navigate([result.redirectUrl]);\r\n observer.next(false);\r\n } else {\r\n this.wasLoggedIn = url !== AB_LOGIN_FORM_URL;\r\n\r\n if (!this.isFirstTime && url !== AB_LOGIN_FORM_URL && url !== AB_SENTOO) {\r\n this.sessionService.refreshSession().subscribe(\r\n () => {\r\n observer.next(true);\r\n },\r\n () => {\r\n observer.next(true);\r\n }\r\n );\r\n\r\n this.isFirstTime = true;\r\n } else {\r\n this.isFirstTime = true;\r\n observer.next(true);\r\n }\r\n }\r\n },\r\n (error) => {\r\n if (error.status === 401) {\r\n this.logoutUser();\r\n }\r\n\r\n observer.next(false);\r\n }\r\n );\r\n }\r\n}\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { RouterModule } from \"@angular/router\";\r\n\r\nimport { TranslateModule } from \"@ngx-translate/core\";\r\n\r\nimport {\r\n MatMomentDateModule,\r\n MAT_MOMENT_DATE_ADAPTER_OPTIONS,\r\n} from \"@angular/material-moment-adapter\";\r\nimport { MatLegacyAutocompleteModule } from \"@angular/material/legacy-autocomplete\";\r\nimport { MatLegacyCheckboxModule } from \"@angular/material/legacy-checkbox\";\r\nimport { DateAdapter } from \"@angular/material/core\";\r\nimport { MatDatepickerModule } from \"@angular/material/datepicker\";\r\nimport { MatLegacyDialogModule } from \"@angular/material/legacy-dialog\";\r\nimport { MatExpansionModule } from \"@angular/material/expansion\";\r\nimport { MatLegacyRadioModule } from \"@angular/material/legacy-radio\";\r\nimport { MatLegacySelectModule } from \"@angular/material/legacy-select\";\r\nimport { MatLegacySlideToggleModule } from \"@angular/material/legacy-slide-toggle\";\r\nimport { MatLegacyTooltipModule } from \"@angular/material/legacy-tooltip\";\r\nimport {\r\n NgbCollapseModule,\r\n NgbTooltipModule,\r\n} from \"@ng-bootstrap/ng-bootstrap\";\r\nimport { InfiniteScrollModule } from \"ngx-infinite-scroll\";\r\n\r\nimport { DecimalPipe } from \"@angular/common\";\r\nimport { HTTP_INTERCEPTORS } from \"@angular/common/http\";\r\nimport { JssModule } from \"@sitecore-jss/sitecore-jss-angular\";\r\nimport { NgxMaskModule } from \"ngx-mask\";\r\nimport { GoogleAnalyticsModule } from \"../google-analytics/google-analytics.module\";\r\nimport { CountryListComponent } from \"../shared/components/country-list/country-list.component\";\r\nimport { ValidatorsModule } from \"../validators/validators.module\";\r\nimport { AbDateAdapter } from \"./adapters/ab-date-adapter\";\r\nimport { AccessDeniedComponent } from \"./components/access-denied/access-denied.component\";\r\nimport { AddressBookComponent } from \"./components/address-book/address-book.component\";\r\nimport { AddressComponent } from \"./components/address/address.component\";\r\nimport { BankListComponent } from \"./components/bank-list/bank-list.component\";\r\nimport { CurrencyInputComponent } from \"./components/currency-input/currency-input.component\";\r\nimport { FileUploadFieldComponent } from \"./components/file-upload-field/file-upload-field.component\";\r\nimport { ForeignBankComponent } from \"./components/foreign-bank/foreign-bank.component\";\r\nimport { LoaderComponent } from \"./components/loader/loader.component\";\r\nimport { PrintComponent } from \"./components/print/print.component\";\r\nimport { RichtextComponent } from \"./components/richtext/richtext.component\";\r\nimport { TabNavigationComponent } from \"./components/tab-navigation/tab-navigation.component\";\r\nimport { TableComponent } from \"./components/table/table.component\";\r\nimport { AccessDirective } from \"./directives/access.directive\";\r\nimport { AmountFormatterDirective } from \"./directives/amount-formatter.directive\";\r\nimport { ButtonLoaderDirective } from \"./directives/button-loader.directive\";\r\nimport { DateFormatterDirective } from \"./directives/date-formatter.directive\";\r\nimport { FileDropZoneDirective } from \"./directives/file-drop-zone.directive\";\r\nimport { ScrollInvalidDirective } from \"./directives/scroll-invalid.directive\";\r\nimport { ScrollToDirective } from \"./directives/scroll-to.directive\";\r\nimport { UnitsDirective } from \"./directives/units.directive\";\r\nimport { AbCurrencySymbolPipe } from \"./pipes/ab-currency-symbol.pipe\";\r\nimport { AbCurrencyPipe } from \"./pipes/ab-currency.pipe\";\r\nimport { AbDatePipe } from \"./pipes/ab-date.pipe\";\r\nimport { AbFileSizePipe } from \"./pipes/ab-file-size.pipe\";\r\nimport { AbFilterCountriesPipe } from \"./pipes/ab-filter-countries.pipe\";\r\nimport { AbMoneyPipe } from \"./pipes/ab-money.pipe\";\r\nimport { ReplacePipe } from \"./pipes/replace.pipe\";\r\nimport { SafeHtmlPipe } from \"./pipes/safe-html.pipe\";\r\nimport { SupFractionPipe } from \"./pipes/sup-fraction.pipe\";\r\nimport { AntiForgeryTokenService } from \"./services/anti-forgery-token.service\";\r\nimport { ButtonLoaderInterceptorService } from \"./services/button-loader-interceptor.service\";\r\nimport { ErrorHandlingInterceptorService } from \"./services/error-handling-interceptor.service\";\r\nimport { HttpCancelInterceptorService } from \"./services/http-cancel-interceptor.service\";\r\nimport { LoaderInterceptorService } from \"./services/loader-interceptor.service\";\r\nimport { IFrameResizerDirective } from \"./directives/iframeResizer.directive\";\r\n\r\nconst SharedComponents = [\r\n { name: \"RichText\", type: RichtextComponent },\r\n { name: \"TabsMenu\", type: TabNavigationComponent },\r\n { name: \"AccessDenied\", type: AccessDeniedComponent },\r\n { name: \"Print\", type: PrintComponent },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n JssModule,\r\n TranslateModule,\r\n MatLegacyDialogModule,\r\n MatLegacySlideToggleModule,\r\n MatLegacyCheckboxModule,\r\n MatLegacyRadioModule,\r\n RouterModule,\r\n MatLegacyTooltipModule,\r\n MatExpansionModule,\r\n MatLegacySelectModule,\r\n MatDatepickerModule,\r\n MatMomentDateModule,\r\n NgbCollapseModule,\r\n NgbTooltipModule,\r\n InfiniteScrollModule,\r\n ValidatorsModule,\r\n MatLegacyAutocompleteModule,\r\n GoogleAnalyticsModule,\r\n NgxMaskModule.forRoot(),\r\n ],\r\n declarations: [\r\n LoaderComponent,\r\n RichtextComponent,\r\n TableComponent,\r\n TabNavigationComponent,\r\n AbDatePipe,\r\n AmountFormatterDirective,\r\n DateFormatterDirective,\r\n CurrencyInputComponent,\r\n AbCurrencySymbolPipe,\r\n AbMoneyPipe,\r\n AbCurrencyPipe,\r\n AbFilterCountriesPipe,\r\n BankListComponent,\r\n AddressComponent,\r\n CountryListComponent,\r\n ForeignBankComponent,\r\n AccessDeniedComponent,\r\n AddressBookComponent,\r\n SafeHtmlPipe,\r\n FileDropZoneDirective,\r\n AbFileSizePipe,\r\n FileUploadFieldComponent,\r\n PrintComponent,\r\n UnitsDirective,\r\n ButtonLoaderDirective,\r\n ScrollInvalidDirective,\r\n SupFractionPipe,\r\n AccessDirective,\r\n IFrameResizerDirective,\r\n ScrollToDirective,\r\n ReplacePipe,\r\n ],\r\n exports: [\r\n LoaderComponent,\r\n RichtextComponent,\r\n MatLegacySlideToggleModule,\r\n TabNavigationComponent,\r\n NgbCollapseModule,\r\n NgbTooltipModule,\r\n MatLegacyCheckboxModule,\r\n MatLegacyRadioModule,\r\n RouterModule,\r\n AbDatePipe,\r\n AbMoneyPipe,\r\n AbCurrencyPipe,\r\n AbCurrencySymbolPipe,\r\n MatExpansionModule,\r\n AmountFormatterDirective,\r\n MatLegacyTooltipModule,\r\n MatLegacySelectModule,\r\n MatDatepickerModule,\r\n MatMomentDateModule,\r\n DateFormatterDirective,\r\n CurrencyInputComponent,\r\n InfiniteScrollModule,\r\n ValidatorsModule,\r\n MatLegacyDialogModule,\r\n MatLegacyAutocompleteModule,\r\n AbFilterCountriesPipe,\r\n BankListComponent,\r\n AddressComponent,\r\n CountryListComponent,\r\n ForeignBankComponent,\r\n AccessDeniedComponent,\r\n AddressBookComponent,\r\n SafeHtmlPipe,\r\n FileDropZoneDirective,\r\n AbFileSizePipe,\r\n FileUploadFieldComponent,\r\n PrintComponent,\r\n UnitsDirective,\r\n ButtonLoaderDirective,\r\n ScrollInvalidDirective,\r\n GoogleAnalyticsModule,\r\n SupFractionPipe,\r\n ScrollToDirective,\r\n ReplacePipe,\r\n ],\r\n providers: [\r\n DecimalPipe,\r\n AbMoneyPipe,\r\n AbDatePipe,\r\n AbCurrencyPipe,\r\n SafeHtmlPipe,\r\n SupFractionPipe,\r\n { provide: DateAdapter, useClass: AbDateAdapter },\r\n { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: HttpCancelInterceptorService,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: ErrorHandlingInterceptorService,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: ButtonLoaderInterceptorService,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: LoaderInterceptorService,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AntiForgeryTokenService,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class SharedModule {}\r\nexport { SharedComponents };\r\n","// This file is generated do not modify manually\r\nexport const transactions = [\r\n { path: 'AccountSelector', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'Overview', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'SearchAndDownload', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'History', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'DownloadTransactions', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'Statements', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'StatementsList', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'PrintStatements', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n { path: 'PrintTransactions', loadChildren: () =>\r\n import('./transactions.module').then(m => m.TransactionsModule) },\r\n];\r\n","enum SwiftFeePayee {\r\n Sha = 1,\r\n Our = 2\r\n}\r\n\r\nexport default SwiftFeePayee;\r\n","enum TRANSFER_TYPE {\r\n default,\r\n internalTransfer,\r\n domesticTransfer,\r\n billPayee,\r\n internationalTransfer,\r\n bulk\r\n}\r\n\r\nexport default TRANSFER_TYPE;\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_BANK_BY_BIC } from '../../shared/constants';\r\n\r\ninterface BankByBICResponse extends ApiResponse {\r\n id: string;\r\n bicCode: string;\r\n branchCode: string;\r\n name: string;\r\n branch: string;\r\n address: string;\r\n postCode: string;\r\n city: string;\r\n countryCode: string;\r\n country: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BankByBICService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_BANK_BY_BIC);\r\n }\r\n\r\n getBankByBIC(BIC: string): Observable {\r\n return this.get({ bic: BIC });\r\n }\r\n}\r\n\r\nexport { BankByBICResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { ApiClientService } from '../../shared/services/api-client.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AB_API_TRANSFERS_GETBANKSBYCOUNTRY } from '../../shared/constants';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\n\r\ninterface IBankInfo {\r\n id: string;\r\n abaCode: string;\r\n bicCode: string;\r\n branchCode: string;\r\n name: string;\r\n branch: string;\r\n address: string;\r\n postCode: string;\r\n city: string;\r\n countryCode: string;\r\n country: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BankService extends ApiClientService {\r\n private cache: { [name: string]: ReplaySubject } = {};\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_TRANSFERS_GETBANKSBYCOUNTRY);\r\n }\r\n\r\n public getBankByCountry(): Observable {\r\n if (!this.cache['bankList']) {\r\n this.cache['bankList'] = new ReplaySubject();\r\n this._getBankByCountry().subscribe(response => {\r\n this.cache['bankList'].next(response);\r\n });\r\n }\r\n\r\n return this.cache['bankList'].asObservable();\r\n }\r\n\r\n private _getBankByCountry() {\r\n return this.get();\r\n }\r\n}\r\n\r\nexport { IBankInfo };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_BASKET_CHECK_PAYMENTS } from '../../shared/constants';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BasketCheckPaymentsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_BASKET_CHECK_PAYMENTS);\r\n }\r\n\r\n checkPayments(): Observable {\r\n return this.get();\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subject, Observable, BehaviorSubject } from 'rxjs';\r\n\r\nimport { ApiClientService } from '../../shared/services/api-client.service';\r\nimport { ICurrency } from '../../shared/interfaces/currency.interface';\r\n\r\nimport { IAccount } from './internal-accounts.service';\r\n\r\nenum BULK_TRANSFER_TYPES {\r\n DOMESTIC = 'DOMESTIC',\r\n INTERNATIONAL = 'INTERNATIONAL'\r\n}\r\n\r\nenum BULK_TRANSFER_PURPOSES {\r\n SALARY_PAYMENTS = '0',\r\n ACCOUNT_PAYABLES = '1',\r\n SAVINGS_PLAN = '2',\r\n FOREIGN_BULK = '3'\r\n}\r\n\r\ninterface IBulkPayment {\r\n orderRef?: string;\r\n transferDate: Date;\r\n chargeAccount: IAccount;\r\n amount: ICurrency;\r\n purpose: string;\r\n transactionPostingType: string;\r\n reference: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BulkTransferService extends ApiClientService {\r\n private onSubmit = new Subject();\r\n private onConfirm = new Subject();\r\n private orderReference = new Subject();\r\n private metaFields = new Subject();\r\n private onError = new Subject();\r\n private purpose = new BehaviorSubject(\r\n BULK_TRANSFER_PURPOSES.SALARY_PAYMENTS\r\n );\r\n\r\n constructor(\r\n http: HttpClient,\r\n @Optional() @Inject('resource') resource: string\r\n ) {\r\n super(http, resource);\r\n }\r\n\r\n setAmountExceedsLimitError(message: string) {\r\n this.onError.next(message);\r\n }\r\n\r\n getAmountExceedsLimitError(): Observable {\r\n return this.onError.asObservable();\r\n }\r\n\r\n setMetaFields(fields: IBulkPayment) {\r\n this.metaFields.next(fields);\r\n }\r\n\r\n getMetaFields(): Observable {\r\n return this.metaFields.asObservable();\r\n }\r\n\r\n setOnSubmit(isValid: boolean) {\r\n return this.onSubmit.next(isValid);\r\n }\r\n\r\n getOnSubmit(): Observable {\r\n return this.onSubmit.asObservable();\r\n }\r\n\r\n setOnConfirm(isSet: boolean) {\r\n return this.onConfirm.next(isSet);\r\n }\r\n\r\n getOnConfirm(): Observable {\r\n return this.onConfirm.asObservable();\r\n }\r\n\r\n setOrderReference(orderReference: string) {\r\n this.orderReference.next(orderReference);\r\n }\r\n\r\n getOrderReference(): Observable {\r\n return this.orderReference.asObservable();\r\n }\r\n\r\n setPurpose(purpose: BULK_TRANSFER_PURPOSES) {\r\n this.purpose.next(purpose);\r\n }\r\n\r\n getPurpose(): Observable {\r\n return this.purpose.asObservable();\r\n }\r\n\r\n getTransferType(purpose: string): BULK_TRANSFER_TYPES {\r\n return purpose === BULK_TRANSFER_PURPOSES.FOREIGN_BULK\r\n ? BULK_TRANSFER_TYPES.INTERNATIONAL\r\n : BULK_TRANSFER_TYPES.DOMESTIC;\r\n }\r\n}\r\n\r\nexport { IBulkPayment, BULK_TRANSFER_TYPES, BULK_TRANSFER_PURPOSES };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from './../../shared/services/api-client.service';\r\nimport { AB_API_TRANSFERS_COUNTRYLIST } from './../../shared/constants';\r\ninterface CountryListResponse extends ApiResponse {\r\n list: any;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CountryListService extends ApiClientService {\r\n private cache: ReplaySubject;\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_TRANSFERS_COUNTRYLIST);\r\n }\r\n\r\n public get(): Observable {\r\n if (!this.cache) {\r\n this.cache = new ReplaySubject();\r\n super.get().subscribe(response => this.cache.next(response));\r\n }\r\n\r\n return this.cache.asObservable();\r\n }\r\n}\r\n\r\nexport { CountryListResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_LOCAL_FROM_ACCOUNTS_ENDPOINT } from './../../shared/constants';\r\nimport { ICurrency } from './../../shared/interfaces/currency.interface';\r\n\r\ninterface ITransferOptions {\r\n billTransferAllowed: boolean;\r\n bulkTransferAllowed: boolean;\r\n internationalTransferAllowed: boolean;\r\n domesticTransferAllowed: boolean;\r\n internalTransferAllowed: boolean;\r\n}\r\n\r\ninterface IAccountTransferPermissions {\r\n internalTransferEnabled: boolean;\r\n billTransferEnabled: boolean;\r\n internationalTransferEnabled: boolean;\r\n domesticTransferEnabled: boolean;\r\n}\r\n\r\ninterface IAccount {\r\n accountId?: string;\r\n availableBalance?: ICurrency;\r\n portfolioName?: string;\r\n accountName?: string;\r\n accountNumber?: string;\r\n transferOptions?: ITransferOptions;\r\n accountCreateTransfersPermissions?: IAccountTransferPermissions;\r\n isFromToAccount?: boolean;\r\n alias?: string;\r\n description?: string;\r\n isDefaultAccount?: boolean;\r\n}\r\n\r\ninterface InternalAccountsResponse extends ApiResponse {}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InternalAccountsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_LOCAL_FROM_ACCOUNTS_ENDPOINT);\r\n }\r\n\r\n getAccounts(): Observable {\r\n return this.get();\r\n }\r\n\r\n public isOnly(\r\n transferOptions: ITransferOptions,\r\n transferOption: string\r\n ): boolean {\r\n const options = [],\r\n transferOptionsMap = Object.keys(transferOptions);\r\n\r\n transferOptionsMap.forEach(option => {\r\n if (option.indexOf('bulk') !== -1) {\r\n return;\r\n }\r\n\r\n if (option === transferOption) {\r\n options.push(transferOptions[option]);\r\n } else {\r\n options.push(transferOptions[option] === false);\r\n }\r\n });\r\n return options.every(bool => bool);\r\n }\r\n}\r\n\r\nexport {\r\n IAccount,\r\n InternalAccountsResponse,\r\n IAccountTransferPermissions,\r\n ITransferOptions\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\n\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_REFERENCE_CODES } from '../../shared/constants';\r\nimport TRANSFER_TYPE from './../enums/transfer-type';\r\nimport { IPortfolio } from './../../shared/services/portfolio.service';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { IBaseAccount } from './to-accounts.service';\r\n\r\ninterface ReferenceCodesResponse extends ApiResponse {}\r\n\r\nenum PAYMENT_TYPES {\r\n domesticTransfer = 'Domestic',\r\n internationalTransfer = 'International'\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ReferenceCodesService extends ApiClientService {\r\n private cache: { [name: string]: ReplaySubject } = {};\r\n\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_REFERENCE_CODES);\r\n }\r\n\r\n getAll(\r\n transferType: TRANSFER_TYPE,\r\n bankAccount: IBaseAccount\r\n ): Observable {\r\n let params = {};\r\n\r\n if (PAYMENT_TYPES[TRANSFER_TYPE[transferType]]) {\r\n params['request.paymentType'] =\r\n PAYMENT_TYPES[TRANSFER_TYPE[transferType]];\r\n }\r\n\r\n if (bankAccount && bankAccount.accountNumber) {\r\n params['request.beneficiaryAccountNumber'] = bankAccount.accountNumber;\r\n }\r\n\r\n const stringParams = JSON.stringify(params);\r\n\r\n if (!this.cache[stringParams]) {\r\n this.cache[stringParams] = new ReplaySubject();\r\n this.get(params)\r\n .pipe(\r\n debounceTime(500),\r\n distinctUntilChanged()\r\n )\r\n .subscribe(response => this.cache[stringParams].next(response));\r\n }\r\n\r\n return this.cache[stringParams];\r\n }\r\n\r\n showCategory(transferType: TRANSFER_TYPE, portfolio: IPortfolio): boolean {\r\n if (\r\n transferType === TRANSFER_TYPE.default ||\r\n transferType === TRANSFER_TYPE.internalTransfer\r\n ) {\r\n return false;\r\n }\r\n\r\n if (\r\n (transferType === TRANSFER_TYPE.domesticTransfer ||\r\n transferType === TRANSFER_TYPE.billPayee) &&\r\n portfolio.isResident === true\r\n ) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n format(response: any) {\r\n let categoryNames = [];\r\n return response\r\n .map((category, index) => {\r\n return {\r\n id: index + 1,\r\n code: category.code,\r\n category: category.category,\r\n isDefault: category.defaultReferenceCode,\r\n subcategory: response\r\n .filter(subcategory => {\r\n return subcategory.category === category.category;\r\n })\r\n .map(subcategory => {\r\n return {\r\n id: subcategory.id,\r\n code: subcategory.code,\r\n name: subcategory.subCategory,\r\n isDefault: subcategory.defaultReferenceCode,\r\n explanation: subcategory.explanation\r\n };\r\n })\r\n };\r\n })\r\n .filter((category, index, self) => {\r\n if (categoryNames.indexOf(category.category) === -1) {\r\n categoryNames.push(category.category);\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n}\r\n\r\nexport { PAYMENT_TYPES, ReferenceCodesResponse };\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, BehaviorSubject, Subscription } from 'rxjs';\r\n\r\nimport {\r\n IAccount,\r\n InternalAccountsService\r\n} from './../services/internal-accounts.service';\r\n\r\nimport TRANSFER_TYPE from './../enums/transfer-type';\r\nimport { IBaseAccount, ToAccountsListItemType } from './to-accounts.service';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\n\r\nenum IState {\r\n internalAccounts = 'INTERNAL_ACCOUNTS',\r\n toAccounts = 'TO_ACCOUNTS',\r\n fromAccount = 'FROM_ACCOUNT',\r\n toAccount = 'TO_ACCOUNT',\r\n previousState = 'PREVIOUS_STATE',\r\n internationalTransfer = 'INTERNATIONAL_TRANSFER',\r\n editTransfer = 'EDIT_TRANSFER',\r\n prefilledData = 'PREFILLED_DATA',\r\n domesticBeneficiaryBank = 'DOMESTIC_BENEFICIARY_BANK'\r\n}\r\n\r\ninterface IFinalState {\r\n transferType: TRANSFER_TYPE;\r\n data: any;\r\n}\r\n\r\ninterface ITransferState {\r\n internalAccounts: BehaviorSubject>;\r\n toAccount: BehaviorSubject;\r\n toAccounts: BehaviorSubject>;\r\n fromAccount: BehaviorSubject;\r\n finalState: BehaviorSubject;\r\n internationalTransfer: BehaviorSubject;\r\n domesticBeneficiaryBank: BehaviorSubject;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StateService {\r\n private fromAccount: Subscription;\r\n private toAccount: Subscription;\r\n private fromEditInit = false;\r\n private toEditInit = false;\r\n\r\n private state: ITransferState = {\r\n internalAccounts: new BehaviorSubject>([]),\r\n toAccount: new BehaviorSubject({}),\r\n toAccounts: new BehaviorSubject>([]),\r\n fromAccount: new BehaviorSubject({}),\r\n finalState: new BehaviorSubject({\r\n transferType: TRANSFER_TYPE.default,\r\n data: null\r\n }),\r\n internationalTransfer: new BehaviorSubject(false),\r\n domesticBeneficiaryBank: new BehaviorSubject({})\r\n };\r\n\r\n private previousState: IFinalState = {\r\n transferType: TRANSFER_TYPE.default,\r\n data: null\r\n };\r\n\r\n constructor(private internalAccountsService: InternalAccountsService) {}\r\n\r\n resetFormMode() {\r\n this.state.finalState = new BehaviorSubject({\r\n transferType: TRANSFER_TYPE.default,\r\n data: null\r\n });\r\n this.previousState = {\r\n transferType: TRANSFER_TYPE.default,\r\n data: null\r\n };\r\n\r\n this.state[IState.editTransfer] = new BehaviorSubject({});\r\n this.state[IState.prefilledData] = new BehaviorSubject({});\r\n\r\n if (this.fromAccount && this.toAccount) {\r\n this.fromAccount.unsubscribe();\r\n this.fromAccount = undefined;\r\n this.toAccount.unsubscribe();\r\n this.toAccount = undefined;\r\n }\r\n }\r\n\r\n instantiateProp(prop: IState): void {\r\n const DEFAULT_PROP_MAP = {\r\n INTERNAL_ACCOUNTS: [],\r\n TO_ACCOUNTS: []\r\n };\r\n\r\n this.state[prop] = new BehaviorSubject(DEFAULT_PROP_MAP[prop] || {});\r\n }\r\n\r\n setProp(prop: IState, state: any, stopSetState?: boolean): void {\r\n if (!this.state[prop]) {\r\n this.instantiateProp(prop);\r\n }\r\n\r\n this.state[prop].next(state);\r\n if (!stopSetState) {\r\n this.setState();\r\n }\r\n }\r\n\r\n getProp(prop: IState): Observable {\r\n if (!this.state[prop]) {\r\n this.instantiateProp(prop);\r\n }\r\n\r\n return this.state[prop].asObservable();\r\n }\r\n\r\n getPropValue(prop: IState): BehaviorSubject {\r\n if (!this.state[prop]) {\r\n this.instantiateProp(prop);\r\n }\r\n\r\n return this.state[prop];\r\n }\r\n\r\n setState() {\r\n let computedState: IFinalState;\r\n\r\n switch (true) {\r\n case this.isPrefilledForm():\r\n computedState = this.getPropValue(IState.editTransfer).value;\r\n break;\r\n\r\n case this.isInternationalTransfer():\r\n computedState = {\r\n transferType: TRANSFER_TYPE.internationalTransfer,\r\n data: null\r\n };\r\n break;\r\n\r\n case this.isInternalTransferOnly():\r\n computedState = {\r\n transferType: TRANSFER_TYPE.internalTransfer,\r\n data: {\r\n internalOnly: true\r\n }\r\n };\r\n break;\r\n\r\n case this.isBillPayeeTransfer():\r\n computedState = {\r\n transferType: TRANSFER_TYPE.billPayee,\r\n data: null\r\n };\r\n break;\r\n\r\n case this.isDomesticTransfer():\r\n computedState = {\r\n transferType: TRANSFER_TYPE.domesticTransfer,\r\n data: null\r\n };\r\n break;\r\n\r\n case this.isInternalTransfer():\r\n computedState = {\r\n transferType: TRANSFER_TYPE.internalTransfer,\r\n data: {\r\n internalOnly: false\r\n }\r\n };\r\n break;\r\n\r\n default:\r\n computedState = {\r\n transferType: TRANSFER_TYPE.default,\r\n data: null\r\n };\r\n break;\r\n }\r\n\r\n if (\r\n this.previousState.transferType !== computedState.transferType ||\r\n JSON.stringify(this.previousState.data) !==\r\n JSON.stringify(computedState.data)\r\n ) {\r\n this.previousState = computedState;\r\n this.state.finalState.next(computedState);\r\n }\r\n\r\n return this.state.finalState;\r\n }\r\n\r\n getState(): Observable {\r\n return this.state.finalState\r\n .asObservable()\r\n .pipe(debounceTime(250), distinctUntilChanged());\r\n }\r\n\r\n forceState(state: IFinalState): void {\r\n this.previousState = state;\r\n this.state.finalState.next(state);\r\n }\r\n\r\n isInternalTransferOnly(): boolean {\r\n const fromAccount = this.getPropValue(IState.fromAccount).value as IAccount;\r\n\r\n return (\r\n (fromAccount.transferOptions &&\r\n this.internalAccountsService.isOnly(\r\n fromAccount.transferOptions,\r\n 'internalTransferAllowed'\r\n )) ||\r\n (fromAccount.accountCreateTransfersPermissions &&\r\n fromAccount.accountCreateTransfersPermissions.internalTransferEnabled &&\r\n !fromAccount.accountCreateTransfersPermissions\r\n .domesticTransferEnabled &&\r\n !fromAccount.accountCreateTransfersPermissions.billTransferEnabled)\r\n );\r\n }\r\n\r\n isInternalTransfer(): boolean {\r\n const fromAccount = this.getPropValue(IState.fromAccount).value as IAccount;\r\n const internalAccounts = this.getPropValue(IState.internalAccounts)\r\n .value as Array,\r\n toAccounts = this.getPropValue(IState.toAccounts).value as Array<\r\n IAccount\r\n >,\r\n toAccount = this.getPropValue(IState.toAccount).value as IBaseAccount;\r\n\r\n return (\r\n (ToAccountsListItemType[toAccount.listItemType] &&\r\n ToAccountsListItemType[toAccount.listItemType] ===\r\n ToAccountsListItemType.OwnAccount) ||\r\n internalAccounts.some(account => {\r\n return (\r\n account.accountNumber === toAccount.accountNumber &&\r\n account.accountNumber !== fromAccount.accountNumber\r\n );\r\n }) ||\r\n (toAccounts.length &&\r\n toAccounts.some(account => {\r\n return (\r\n account.accountNumber === toAccount.accountNumber &&\r\n account.accountNumber !== fromAccount.accountNumber\r\n );\r\n }))\r\n );\r\n }\r\n\r\n isDomesticTransfer(): boolean {\r\n const toAccount = this.getPropValue(IState.toAccount).value as IBaseAccount,\r\n internalAccounts = this.getPropValue(IState.internalAccounts)\r\n .value as Array,\r\n toAccounts = this.getPropValue(IState.toAccounts).value as Array<\r\n IAccount\r\n >,\r\n domesticBeneficiaryBank = this.getPropValue(\r\n IState.domesticBeneficiaryBank\r\n ).value;\r\n return (\r\n (ToAccountsListItemType[toAccount.listItemType] &&\r\n ToAccountsListItemType[toAccount.listItemType] !==\r\n ToAccountsListItemType.OwnAccount) ||\r\n (!this.isInternalTransferOnly() &&\r\n internalAccounts.every(account => {\r\n return account.accountNumber !== toAccount.accountNumber;\r\n }) &&\r\n toAccounts.every(account => {\r\n return account.accountNumber !== toAccount.accountNumber;\r\n })) ||\r\n (Object.entries(domesticBeneficiaryBank).length &&\r\n ToAccountsListItemType[toAccount.listItemType] &&\r\n ToAccountsListItemType[toAccount.listItemType] !==\r\n ToAccountsListItemType.OwnAccount &&\r\n (internalAccounts.some(account => {\r\n return account.accountNumber === toAccount.accountNumber;\r\n }) ||\r\n toAccounts.some(account => {\r\n return account.accountNumber === toAccount.accountNumber;\r\n })))\r\n );\r\n }\r\n\r\n isBillPayeeTransfer(): boolean {\r\n const toAccount = this.getPropValue(IState.toAccount).value as IBaseAccount;\r\n\r\n return (\r\n ToAccountsListItemType[toAccount.listItemType] &&\r\n ToAccountsListItemType[toAccount.listItemType] ===\r\n ToAccountsListItemType.BillPayee\r\n );\r\n }\r\n\r\n private isInternationalTransfer(): boolean {\r\n return this.getPropValue(IState.internationalTransfer).value;\r\n }\r\n\r\n private isPrefilledForm(): boolean {\r\n let prefilledForm = false;\r\n\r\n const editTransferState = this.getPropValue(IState.editTransfer).value;\r\n const emptyState = Object.keys(editTransferState).length === 0;\r\n\r\n if (\r\n editTransferState &&\r\n (emptyState ||\r\n (editTransferState.data && editTransferState.data.prefilledForm))\r\n ) {\r\n prefilledForm = true;\r\n\r\n if (!this.fromAccount && !this.toAccount && !emptyState) {\r\n const prefilledData = this.getPropValue(IState.prefilledData).value;\r\n if (Object.keys(prefilledData).length === 0) {\r\n return;\r\n }\r\n\r\n let toAccount;\r\n\r\n try {\r\n toAccount =\r\n prefilledData.toAccount.accountNumber || prefilledData.toAccount;\r\n } catch (error) {\r\n console.error(error);\r\n return;\r\n }\r\n\r\n this.fromAccount = this.getProp(IState.fromAccount).subscribe(value => {\r\n if (Object.keys(value).length === 0) {\r\n return;\r\n }\r\n\r\n if (!this.fromEditInit) {\r\n this.fromEditInit =\r\n value.accountNumber === prefilledData.fromAccount;\r\n }\r\n\r\n if (\r\n this.fromEditInit &&\r\n value.accountNumber !== prefilledData.fromAccount\r\n ) {\r\n this.stopPrefillMode();\r\n }\r\n });\r\n\r\n this.toAccount = this.getProp(IState.toAccount).subscribe(value => {\r\n if (!value.accountNumber) {\r\n return;\r\n }\r\n\r\n if (!this.toEditInit) {\r\n this.toEditInit = value.accountNumber === toAccount;\r\n }\r\n\r\n if (this.toEditInit && value.accountNumber !== toAccount) {\r\n this.stopPrefillMode();\r\n }\r\n });\r\n }\r\n }\r\n\r\n return prefilledForm;\r\n }\r\n\r\n stopPrefillMode() {\r\n if (\r\n this.getPropValue(IState.editTransfer).value.transferType ===\r\n TRANSFER_TYPE.internationalTransfer\r\n ) {\r\n this.setProp(IState.internationalTransfer, true, true);\r\n }\r\n this.setProp(IState.editTransfer, { data: { prefilledForm: false } });\r\n this.setProp(IState.prefilledData, null, true);\r\n if (this.fromAccount) {\r\n this.fromAccount.unsubscribe();\r\n }\r\n\r\n if (this.toAccount) {\r\n this.toAccount.unsubscribe();\r\n }\r\n }\r\n}\r\n\r\nexport { IState, IFinalState };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n ApiClientService,\r\n ApiResponse\r\n} from '../../shared/services/api-client.service';\r\nimport { AB_API_TRANSFERS_TO_ACCOUNTS } from '../../shared/constants';\r\nimport { Observable } from 'rxjs';\r\n\r\nenum ToAccountsListItemType {\r\n OwnAccount,\r\n BeneficiaryAddressDetails,\r\n BillPayee\r\n}\r\n\r\ninterface IBaseAccount {\r\n name: string;\r\n alias: string;\r\n description: string;\r\n accountNumber: string;\r\n listItemType: string;\r\n}\r\n\r\ninterface IBankAccountListItem extends IBaseAccount {\r\n text: string;\r\n value: string;\r\n bankAccountType: string;\r\n portfolioName: string;\r\n selected: boolean;\r\n type: string;\r\n}\r\n\r\ninterface IBasicAddress extends IBaseAccount {\r\n id: string;\r\n pn: string;\r\n accountId: string;\r\n iban: string;\r\n bicCode: string;\r\n aba: string;\r\n bank: string;\r\n intermediaryAba: string;\r\n intermediaryBic: string;\r\n intermediaryBank: string;\r\n intermediaryBankAccount: string;\r\n domesticIndicator: string;\r\n country: string;\r\n city: string;\r\n streetName: string;\r\n number: string;\r\n}\r\n\r\ninterface IBillPayees extends IBaseAccount {\r\n id: string;\r\n accountId: string;\r\n iban: string;\r\n bicCode: string;\r\n bank: string;\r\n domesticIndicator: string;\r\n attributes?: any;\r\n}\r\n\r\ninterface ToAccountsListForTransfersResponse extends ApiResponse {\r\n ownBankAccounts?: IBankAccountListItem[];\r\n beneficiariesAddresses?: IBasicAddress[];\r\n billPayeesCompanies?: IBillPayees[];\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToAccountsService extends ApiClientService {\r\n constructor(http: HttpClient) {\r\n super(http, AB_API_TRANSFERS_TO_ACCOUNTS);\r\n }\r\n\r\n getToAccountsList(): Observable {\r\n return this.get();\r\n }\r\n}\r\n\r\nexport {\r\n IBillPayees,\r\n IBaseAccount,\r\n IBasicAddress,\r\n IBankAccountListItem,\r\n ToAccountsListItemType,\r\n ToAccountsListForTransfersResponse\r\n};\r\n","// This file is generated do not modify manually\r\nexport const transfers = [\r\n { path: 'Submitted', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'UpdateStatusButton', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'Rejected', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'Basket', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'Transfer', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'DailyLimit', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'StandingTransfers', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkHeader', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkDomesticForm', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkInternationalForm', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkViewStatus', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkViewStatusForm', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkHeaderDetails', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkTransfersDetails', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkStatusTable', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'BulkUploadResponse', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'CloseAccount', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n { path: 'PrintTransfers', loadChildren: () =>\r\n import('./transfers.module').then(m => m.TransfersModule) },\r\n];\r\n","// This file is generated do not modify manually\r\nexport const userAccessManagement = [\r\n { path: 'AccountAccess', loadChildren: () =>\r\n import('./user-access-management.module').then(m => m.UserAccessManagementModule) },\r\n { path: 'PermissionMatrix', loadChildren: () =>\r\n import('./user-access-management.module').then(m => m.UserAccessManagementModule) },\r\n { path: 'UserDetails', loadChildren: () =>\r\n import('./user-access-management.module').then(m => m.UserAccessManagementModule) },\r\n { path: 'UsersOverview', loadChildren: () =>\r\n import('./user-access-management.module').then(m => m.UserAccessManagementModule) },\r\n];\r\n","import { Directive, Input, OnChanges, forwardRef } from '@angular/core';\r\nimport {\r\n NG_VALIDATORS,\r\n AbstractControl,\r\n ValidationErrors,\r\n Validators,\r\n ValidatorFn\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[abMinLengthTrim][ngModel]',\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => MinLengthTrimDirective),\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MinLengthTrimDirective implements Validators, OnChanges {\r\n @Input() abMinLengthTrim: number;\r\n\r\n private valFun: ValidatorFn;\r\n\r\n constructor() {}\r\n\r\n ngOnChanges() {\r\n this.valFun = Validators.minLength(this.abMinLengthTrim);\r\n }\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n return this.valFun(\r\n control.value\r\n ? ({ value: control.value.trim() } as AbstractControl)\r\n : control\r\n );\r\n }\r\n}\r\n","import { AbstractControl } from '@angular/forms';\r\n\r\nexport function RangeValidator(min: number, max: number, field?: string) {\r\n return (c: AbstractControl) => {\r\n const controlValue = parseFloat(field ? c.value[field] : c.value);\r\n\r\n if (controlValue < min || controlValue > max) {\r\n return {\r\n rangeMin: controlValue < min,\r\n rangeMax: controlValue > max,\r\n range: true\r\n };\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MinLengthTrimDirective } from './directives/min-length-trim.directive';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n declarations: [MinLengthTrimDirective],\r\n imports: [FormsModule, ReactiveFormsModule],\r\n exports: [MinLengthTrimDirective, FormsModule, ReactiveFormsModule]\r\n})\r\nexport class ValidatorsModule {}\r\n","/* eslint-disable */\n// Do not edit this file, it is auto-generated at build time!\n// See scripts/bootstrap.ts to modify the generation of this file.\nconst config: { [key: string]: string } = {};\nconfig.production = process.env.PRODUCTION || \"false\",\nconfig.sitecoreApiHost = process.env.SITECORE_API_HOST || \"https://sc103.arubabank.local\",\nconfig.sitecoreApiKey = process.env.SITECORE_API_KEY || \"{2A4DCA72-3283-4714-B8C9-D175B84CF9F4}\",\nconfig.jssAppName = process.env.JSS_APP_NAME || \"personal\",\nconfig.sitecoreLayoutServiceConfig = process.env.SITECORE_LAYOUT_SERVICE_CONFIG || \"jss\",\nconfig.defaultLanguage = process.env.DEFAULT_LANGUAGE || \"en\",\nconfig.defaultServerRoute = process.env.DEFAULT_SERVER_ROUTE || \"/\",\nconfig.graphQLEndpointPath = process.env.GRAPH_QL_ENDPOINT_PATH || \"/api/personal\",\nconfig.graphQLEndpoint = process.env.GRAPH_QL_ENDPOINT || `${config.sitecoreApiHost}${config.graphQLEndpointPath}`;\nexport const environment = config;","/* eslint-disable */\r\nexport default {\r\n __schema: {\r\n types: [\r\n {\r\n kind: 'INTERFACE',\r\n name: 'ItemField',\r\n possibleTypes: [\r\n {\r\n name: 'RichTextField',\r\n },\r\n {\r\n name: 'NumberField',\r\n },\r\n {\r\n name: 'MultilistField',\r\n },\r\n {\r\n name: 'LookupField',\r\n },\r\n {\r\n name: 'LinkField',\r\n },\r\n {\r\n name: 'TextField',\r\n },\r\n {\r\n name: 'IntegerField',\r\n },\r\n {\r\n name: 'ImageField',\r\n },\r\n {\r\n name: 'DateField',\r\n },\r\n {\r\n name: 'CheckboxField',\r\n },\r\n {\r\n name: 'NameValueListField',\r\n },\r\n ],\r\n },\r\n {\r\n kind: 'INTERFACE',\r\n name: 'Item',\r\n possibleTypes: [\r\n {\r\n name: 'UnknownItem',\r\n },\r\n {\r\n name: 'StyleguideComponentParamsRenderingParameters',\r\n },\r\n {\r\n name: 'C__StandardTemplate',\r\n },\r\n {\r\n name: 'C__Route',\r\n },\r\n {\r\n name: 'RenderEngineType',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideTracking',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideSitecoreContext',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideSection',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideRouteFields',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideMultilingual',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideLayoutTabsTab',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideLayoutTabs',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideLayoutReuse',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideItemLinkItemTemplate',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageText',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageRichText',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageNumber',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageLink',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageItemLink',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageImage',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageFile',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageDate',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageCustom',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageContentList',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideFieldUsageCheckbox',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideExplanatoryComponent',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideContentListItemTemplate',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideComponentParams',\r\n },\r\n {\r\n name:\r\n '<%- helper.getAppPrefix(appPrefix, appName, false) %>StyleguideAngularLazyLoading',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>GraphQLIntegratedDemo',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>GraphQLConnectedDemo',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>ExampleCustomRouteType',\r\n },\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>ContentBlock',\r\n },\r\n {\r\n name: 'C__<%- helper.getAppPrefix(appPrefix, appName, false) %>AppRoute',\r\n },\r\n {\r\n name: 'JsonRendering',\r\n },\r\n {\r\n name: 'JavaScriptRendering',\r\n },\r\n {\r\n name: 'JSSLayout',\r\n },\r\n {\r\n name: 'App',\r\n },\r\n ],\r\n },\r\n {\r\n kind: 'INTERFACE',\r\n name: 'RenderingOptions',\r\n possibleTypes: [\r\n {\r\n name: 'JsonRendering',\r\n },\r\n {\r\n name: 'JavaScriptRendering',\r\n },\r\n ],\r\n },\r\n {\r\n kind: 'INTERFACE',\r\n name: 'Layout',\r\n possibleTypes: [\r\n {\r\n name: 'JSSLayout',\r\n },\r\n ],\r\n },\r\n {\r\n kind: 'INTERFACE',\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>AppRoute',\r\n possibleTypes: [\r\n {\r\n name: '<%- helper.getAppPrefix(appPrefix, appName, false) %>ExampleCustomRouteType',\r\n },\r\n {\r\n name: 'C__<%- helper.getAppPrefix(appPrefix, appName, false) %>AppRoute',\r\n },\r\n ],\r\n },\r\n {\r\n kind: 'INTERFACE',\r\n name: 'Caching',\r\n possibleTypes: [\r\n {\r\n name: 'JsonRendering',\r\n },\r\n {\r\n name: 'JavaScriptRendering',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\nimport { handleEditorAnchors } from '@sitecore-jss/sitecore-jss-angular';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\n// Waiting for DOMContentLoaded is a temporary workaround to get TransferState working in the client\r\n// See https://github.com/angular/angular/issues/20484 for further info.\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n platformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n\r\n // allows Experience Editor anchor tag's onclick events to properly propagate\r\n handleEditorAnchors();\r\n });\r\n","var map = {\n\t\"./af\": 62275,\n\t\"./af.js\": 62275,\n\t\"./ar\": 90857,\n\t\"./ar-dz\": 11218,\n\t\"./ar-dz.js\": 11218,\n\t\"./ar-kw\": 14754,\n\t\"./ar-kw.js\": 14754,\n\t\"./ar-ly\": 66680,\n\t\"./ar-ly.js\": 66680,\n\t\"./ar-ma\": 92178,\n\t\"./ar-ma.js\": 92178,\n\t\"./ar-ps\": 42060,\n\t\"./ar-ps.js\": 42060,\n\t\"./ar-sa\": 56522,\n\t\"./ar-sa.js\": 56522,\n\t\"./ar-tn\": 95682,\n\t\"./ar-tn.js\": 95682,\n\t\"./ar.js\": 90857,\n\t\"./az\": 70164,\n\t\"./az.js\": 70164,\n\t\"./be\": 79774,\n\t\"./be.js\": 79774,\n\t\"./bg\": 60947,\n\t\"./bg.js\": 60947,\n\t\"./bm\": 21832,\n\t\"./bm.js\": 21832,\n\t\"./bn\": 89650,\n\t\"./bn-bd\": 74477,\n\t\"./bn-bd.js\": 74477,\n\t\"./bn.js\": 89650,\n\t\"./bo\": 66005,\n\t\"./bo.js\": 66005,\n\t\"./br\": 98492,\n\t\"./br.js\": 98492,\n\t\"./bs\": 70534,\n\t\"./bs.js\": 70534,\n\t\"./ca\": 52061,\n\t\"./ca.js\": 52061,\n\t\"./cs\": 84737,\n\t\"./cs.js\": 84737,\n\t\"./cv\": 61167,\n\t\"./cv.js\": 61167,\n\t\"./cy\": 77996,\n\t\"./cy.js\": 77996,\n\t\"./da\": 9528,\n\t\"./da.js\": 9528,\n\t\"./de\": 14540,\n\t\"./de-at\": 49430,\n\t\"./de-at.js\": 49430,\n\t\"./de-ch\": 67978,\n\t\"./de-ch.js\": 67978,\n\t\"./de.js\": 14540,\n\t\"./dv\": 83426,\n\t\"./dv.js\": 83426,\n\t\"./el\": 6616,\n\t\"./el.js\": 6616,\n\t\"./en-au\": 63816,\n\t\"./en-au.js\": 63816,\n\t\"./en-ca\": 32162,\n\t\"./en-ca.js\": 32162,\n\t\"./en-gb\": 83305,\n\t\"./en-gb.js\": 83305,\n\t\"./en-ie\": 61954,\n\t\"./en-ie.js\": 61954,\n\t\"./en-il\": 50844,\n\t\"./en-il.js\": 50844,\n\t\"./en-in\": 59923,\n\t\"./en-in.js\": 59923,\n\t\"./en-nz\": 13540,\n\t\"./en-nz.js\": 13540,\n\t\"./en-sg\": 16505,\n\t\"./en-sg.js\": 16505,\n\t\"./eo\": 41907,\n\t\"./eo.js\": 41907,\n\t\"./es\": 86640,\n\t\"./es-do\": 41246,\n\t\"./es-do.js\": 41246,\n\t\"./es-mx\": 56131,\n\t\"./es-mx.js\": 56131,\n\t\"./es-us\": 36430,\n\t\"./es-us.js\": 36430,\n\t\"./es.js\": 86640,\n\t\"./et\": 62551,\n\t\"./et.js\": 62551,\n\t\"./eu\": 32711,\n\t\"./eu.js\": 32711,\n\t\"./fa\": 54572,\n\t\"./fa.js\": 54572,\n\t\"./fi\": 33390,\n\t\"./fi.js\": 33390,\n\t\"./fil\": 87860,\n\t\"./fil.js\": 87860,\n\t\"./fo\": 48216,\n\t\"./fo.js\": 48216,\n\t\"./fr\": 99291,\n\t\"./fr-ca\": 98527,\n\t\"./fr-ca.js\": 98527,\n\t\"./fr-ch\": 58407,\n\t\"./fr-ch.js\": 58407,\n\t\"./fr.js\": 99291,\n\t\"./fy\": 47054,\n\t\"./fy.js\": 47054,\n\t\"./ga\": 49540,\n\t\"./ga.js\": 49540,\n\t\"./gd\": 73917,\n\t\"./gd.js\": 73917,\n\t\"./gl\": 51486,\n\t\"./gl.js\": 51486,\n\t\"./gom-deva\": 56245,\n\t\"./gom-deva.js\": 56245,\n\t\"./gom-latn\": 48868,\n\t\"./gom-latn.js\": 48868,\n\t\"./gu\": 59652,\n\t\"./gu.js\": 59652,\n\t\"./he\": 89019,\n\t\"./he.js\": 89019,\n\t\"./hi\": 42040,\n\t\"./hi.js\": 42040,\n\t\"./hr\": 63402,\n\t\"./hr.js\": 63402,\n\t\"./hu\": 79322,\n\t\"./hu.js\": 79322,\n\t\"./hy-am\": 27609,\n\t\"./hy-am.js\": 27609,\n\t\"./id\": 57942,\n\t\"./id.js\": 57942,\n\t\"./is\": 98275,\n\t\"./is.js\": 98275,\n\t\"./it\": 73053,\n\t\"./it-ch\": 4378,\n\t\"./it-ch.js\": 4378,\n\t\"./it.js\": 73053,\n\t\"./ja\": 46176,\n\t\"./ja.js\": 46176,\n\t\"./jv\": 679,\n\t\"./jv.js\": 679,\n\t\"./ka\": 92726,\n\t\"./ka.js\": 92726,\n\t\"./kk\": 72953,\n\t\"./kk.js\": 72953,\n\t\"./km\": 86957,\n\t\"./km.js\": 86957,\n\t\"./kn\": 59181,\n\t\"./kn.js\": 59181,\n\t\"./ko\": 47148,\n\t\"./ko.js\": 47148,\n\t\"./ku\": 27752,\n\t\"./ku-kmr\": 63898,\n\t\"./ku-kmr.js\": 63898,\n\t\"./ku.js\": 27752,\n\t\"./ky\": 65675,\n\t\"./ky.js\": 65675,\n\t\"./lb\": 41263,\n\t\"./lb.js\": 41263,\n\t\"./lo\": 65746,\n\t\"./lo.js\": 65746,\n\t\"./lt\": 11143,\n\t\"./lt.js\": 11143,\n\t\"./lv\": 38753,\n\t\"./lv.js\": 38753,\n\t\"./me\": 44054,\n\t\"./me.js\": 44054,\n\t\"./mi\": 31573,\n\t\"./mi.js\": 31573,\n\t\"./mk\": 30202,\n\t\"./mk.js\": 30202,\n\t\"./ml\": 68523,\n\t\"./ml.js\": 68523,\n\t\"./mn\": 79794,\n\t\"./mn.js\": 79794,\n\t\"./mr\": 56681,\n\t\"./mr.js\": 56681,\n\t\"./ms\": 56975,\n\t\"./ms-my\": 39859,\n\t\"./ms-my.js\": 39859,\n\t\"./ms.js\": 56975,\n\t\"./mt\": 3691,\n\t\"./mt.js\": 3691,\n\t\"./my\": 5152,\n\t\"./my.js\": 5152,\n\t\"./nb\": 7607,\n\t\"./nb.js\": 7607,\n\t\"./ne\": 21526,\n\t\"./ne.js\": 21526,\n\t\"./nl\": 86368,\n\t\"./nl-be\": 40076,\n\t\"./nl-be.js\": 40076,\n\t\"./nl.js\": 86368,\n\t\"./nn\": 68420,\n\t\"./nn.js\": 68420,\n\t\"./oc-lnc\": 51906,\n\t\"./oc-lnc.js\": 51906,\n\t\"./pa-in\": 94504,\n\t\"./pa-in.js\": 94504,\n\t\"./pl\": 54721,\n\t\"./pl.js\": 54721,\n\t\"./pt\": 74645,\n\t\"./pt-br\": 54548,\n\t\"./pt-br.js\": 54548,\n\t\"./pt.js\": 74645,\n\t\"./ro\": 71977,\n\t\"./ro.js\": 71977,\n\t\"./ru\": 26042,\n\t\"./ru.js\": 26042,\n\t\"./sd\": 78849,\n\t\"./sd.js\": 78849,\n\t\"./se\": 27739,\n\t\"./se.js\": 27739,\n\t\"./si\": 50084,\n\t\"./si.js\": 50084,\n\t\"./sk\": 92449,\n\t\"./sk.js\": 92449,\n\t\"./sl\": 23086,\n\t\"./sl.js\": 23086,\n\t\"./sq\": 33139,\n\t\"./sq.js\": 33139,\n\t\"./sr\": 30607,\n\t\"./sr-cyrl\": 30063,\n\t\"./sr-cyrl.js\": 30063,\n\t\"./sr.js\": 30607,\n\t\"./ss\": 40131,\n\t\"./ss.js\": 40131,\n\t\"./sv\": 21665,\n\t\"./sv.js\": 21665,\n\t\"./sw\": 5642,\n\t\"./sw.js\": 5642,\n\t\"./ta\": 33622,\n\t\"./ta.js\": 33622,\n\t\"./te\": 74825,\n\t\"./te.js\": 74825,\n\t\"./tet\": 48336,\n\t\"./tet.js\": 48336,\n\t\"./tg\": 39238,\n\t\"./tg.js\": 39238,\n\t\"./th\": 99463,\n\t\"./th.js\": 99463,\n\t\"./tk\": 39986,\n\t\"./tk.js\": 39986,\n\t\"./tl-ph\": 29672,\n\t\"./tl-ph.js\": 29672,\n\t\"./tlh\": 40043,\n\t\"./tlh.js\": 40043,\n\t\"./tr\": 51212,\n\t\"./tr.js\": 51212,\n\t\"./tzl\": 50110,\n\t\"./tzl.js\": 50110,\n\t\"./tzm\": 80482,\n\t\"./tzm-latn\": 38309,\n\t\"./tzm-latn.js\": 38309,\n\t\"./tzm.js\": 80482,\n\t\"./ug-cn\": 42495,\n\t\"./ug-cn.js\": 42495,\n\t\"./uk\": 54157,\n\t\"./uk.js\": 54157,\n\t\"./ur\": 80984,\n\t\"./ur.js\": 80984,\n\t\"./uz\": 64141,\n\t\"./uz-latn\": 43662,\n\t\"./uz-latn.js\": 43662,\n\t\"./uz.js\": 64141,\n\t\"./vi\": 12607,\n\t\"./vi.js\": 12607,\n\t\"./x-pseudo\": 66460,\n\t\"./x-pseudo.js\": 66460,\n\t\"./yo\": 92948,\n\t\"./yo.js\": 92948,\n\t\"./zh-cn\": 62658,\n\t\"./zh-cn.js\": 62658,\n\t\"./zh-hk\": 39352,\n\t\"./zh-hk.js\": 39352,\n\t\"./zh-mo\": 38274,\n\t\"./zh-mo.js\": 38274,\n\t\"./zh-tw\": 98451,\n\t\"./zh-tw.js\": 98451\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;"],"names":["JssState","language","serverRoute","routeFetchError","sitecore","viewBag","addressbook","path","loadChildren","then","m","AddressbookModule","ElementRef","TranslateService","JssContextService","environment","env","GoogleAnalyticsService","AppComponent","_elementRef","contextSubscription","constructor","translate","jssContextService","googleAnalyticsService","setDefaultLang","defaultLanguage","use","state","subscribe","jssState","context","googleAnalyticsTrackingId","initAnalytics","ngOnInit","nativeElement","removeAttribute","ngOnDestroy","unsubscribe","selectors","decls","vars","template","i0","APP_BASE_HREF","HttpClientModule","BrowserModule","BrowserTransferStateModule","BrowserAnimationsModule","TranslateModule","JssModule","CookieService","CreditCardsComponents","CreditCardsModule","DashboardComponents","DashboardModule","DialogsComponents","DialogsModule","JssDataFetcherService","GraphQLModule","JssMetaService","JssLayoutService","LayoutComponents","LayoutModule","LoginComponents","LoginModule","SentooComponents","SentooModule","miscellaneous","orcoAddressbook","orcoLayout","orcoMiscellaneous","orcoPersonalArchive","orcoTransfers","overdraft","personalArchive","PublicComponents","PublicModule","ReportingComponents","ReportingModule","RoutingComponents","RoutingModule","SessionComponents","SessionModule","SharedComponents","SharedModule","transactions","transfers","userAccessManagement","MaintenanceModule","MaintenanceComponents","ImportedModules","JssComponentsLazyLoading","AppModule","bootstrap","provide","useValue","imports","withServerTransition","appId","forRoot","withComponents","declarations","ActivatedRoute","Router","ICreditCardStatus","CreditCardsService","CreditCardListComponent","route","router","creditCardsService","rendering","cards","selectedCard","placeholder","cardId","CreditCardStatus","snapshot","queryParamMap","get","fields","value","getCreditCards","response","handleResponse","length","changeAccount","filter","card","id","stopRedirect","navigate","relativeTo","queryParams","queryParamsHandling","inputs","consts","map","debounceTime","CreditCardTransactionsService","CreditCardTransactionOverviewComponent","creditCardTransactionsService","subscription","isLoading","hasMore","pageNumber","pipe","params","getTransactions","getTransaction","pageSize","onScroll","GetItemListFieldsService","CreditCardsLimitOverviewComponent","getItemListFieldsService","tableColumns","items","i","name","getItems","setOdd","DialogStateService","FullPortfolioViewService","CreditCardsOverviewComponent","dialogStateService","fullPortfolioViewService","creditCardStatusMap","isPortfolioCif7","subscriptions","ACTIVE","statuses","label","BLOCKED","UNLINKED","getCards","forEach","s","push","bankAccounts","changeStatus","status","openDialog","suffix","confirm","unlinkCreditCard","CommonModule","MatLegacyTooltipModule","MatLegacyMenuModule","RouterModule","CreditCardNamePipe","type","transform","substr","cardType","pure","HttpClient","ApiClientService","AB_API_GET_CREDITCARD_TRANSACTIONS","http","factory","providedIn","AB_API_GET_CREDITCARDS","delete","PortfolioService","PortfolioType","AccountManagerInformationService","AccountManagerInformationComponent","portfolioService","accountManagerInformationService","isPortfolioCorporate","undefined","accountManagerName","accountManagerPhone","accountManagerEmail","getPortfolioType","getFullPortfolioView","getSelectedPortfolio","portfolios","portfolioType","Corporate","getAccountManagerInfo","getAccountManagerInformation","data","phone","email","QueryList","AccountOverviewService","MenuTriggerService","first","AccountDetailsService","InitialViewService","MatLegacyMenuTrigger","AccountsOverviewComponent","accountOverviewService","menuTriggerService","accountDetailsService","initialViewService","menuTriggers","portfolio","isRetail","portfolioChanged","documentClick","event","documentEvent","hasChanged","getAccountOverview","setPortfolioType","ngAfterViewInit","afterViewInit","unsubscribeFromAction","Retail","getAccounts","accountsOverview","fromLogin","getDetails","accounts","setAccountBalance","products","sort","second","accountActions","product","currentAccount","accountId","visible","accountName","bookBalance","availableBalance","JSON","stringify","result","openUrl","url","urlSegments","split","uri","mode","fromAccount","viewQuery","ctx","TemplateRef","MatLegacyDialog","DialogState","BankAccountSettingsService","ConfigurationSettingsContextService","FormFieldsGeneratorService","NgForm","NavigationStart","BankAccountSettingsComponent","dialog","bankAccountSettingsService","formFieldsGeneratorService","configurationSettingsContextService","bankAccountSettings","bankAccountSettingsForm","dialogRef","editedProducts","formFields","allowedCharactersRegex","RegExp","dialogId","dialogStateSubscription","routerSubscription","validationAlllowedCharacters","getConfigurationSettingsValidationAttributeValue","_id","events","close","getDialogState","rendaringName","dialogState","Open","open","panelClass","disableClose","parse","afterClosed","generateFormFields","addToEdit","some","p","accountNumber","submit","console","log","saveBankAccountsSettings","callIsSuccess","closeDialogByReference","AB_API_PORTFOLIO_ACCOUNT_MANAGER","AB_API_ACCOUNTSOVERVIEW_ENDPOINT","Observable","storedDate","saveOnce","create","observer","next","error","AB_API_USER_BANKACCOUNTS_SETTINGS","postWithButtonLoader","MAT_LEGACY_DIALOG_DATA","MatLegacyDialogRef","TRANSFER_TYPE","AddressBookPopupComponent","securityAddressBook","hideCompanies","transferOptions","billTransferAllowed","transferType","internationalTransfer","hideOwnAccounts","internalTransferAllowed","hideContacts","domesticTransferAllowed","domesticPermissionsEnabled","permissions","domesticTransferEnabled","billTransferPermissionsEnabled","billTransferEnabled","internalPermissionsEnabled","internalTransferEnabled","select","item","UntypedFormGroup","UntypedFormControl","Validators","ApprovalPopupComponent","approvalCodeInput","challengeCode","otpType","approvalCodeErrorMessage","approvalForm","approvalCode","required","pattern","onEnterPress","key","valid","blur","approvalData","setTimeout","focus","radioChange","approveRequeset","signingCode","errorDescription","setErrors","approvalCodeError","fromEvent","Subject","startWith","delay","tap","CountryListPopupComponent","countryList","searchInput","selectedCountry","search","filteredArray","isEmpty","_searchSubject","searchObservable","country","clearValue","countryName","toLowerCase","indexOf","toLocaleLowerCase","asObservable","DefaultPortfolioService","DefaultPortfolioSelectorComponent","defaultPortfolioService","defaultPortfolioSelector","defaultPortfolioSelectorForm","selectDefaultAccount","portfolioForm","defaultAccount","defaultPortfolio","accountDetailsSubscription","getState","setDefault","selectedPortfolio","isDefault","getDefaultAccount","accountOptions","account","portfolioId","defaultSelectedAccount","isDefaultAccount","selectedAccountChange","onClose","clearDefaultPortfolio","updatedPortfolios","portfolioName","portfolioNumber","isDefaultPortfolio","setPortfolio","DetailsConfirmPopupComponent","errorState","payment","errorMessage","dismiss","Dismiss","ErrorHandlingPopupComponent","InfoPopupComponent","redirect","RedirectUrl","MessagesListService","PersonalArchiveMessageComponent","messagesListService","messageDetails","sender","date","body","showMessageDialog","deleteMessage","publishDeteledMessage","printMessage","window","printMessageUrl","href","RadioButtonsPopupComponent","UploadDocumentComponent","PopupComponent","matDialogRef","addDialogId","Close","closeDialog","component","dialogData","details","labels","HasCloseButtonInHeader","closeOnNavigation","dialogCloseValue","backdropClick","styles","selection","MAT_DIALOG_DATA","MatDialogRef","SentooPaymentPopupComponent","PrivateDocumentsListService","privateDocumentsListService","file","allowedIdCardCharactersRegex","maxIdLenght","uploadForm","documentType","files","documentSubType","documentNumber","maxLength","expirationDate","allowedExtensions","previewableExtenstions","maxFileCount","maxFileSize","maxFileNameSize","expirationDateMin","isMaxFileCountReached","isMaxFileNameCountReached","isFilesExtensionsCorrect","isFilesSizesCorrect","initialState","isInTheZone","fileList","filesPreviews","showDocumentSubType","setValue","DocumentType","Value","setFields","setAllowedExtensions","setMaxFileCount","setMaxFileSize","setMaxFileNameSize","setExpirationDateMin","validationDNumberAlllowedCharacters","validationIDNumberLenght","valueChanges","allowedFileExtensions","parseInt","maxFileNameAndExtensionSize","Date","setMonth","getMonth","minIdValidityDuration","enable","disable","openUploadWindow","$event","preventDefault","click","removeFile","index","splice","validateExtension","validateSize","removeFiles","onFilesSelect","createFilesArray","target","generateFilePreviews","onFilesDrop","dataTransfer","filesLenght","filesArray","concat","isPreviewable","reader","FileReader","onload","readAsDataURL","validateFile","validateFilenameSize","ext","lastIndexOf","size","parseFloat","formData","FormData","append","toISOString","uploadDocuments","onDragOver","stopPropagation","onDragLeave","onDrop","VirtualScrollerModule","NavigationEnd","dialogObservables","dialogIDs","checkIfPopupExists","updateDialogState","updateDialogWithError","GoogleAnalyticsModule","GTM","gtm","isInitialized","trackingCode","document","getTime","head","getElementsByTagName","googleTagManagerScript","createElement","async","src","appendChild","googleDataLayer","scriptContent","createTextNode","page","title","pagePath","eventName","eventValue","eventAction","InjectionToken","inject","WINDOW_REFERENCE","getGtm","object","PLATFORM_ID","isPlatformBrowser","getWindow","platformId","TransferState","makeStateKey","shareReplay","catchError","of","observableOf","BehaviorSubject","jssKey","transferState","layoutService","changeLanguage","changeRoute","foundInitialState","hasKey","remove","appLanguage","jssState$","getRouteData","routeData","lsResult","httpClient","fetch","bind","options","withCredentials","post","toPromise","responseData","statusText","catch","Error","HttpHeaders","InMemoryCache","Apollo","ApolloModule","HttpBatchLink","createPersistedQueryLink","isPlatformServer","sha256","JssGraphQLService","introspectionQueryResultData","STATE_KEY","apollo","httpLink","createApolloClient","onServer","cache","onSerialize","extract","onBrowser","restore","sc_apikey","set","sitecoreApiKey","batchHttp","graphQLEndpoint","headers","automaticPersistHttp","possibleTypes","__schema","types","supertype","subtype","link","ssrMode","ssrForceFetchDelay","isBrowser","EMPTY","isEditorActive","resetEditorChromes","sitecoreContext","isEditingOrPreviewingAndSsr","pageState","extractVariableNames","query","variableNames","definitions","def","variableDefinitions","defs","kind","variable","variables","addJssAmbientVariables","renderingContext","observable","mutate","mutation","extra","usedVariables","datasource","dataSource","contextItem","itemId","Meta","Title","titleService","meta","setTitle","setTag","addTag","content","update","FooterWrapperComponent","FooterComponent","HeaderComponent","from","fromPromise","throwError","observableThrow","layoutServiceFactory","layoutServiceInstance","LayoutServiceError","fetchLayoutData","getLayoutServiceError","layoutServiceError","Layout","LogoComponent","NavigationComponent","PageTitleComponent","PortfolioSelectorComponent","PortfolioSettingComponent","exports","BreakpointObserver","ResolveEnd","breakpointObserver","element","toggleMobileMenu","inMobileView","subMenuOpen","breakpointSubscription","contains","selectActiveMenu","observe","matches","showMobileMenu","isOpen","showSubMenu","isAccessEnabled","subItem","Link","AccessEnabled","setActiveMenuRecursive","isActive","mainItem","hostBindings","description","Renderer2","MatLegacyMenu","LoginService","UserService","BasketCheckPaymentsService","timeout","loginService","userService","basketCheckPaymentsService","renderer","matMenuPortfolio","portfolioMenuTrigger","isMenuOpen","username","isLoadingPortfolios","querySelector","closeMenu","getPortfolios","changes","menuTrigger","menuOpened","res","publishSelectedPortfolio","isSelected","setCurrentPortfolio","changePortfolio","updated","HomeLink","logout","showLoader","checkPayments","hideLoader","logoutUser","setStyle","removeStyle","combineLatest","fullPortfolioViewSubscription","tooltipInfo","accountDetails","popupIsOpen","getPortfolio","setAccountOptions","setDefaultPortfolio","tooltip","accountsDetails","Object","values","clearBankAccounts","RestLayoutService","LayoutServiceFactory","apiHost","apiKey","siteName","configurationName","EventEmitter","QrCodeService","StatusService","AB_DASHBOARD_URL","interval","switchMap","IdleService","UserAgentService","LandingComponent","qrCodeService","statusService","idleService","userAgentService","loginWithToken","apiError","isDesktop","loginWith","helpSteps","pageTitle","qrCodeImage","loginRequestId","retryQR","statusSubscription","qrCodeSubscription","stopRefreshToken","isDesktopDevice","getFields","o","getQRCode","getQrCode","qrcodeImageResponse","imageBytes","pollLoginStatus","statusObservable$","getStatus","doRefreshToken","setFromLogin","getInitialView","openApp","continueWithApp","location","replace","toString","outputs","LoginComponent","usernameInput","passwordInput","submitButtonText","userBlockedError","invalidCredentialsError","invalidLoginMessage","loginForm","logincode","loginMethod","toggleButton","displaySentooLoginScreen","QRloginParam","allowQRLogin","getMaintenanceMode","loginWithApp","submitAction","login","changeToken","tokenValue","reset","errorCode","loginErrorMessage","Subscription","TokenFormComponent","helpMethod","selectActiveTab","method","ReactiveFormsModule","AB_API_LOGIN","tokentype","loginInputRequest","password","AB_API_QRCODE","AB_API_QRCODE_STATUS","MaintenanceComponent","addClass","getElementsByClassName","ProviderArray","MiscellaneousModule","OrcoAddressbookModule","OrcoLayoutModule","OrcoMiscellaneousModule","OrcoPersonalArchiveModule","OrcoTransfersModule","OverdraftModule","PersonalArchiveModule","AB_API_PERSONALARCHIVE_MESSAGES_COUNT","ReplaySubject","MessagesType","MessagesCountService","unreadMessagesCount","isLoaded","cleanTimer","getUnreadMessagesCount","messagesType","UnRead","startCleanTimer","getUnreadMessagesCountWithRefresh","cleanUnreadMessagesCount","stopCleanTimer","complete","clearTimeout","AB_API_PERSONALARCHIVE_MESSAGES","messageStatus","messageDeleted","getMessages","maxCount","getMessage","getMessagesList","request","getMessageStatus","publishMessageStatus","message","getDeletedMessage","messageId","AB_API_PERSONALARCHIVE_PRIVATE_DOCUMENTS","getDocuments","moment","RequestLoginToolService","AB_DATE_MOMENT_FORMAT","AB_LOGIN_FORM_URL","AB_LOGIN_NAME_PATTERN","AB_LOGIN_USERNAME_PATTERN","RequestLoginToolComponent","requestLoginToolService","formBottomText","maxDateOfBirth","subtract","minDateOfBirth","noPhone","selectToken","apiLoading","requestLoginToolForm","mobileDeviceType","minLength","dateOfBirth","reason","pickupBranch","mobileDeviceTypeField","nameField","usernameField","dateOfBirthField","reasonField","pickupBranchField","FormBottomText","clearValidators","updateValueAndValidity","setValidators","cancel","formValue","newTokenRequestModel","format","tokenType","send","openSucces","AB_API_REQUEST_LOGIN_TOOL","putWithButtonLoader","DataSubscriptionService","REPORTING_EVENTS","ReportingService","AuditReportSearchComponent","reportingService","dataSubscriptionService","cookieService","toDateMax","fromDateMax","fromDateMin","year","month","selectedReportType","searchForm","showNoFound","noFound","isFileDownloading","initOnScroll","fromDate","toDate","selectedReportFormat","selectFormat","fromDateField","toDateField","toDateMin","isAfter","publishEvent","SCROLLING","getReport","onSubmit","SEARCHING","afterSubmit","stopLoading","publishData","assign","getTitle","SIGN_IN","MONEY_TRANSFER","arr","Label","download","setInterval","check","clearInterval","STOP_LOADING","ReportTableComponent","MoneyTransferTableComponent","columns","displayName","column","features","totalNumberOfRecordsAvailable","dataSubscription","show","getData","SignInLogTableComponent","totalRecordLabel","pop","HttpParams","AB_API_REPORTING_TABLE","AB_API_REPORTING_DOWNLOAD","AB_API_BASE","AB_API_DOMAIN","toDateString","getDownloadUrl","JssRoute","JssRouteBuilderService","buildRouteUrl","defaultServerRoute","parseRouteUrl","isSSR","languageRegex","languageSegment","match","_v","p1","p2","toUpperCase","slice","join","startsWith","RouterStateSnapshot","ActivatedRouteSnapshot","JssRouteResolver","jssService","resolve","_state","LayoutState","LayoutComponent","activatedRoute","errorContextData","NotFound","setMetadata","routeFields","onPlaceholderLoaded","placeholderName","debug","NotFoundComponent","home","goToPrevious","history","back","UrlSegment","ServerErrorComponent","VisitorIdentificationComponent","AuthGuardService","jssRouteMatcher","routeParser","segment","posParams","keys","consumed","routes","matcher","canActivate","runGuardsAndResolvers","onSameUrlNavigation","initialNavigation","emittedVI","jssContext","visitorIdentificationTimestamp","script","ConnectionErrorComponent","resetPayment","PaymentCancelledComponent","returnUrl","closePayment","PaymentExpiredComponent","take","ReferenceCodesService","PaymentDetailsService","AccountsService","CancelService","SentooService","CreateSentooPaymentService","PaymentScreenComponent","createSentooPaymentService","accountsService","paymentDetailsService","sentooService","referenceCodesService","cancelService","setPaymentStatus","setMerchantInfo","setCancelReturnUrl","validatePayment","cancelPaymentPopup","transfer","challengeCodeError","challengeCodeErrorMessage","validatePaymentDialogRef","cancelPaymentDialogRef","showList","selectedAccount","defaultValue","categoryForm","category","subCategory","selectedAccountNumber","selectedReferenceCode","isSubmittingCancelPayment","referenceCodes","showCategory","onClick","closest","getEncryptedData","encryptedData","getPaymentDetails","transferResponse","transferId","emit","getAll","transactionType","selectCategory","onAccountChange","toggleAccountList","openCancelPayment","closeCancelPaymentDialog","cancelSentooPayment","cancelPayment","cancelResponse","confirmPayment","transferProperties","amount","beneficiaryAccount","beneficiaryCity","beneficiaryHouseNumber","beneficiaryInstitutionCode","beneficiaryInstitutionCodeValue","beneficiaryInstitutionName","beneficiaryName","beneficiaryPostalCode","beneficiaryStreet","currency","destinationCountryIsoCode","sentooProcessorId","sentooTransactionId","valueDate","referenceCategoryNumber","sourceAccount","transferObject","getChallengeNumber","challengeNumberResponse","openValidatePayment","subcategory","controls","selectSubCategory","code","AB_SENTOO","SentooTransferComponent","sentooPaymentToken","paymentStatus","merchantInfo","searchParams","URLSearchParams","hasOwnProperty","setEncryptedData","numberOfApprovalsRemaining","sentooTransaction","FormAllFieldsValidationService","ApproveService","ValidatePaymentComponent","approveService","formAllFieldsValidationService","isSubmittingConfirm","confirmPaymentForm","submitPayment","openCancelPaymentPopup","approveTransferRequest","signature","validationAllForms","approveTransfer","approveResponse","takeUntil","takeWhile","AB_SENTOO_TRANSFER","setReturnUrl","authorizationMethod","arubaAppImg","desktopImg","mobileImg","refreshImg","destroy$","requestQRError","getQrCodeImage","getCountry","getSentooTransaction","transaction","qrImage","pollPaymentStatus","timer$","statusResponse","numberOfApprovalsRequired","redirectToPaymentScreen","PaymentCompleteComponent","redirectToMerchant","PaymentInvalidComponent","PaymentPendingComponent","SimpleChanges","SentooComponent","ARUBA_APP_SENTOO_URL","ORCO_APP_SENTOO_URL","openAppTimeout","ngOnChanges","currentValue","checkTransferRouteAccess","openAppSamsungBrowser","URL","userHasAccess","hasAccess","ANALYZE_FOR_ENTRY_COMPONENTS","ROUTES","DYNAMIC_COMPONENT","NgbPaginationModule","ngModule","providers","multi","AB_API_SENTOO_ACCOUNTS","AB_API_SENTOO_APPROVE","AB_API_SENTOO_CANCEL","paymentId","AB_API_SENTOO_CREATE","AB_API_SENTOO_PAYMENT_DETAILS","AB_API_SENTOO_QRCODE","encryptedDataSubject","sentooTransactionSubject","countrySubject","transactionId","extractSentooTransactionAndCountry","extractSentooTransaction","extractCountry","AB_API_SENTOO_STATUS","SessionExpiryPopupComponent","AB_SHOW_SESSION_EXPIRY_POPUP","ExpiryPopupService","popupId","initOpenPopUp","openSessionPopup","startPopupTimer","stopTimer","merge","SessionService","IdleConfigService","sessionService","platform","configIdle","onActivity","refreshSession","AB_REFRESH_SESSION_TIME","isRunningValue","userEvents","idleSubsctiption","_timeUp","_activity","timeUp","activity","stopCheckUserActivity","startCheckUserActivity","isRunning","MessageEvent","channelName","HttpRequest","HttpHandler","HttpEvent","HttpResponse","HttpErrorResponse","SessionInterceptorService","expiryPopupService","intercept","req","waitingOtherRequest","setRequset","handle","chechResponse","waitingForRefreshToken","waitRefreshToken","refreshToken","AB_API_REFRESH_SESSION","callDone","waitOtherRequest","waiting","_waitingOtherRequest","requests","Map","refresh","refreshTokenOver","refreshTokenWait","has","HTTP_INTERCEPTORS","idleConfigService","useClass","AbDatePipe","LOCALE_ID","MomentDateAdapter","AbDateAdapter","abDatePipe","locale","AB_ACCESS_DENIED_REDIRECT_INTERVAL","AccessDeniedComponent","trigger","style","transition","animate","ADDRESS_BOOK_TABS","tabAnimation","opacity","AddressBookComponent","personalTabNotPermission","internalTransferDisabled","externalTransferDisabled","billTransferDisabled","pageMode","companiesActions","beneficiariesActions","onSelect","addAddress","tabChange","_companiesList","_ownAccountList","_beneficiariesList","tabs","addressBookTabs","selectedTab","Personal","personalSearch","companiesSearch","ownAccountList","beneficiariesList","companiesList","showOwnAccounts","ownAccountListEmpty","beneficiariesListEmpty","initPersonalList","initCompaniesList","filterOwnAccounts","filterLetterArray","Companies","selectTab","tab","Animation","trackByFn","captureDoneEvent","toState","triggerAddAddress","letter","beneficiariesAddresses","beneficiary","ownBankAccounts","firstName","getNameValue","secondName","billPayeesCompanies","company","alias","reduce","filterdData","forwardRef","ControlContainer","NG_VALUE_ACCESSOR","AbstractControl","NG_VALIDATORS","AddressComponent","controlContainer","formControlName","showSaveAddressCheckbox","addressForm","streetName","houseNumber","city","ZIPCode","onTouched","formControl","control","addSubForms","addControl","writeValue","emitEvent","registerOnChange","fn","registerOnTouched","validate","invalid","useExisting","ValidationErrors","BankService","StateService","IState","BankListComponent","stateService","bankService","withoutState","withoutLabel","skipDestroy","bankList","onChange","selectedBank","prefilledValue","isAba","bankFormGroup","domesticBeneficiaryBank","getBankByCountry","banks","updateForm","setProp","stateSubscription","updateState","prefilledBank","bank","abaCode","bicCode","selectBank","default","billPayee","toAccount","getPropValue","arubaBank","markAsPristine","markAsUntouched","patchValue","errors","RendererFactory2","CountryListService","MatLegacySelect","CountryListComponent","countyListService","matSelect","hideLabel","countryListDropDown","selectedCountryName","positionChangeSubscription","countryForm","rendererFactory","createRenderer","validator","getCountryList","ngDoCheck","dirty","touched","validation","onOpenedChange","removeClass","orderArray","intCountry","shortListCountries","list","countryCode","setPrefilledToForm","hidden","setPosition","propertyName","increaseValue","position","prefilledCountry","RangeValidator","CurrencyInputComponent","maxlength","field","amountRequired","rangeMin","_rangeMin","currencyForm","validatiors","rangeMax","amountExceedsLimit","_notAllowedCurrency","allowedCurrency","currencyCode","notAllowedCurrency","currencyInput","initValueDone","hasError","lessThan","change","touch","BulkTransferService","BULK_TRANSFER_TYPES","FileUploadFieldComponent","bulkTransferService","configuration","onFileUpload","fileElement","selectedFile","fileEmitted","bulkFileStructures","defaultConfiguration","purposeOptions","INTERNATIONAL","DOMESTIC","getPurpose","purpose","getTransferType","deleteFile","emitFile","openExplainationDialog","markAsDirty","BankByBICService","SwiftFeePayee","ForeignBankComponent","bankByBICService","hideCharges","beneficiaryBankName","intermediaryBankName","beneficiaryBankValueInput","intermediaryBankValueInput","bicValidators","validationPaymentsBICCodeMinLength","validationPaymentsBICCodeLength","abaValidators","validationAddressBookABALength","foreignBankForm","swiftFeePayeeMethod","beneficiaryBankType","beneficiaryBankValue","intermediaryBankType","intermediaryBankValue","beneficiaryBank","intermediaryBank","beneficiaryBankMaxLength","beneficiaryBankMinLength","intermediaryBankMaxLength","intermediaryBankMinLength","internationalBeneficiaryBankDD","intermediaryBeneficiaryBankDD","setBeneficiaryBankValidators","setIntermediaryBankValidators","isABA","onlySelf","beneficiaryBankValidationBic","intermediaryBankValueValidationBic","formInvalid","checkBicCode","subject","getBankByBIC","bankInfo","LoaderService","LoaderComponent","loaderService","preventAutoBlocking","NgZone","TaskService","PrintComponent","taskService","ngZone","onTasksComplete","triggerBrowserPrint","runOutsideAngular","print","RichtextComponent","TabNavigationComponent","activeMenu","Tabs","IsRetailOnly","lenght","nav","n","navigationLink","Key","isTransfer","TableComponent","header","cols","apiDomain","NEW_MASHUP_URL","newPegaMashupScriptUrl","AB_API_INITIAL_VIEW","AB_API_USER_MANAGEMENT","AB_API_USER_MANAGEMENT_OVERVIEW_URL","AB_API_PORTFOLIO_USERS_DETAILS","AB_API_SET_DEFAULT_PORTFOLIO","AB_API_PORTFOLIO_USERS_ENDPOINT","AB_API_EXCHANGE_RATES_ENDPOINT","AB_API_LOCAL_FROM_ACCOUNTS_ENDPOINT","AB_API_FROM_ACCOUNTS_BULK_ENDPOINT","AB_API_INTERNATIONAL_FROM_ACCOUNTS_ENDPOINT","AB_API_ACCOUNTS_FOR_CLOSING","AB_API_OVERDRAFTS","AB_API_GETACCOUNTDETAILS","AB_API_FULL_PORTFOLIO_VIEW","AP_API_CHECK_ROUTE_ACCESS","AB_API_PORTFOLIO","AB_API_PORTFOLIO_DEFAULT","AB_API_GET_CHALLENGE","AB_API_TRANSACTION_ACCOUNT","AB_API_TRANSACTION_OVERVIEW","AB_API_TRANSACTION_SEARCH","AB_API_BLOCK_BANK_ACCOUNT","AB_API_TRANSACTION_DOWNLOAD","AB_API_TRANSACTION_STATEMENTS","AB_API_TRANSFERS_SUBMITTED","AB_API_TRANSFERS_SUBMITTED_DETAIL","AB_API_TRANSFERS_REJECTED_ONETIME","AB_API_TRANSFERS_REJECTED_ONETIME_FULL","AB_API_TRANSFERS_REJECTED_RECURRING","AB_API_TRANSFERS_REJECTED_RECURRING_FULL","AB_API_BULK_TRANSFERS_REJECTED","AB_API_BULK_TRANSFERS_REJECTED_FULL","AB_API_TRANSFERS_COUNTRYLIST","AB_API_TRANSFERS_GETBANKSBYCOUNTRY","AB_API_REFERENCE_CODES","AB_API_BILL_PAYEE_ATTRIBUTES","AB_API_TRANSFERS_TO_ACCOUNTS","AB_API_TRANSFERS_TO_BENEFICIARIES","AB_API_TRANSFERS_SUBMIT","AB_API_TRANSFERS_SCHEDULED","AB_API_TRANSFERS_SCHEDULED_BULK","AB_API_TRANSFERS_VALIDATE","AB_API_BANK_BY_BIC","AB_API_TRANSFERS_BULK_VALIDATE","AB_API_TRANSFERS_BULK_UPLOAD","AB_API_TRANSFERS_BULK_DOMESTIC","AB_API_TRANSFERS_BULK_INTERNATIONAL","AB_API_DAILY_LIMIT","AB_API_PAYMENTS_PENDING_TRANSFERS_COUNT","AB_API_TRANSFERS_PENDING","AB_API_TRANSFERS_DELETE","AB_API_TRANSFERS_GET_TRANSFER","AB_API_GET_CHALLENGE_BASKET","AB_API_TRANSFERS_APPROVE","AB_API_PAYMENT_BULK_DOMESTIC","AB_API_PAYMENT_BULK_INTERNATIONAL","AB_API_BULK_VIEW_STATUS","AB_API_BULK_DETAILS","AB_API_BULK_REJECT","AB_API_BASKET_REJECT","AB_API_BASKET_CHECK_PAYMENTS","AB_API_ADDRESSBOOK","AB_API_ADDRESSBOOK_COMPANIES","AB_API_ADDRESSBOOK_BENEFICIARIES","AB_API_ADDRESSBOOK_ADDRESS","AB_API_TEXTBANKING_SEND","AB_API_TEXTBANKING_INFO","AB_API_ATMPINCODE_INFO","AB_API_ATMPINCODE_SEND","AB_API_LINK_ATM_CARD","AB_API_REQUEST_APP","AB_API_DOWNLOAD_DOCUMENTS","AB_API_PERSONALARCHIVE_INTEREST_LETTERS","AB_API_PERSONALARCHIVE_MARKASREAD","AB_API_CLOSE_ACCOUNT","AB_API_MASHUP_ENDPOINT","AB_API_CONTACTUS_DATA","AB_ADDRESSBOOK_URL","AB_ADDRESSBOOK_ADD","AB_GET_BANK_CARDS","AB_BLOCK_BANK_CARD","AB_GET_MOBILE_DEVICES","AB_DISCONNECT_MOBILE_DEVICES","AB_OVERDRAFTSLIMITS","AB_OVERDRAFTSTEPDETAILS","AB_OVERDRAFTSUBMIT","AB_TRANSACTION_PRINT","AB_DATE_PREVENT_REGEX","AB_PHONE_NUMBER_PATTERN","AB_EMAIL_PATTERN","AB_DATE_FORMAT_FULL","AB_DATE_FORMAT_SHORT","AB_CURRENCY_FORMAT","AB_CURRENCY_FORMAT_AMOUNT","RouterAccessService","AccessDirective","elementRef","routerAccessService","checkAccess","setAttribute","checkRouteAccess","access","DecimalPipe","getLocaleNumberSymbol","NumberSymbol","NgControl","AmountFormatterDirective","decimalPipe","pipeFormat","el","valueChangesSubscription","onInput","onFocus","regex","Group","onBlur","ButtonLoaderStateService","ButtonLoaderDirective","buttonLoaderStateService","loaderState","toggleState","loaderStateWithIndex","DateFormatterDirective","FileDropZoneDirective","filesChangeEmiter","active","evt","hostVars","iframeResizer","IFrameResizerDirective","components","checkOrigin","heightCalculationMethod","iFrameResizer","ScrollInvalidDirective","formGroup","formName","scrollPriority","isInvalid","scrollToInvalidElement","invalidElement","Array","querySelectorAll","e","scrollTo","left","top","getBoundingClientRect","scrollY","ScrollToDirective","focusElement","input","UnitsDirective","innerText","convertToKiloByte","byte","isNaN","kiloByte","toFixed","AbCurrencySymbolPipe","USD","EURO","EUR","AWG","XCG","GBP","AbCurrencyPipe","DatePipe","AbFileSizePipe","units","bytes","precision","String","isFinite","unit","AbFilterCountriesPipe","searchValue","AbMoneyPipe","ReplacePipe","replaceOn","DomSanitizer","SecurityContext","SafeHtmlPipe","sanitized","sanitize","HTML","bypassSecurityTrustHtml","SupFractionPipe","moneyPipe","safeHtmlPipe","noHtml","money","moneyArray","PortfolioLevel","_formLogin","accountForTransfer","accountForTransferIsLoaded","getWithoutLoader","responseObject","getAccountForTransfer","clearAccountForTransfer","AntiForgeryTokenService","antiForgeryToken","VerificationToken","newHeaders","clone","camelCase","resource","camelCaseResponse","err","withoutLoader","withButtonLoader","put","isArray","v","finalize","ButtonLoaderInterceptorService","startLoader","stopLoader","withUrls","stateWithIndex","configurationSettings","configurationSettingsContext","validationAttributeName","validationAttributes","behaviorData","_onScroll","getBehaviorData","publishBehaviorData","ErrorHandlingInterceptorService","UntypedFormArray","_subForms","scrollInvalidDirective","val","setScrollInvalidDirective","a","b","markAsTouched","c","subForm","d","genericErrors","generateErrors","generateFields","errorArray","errorKey","camelCasedErrorKey","charAt","parameter","fieldArray","fieldKey","camelCasedFieldKey","helpText","alternativePlaceholder","otherCountry","mask","accountsResponse","metadata","getKey","HttpCancelInterceptorService","accountsOverviewResponse","clearAccountsOverview","LoaderInterceptorService","count","hide","currentMenuTrigger","lastMenuTrigger","isFirstOpen","listenForScroll","actionsCollection","subscribeToEvent","listen","closeActiveMenu","currentSubscriptions","currentPortfolio","getCurrentPortfolio","clearPortfolios","r","distinctUntilChanged","tasks","taskObservor","resetTasks","setTask","task","every","userAgent","navigator","opera","isMobileDevice","vendor","test","isTabletDevice","tabletRegex","messagesCountService","initialViewSerivce","wasLoggedIn","isFirstTime","clearServices","redirectUrl","MatMomentDateModule","MAT_MOMENT_DATE_ADAPTER_OPTIONS","MatLegacyAutocompleteModule","MatLegacyCheckboxModule","DateAdapter","MatDatepickerModule","MatLegacyDialogModule","MatExpansionModule","MatLegacyRadioModule","MatLegacySelectModule","MatLegacySlideToggleModule","NgbCollapseModule","NgbTooltipModule","InfiniteScrollModule","NgxMaskModule","ValidatorsModule","useUtc","TransactionsModule","BIC","bic","_getBankByCountry","BULK_TRANSFER_PURPOSES","onConfirm","orderReference","metaFields","onError","SALARY_PAYMENTS","setAmountExceedsLimitError","getAmountExceedsLimitError","setMetaFields","getMetaFields","setOnSubmit","isValid","getOnSubmit","setOnConfirm","isSet","getOnConfirm","setOrderReference","getOrderReference","setPurpose","FOREIGN_BULK","InternalAccountsService","isOnly","transferOption","transferOptionsMap","option","bool","PAYMENT_TYPES","bankAccount","stringParams","internalTransfer","domesticTransfer","isResident","categoryNames","defaultReferenceCode","explanation","self","ToAccountsListItemType","internalAccountsService","fromEditInit","toEditInit","internalAccounts","toAccounts","finalState","previousState","resetFormMode","editTransfer","prefilledData","instantiateProp","prop","DEFAULT_PROP_MAP","INTERNAL_ACCOUNTS","TO_ACCOUNTS","stopSetState","setState","getProp","computedState","isPrefilledForm","isInternationalTransfer","isInternalTransferOnly","internalOnly","isBillPayeeTransfer","isDomesticTransfer","isInternalTransfer","forceState","accountCreateTransfersPermissions","listItemType","OwnAccount","entries","BillPayee","prefilledForm","editTransferState","emptyState","stopPrefillMode","ToAccountsService","getToAccountsList","TransfersModule","UserAccessManagementModule","MinLengthTrimDirective","abMinLengthTrim","valFun","trim","min","max","controlValue","range","FormsModule","config","production","process","PRODUCTION","sitecoreApiHost","SITECORE_API_HOST","SITECORE_API_KEY","jssAppName","JSS_APP_NAME","sitecoreLayoutServiceConfig","SITECORE_LAYOUT_SERVICE_CONFIG","DEFAULT_LANGUAGE","DEFAULT_SERVER_ROUTE","graphQLEndpointPath","GRAPH_QL_ENDPOINT_PATH","GRAPH_QL_ENDPOINT","enableProdMode","handleEditorAnchors","addEventListener","__NgCli_bootstrap_1","bootstrapModule"],"sourceRoot":"webpack:///","x_google_ignoreList":[258]}