{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/core/api/lib/api.service.ts","./src/app/core/api/lib/resolve-path.ts","./src/app/core/app-initializer/app-initializer.ts","./src/app/core/auth/lib/auth-guard.service.ts","./src/app/core/auth/lib/authentication.service.ts","./src/app/core/auth/lib/authorization.service.ts","./src/app/core/auth/lib/config/auth-route.ts","./src/app/core/auth/lib/file-access-token.service.ts","./src/app/core/auth/lib/policies/policy.ts","./src/app/core/auth/lib/refresh-token.ts","./src/app/core/auth/lib/right.service.ts","./src/app/core/auth/lib/token-refresh.service.ts","./src/app/core/auth/lib/token-storage.service.ts","./src/app/core/auth/lib/token.ts","./src/app/core/config/config.service.ts","./src/app/core/core.module.ts","./src/app/core/date/date-formatter.service.ts","./src/app/core/date/parse-date.ts","./src/app/core/i18n/lib/date.pipe.ts","./src/app/core/i18n/lib/language.ts","./src/app/core/i18n/lib/translate.pipe.ts","./src/app/core/i18n/lib/translation.ts","./src/app/core/i18n/lib/translator.service.ts","./src/app/core/i18n/lib/utils/replace-translation-placeholders.ts","./src/app/core/img/article-img.directive.ts","./src/app/core/img/private-img.directive.ts","./src/app/core/img/public-img-url.service.ts","./src/app/core/keyboard/keyboard.service.ts","./src/app/core/layout/breakpoint.service.ts","./src/app/core/layout/css-variable.service.ts","./src/app/core/layout/css-variables.enum.ts","./src/app/core/layout/scrollbar.service.ts","./src/app/core/native/native-app/native-app.service.ts","./src/app/core/platform/platform.enum.ts","./src/app/core/platform/platform.service.ts","./src/app/core/statusBar/status-bar.service.ts","./src/app/core/store/store.service.ts","./src/app/core/user/lib/user-settings.service.ts","./src/app/core/utils/memoize-one.ts","./src/app/core/utils/mo-bypass-security-trust-url.pipe.ts","./src/app/core/validators/phone-number-validator.ts","./src/app/core/validators/validate-email-callback.ts","./src/app/core/version/version.service.ts","./src/app/domain/contact/contact-form/contact-form.component.ts","./src/app/domain/contact/contact-form/contact-form.component.html","./src/app/domain/contact/contact-routing.module.ts","./src/app/domain/contact/contact.component.ts","./src/app/domain/contact/contact.component.html","./src/app/domain/contact/contact.module.ts","./src/app/domain/contact/lib/contact-form.service.ts","./src/app/domain/error/lib/maintenance.service.ts","./src/app/domain/error/pages/maintenance/maintenance-page.component.ts","./src/app/domain/error/pages/maintenance/maintenance-page.component.html","./src/app/domain/error/pages/not-found/not-found-page.component.ts","./src/app/domain/error/pages/not-found/not-found-page.component.html","./src/app/domain/logged-in/logged-in-page.component.ts","./src/app/domain/logged-in/logged-in-page.component.html","./src/app/domain/login/lib/registration.service.ts","./src/app/domain/login/lib/restore-password.service.ts","./src/app/domain/login/login-page.component.ts","./src/app/domain/login/login-page.component.html","./src/app/domain/login/login.module.ts","./src/app/domain/login/pages/intro/intro.component.ts","./src/app/domain/login/pages/intro/intro.component.html","./src/app/domain/login/pages/intro/intro.module.ts","./src/app/domain/login/pages/login-slide/login-slide.component.ts","./src/app/domain/login/pages/login-slide/login-slide.component.html","./src/app/domain/login/pages/registration-form/registration-form.component.ts","./src/app/domain/login/pages/registration-form/registration-form.component.html","./src/app/domain/login/pages/registration-slide/registration-slide.component.ts","./src/app/domain/login/pages/registration-slide/registration-slide.component.html","./src/app/domain/login/pages/restore-password-slide/restore-password-slide.component.ts","./src/app/domain/login/pages/restore-password-slide/restore-password-slide.component.html","./src/app/domain/my-account/general/my-account-menu/my-account-menu.component.ts","./src/app/domain/my-account/general/my-account-menu/my-account-menu.component.html","./src/app/domain/my-account/general/my-account-menu/my-account-menu.module.ts","./src/app/general/chat/chat.module.ts","./src/app/general/chat/components/chat-message/chat-message.component.ts","./src/app/general/chat/components/chat-message/chat-message.component.html","./src/app/general/chat/components/chat/chat.component.ts","./src/app/general/chat/components/chat/chat.component.html","./src/app/general/chat/components/floating-chat-button/floating-chat-button.component.ts","./src/app/general/chat/components/floating-chat-button/floating-chat-button.component.html","./src/app/general/menu/lib/menu.service.ts","./src/app/general/menu/menu-img.directive.ts","./src/app/general/menu/menu.component.ts","./src/app/general/menu/menu.component.html","./src/app/general/menu/menu.module.ts","./src/app/general/offline-notification/offline-notification.component.ts","./src/app/general/offline-notification/offline-notification.component.html","./src/app/general/offline-notification/offline-notification.module.ts","./src/app/general/search/search.component.ts","./src/app/general/search/search.component.html","./src/app/general/search/search.module.ts","./src/app/general/shopping-cart/shopping-cart.component.ts","./src/app/general/shopping-cart/shopping-cart.component.html","./src/app/general/shopping-cart/shopping-cart.module.ts","./src/app/general/store-select-box/store-select-box.component.ts","./src/app/general/store-select-box/store-select-box.component.html","./src/app/general/store-select-box/store-select-box.module.ts","./src/app/general/store-selection-dialog/store-selection-dialog.component.ts","./src/app/general/store-selection-dialog/store-selection-dialog.component.html","./src/app/general/store-selection-dialog/store-selection-dialog.module.ts","./src/app/general/top-navigation/lib/top-navigation.service.ts","./src/app/general/top-navigation/top-navigation.component.ts","./src/app/general/top-navigation/top-navigation.component.html","./src/app/general/top-navigation/top-navigation.module.ts","./src/app/general/various-content/various-content.component.ts","./src/app/general/various-content/various-content.component.html","./src/app/general/various-content/various-content.module.ts","./src/app/general/version-notification/version-notification.component.ts","./src/app/general/version-notification/version-notification.component.html","./src/app/general/version-notification/version-notification.module.ts","./src/app/ui/backdrop/backdrop.component.ts","./src/app/ui/backdrop/backdrop.module.ts","./src/app/ui/button/button.component.ts","./src/app/ui/button/button.component.html","./src/app/ui/button/button.module.ts","./src/app/ui/content-box/content-box.component.ts","./src/app/ui/content-box/content-box.component.html","./src/app/ui/content-box/content-box.module.ts","./src/app/ui/devextreme-validation/shared/normalize-email.ts","./src/app/ui/drop-down-button/drop-down-button.component.ts","./src/app/ui/drop-down-button/drop-down-button.component.html","./src/app/ui/drop-down-button/drop-down-button.module.ts","./src/app/ui/flex-box/flex-box.component.ts","./src/app/ui/flex-box/flex-box.component.html","./src/app/ui/flex-box/flex-box.module.ts","./src/app/ui/floating-button/floating-button.component.ts","./src/app/ui/floating-button/floating-button.component.html","./src/app/ui/floating-button/floating-button.module.ts","./src/app/ui/glass-card/glass-card.component.ts","./src/app/ui/glass-card/glass-card.component.html","./src/app/ui/glass-card/glass-card.module.ts","./src/app/ui/grid/grid-col/grid-col.component.ts","./src/app/ui/grid/grid-col/grid-col.component.html","./src/app/ui/grid/grid.component.ts","./src/app/ui/grid/grid.component.html","./src/app/ui/grid/grid.module.ts","./src/app/ui/input/text-input.component.ts","./src/app/ui/input/text-input.component.html","./src/app/ui/input/text-input.module.ts","./src/app/ui/lib/ui-component-color.type.ts","./src/app/ui/lib/ui-component-style-type.ts","./src/app/ui/lib/ui.component.ts","./src/app/ui/loader/loader.component.ts","./src/app/ui/loader/loader.module.ts","./src/app/ui/note/note.component.ts","./src/app/ui/note/note.component.html","./src/app/ui/note/note.module.ts","./src/app/ui/popup/lib/popup-internal.service.ts","./src/app/ui/popup/popup-body/popup-body.component.ts","./src/app/ui/popup/popup-body/popup-body.component.html","./src/app/ui/popup/popup-footer/popup-footer.component.ts","./src/app/ui/popup/popup-footer/popup-footer.component.html","./src/app/ui/popup/popup-header/popup-header.component.ts","./src/app/ui/popup/popup-header/popup-header.component.html","./src/app/ui/popup/popup.component.ts","./src/app/ui/popup/popup.component.html","./src/app/ui/popup/popup.module.ts","./src/app/ui/select-menu/select-menu.component.ts","./src/app/ui/select-menu/select-menu.component.html","./src/app/ui/select-menu/select-menu.module.ts","./src/app/ui/select/select.component.ts","./src/app/ui/select/select.component.html","./src/app/ui/select/select.module.ts","./src/app/ui/side-bar/side-bar.component.ts","./src/app/ui/side-bar/side-bar.component.html","./src/app/ui/side-bar/side-bar.module.ts","./src/app/ui/slider/slide/slide.component.ts","./src/app/ui/slider/slide/slide.component.html","./src/app/ui/slider/slider.component.ts","./src/app/ui/slider/slider.component.html","./src/app/ui/slider/slider.module.ts","./src/app/ui/toast/lib/toast.service.ts","./src/app/ui/toast/toast.component.ts","./src/app/ui/toast/toast.component.html","./src/app/ui/toast/toast.module.ts","./src/app/ui/toolbar/toolbar.component.ts","./src/app/ui/toolbar/toolbar.component.html","./src/app/ui/toolbar/toolbar.module.ts","./src/app/ui/validation-error/validation-error.component.ts","./src/app/ui/validation-error/validation-error.component.html","./src/app/ui/validation-error/validation-error.module.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import {NgModule} from '@angular/core';\r\nimport {RouterModule} from '@angular/router';\r\nimport {LoginPageComponent} from './domain/login/login-page.component';\r\nimport {routesWithAuthorization} from './core/auth/lib/config/auth-route';\r\nimport {Policy} from './core/auth/lib/policies/policy';\r\nimport {NotFoundPageComponent} from './domain/error/pages/not-found/not-found-page.component';\r\nimport {LoggedInPageComponent} from './domain/logged-in/logged-in-page.component';\r\nimport {MaintenancePageComponent} from './domain/error/pages/maintenance/maintenance-page.component';\r\n\r\nconst routes = routesWithAuthorization([\r\n // Public areas\r\n {\r\n path: 'login',\r\n component: LoginPageComponent,\r\n policy: Policy.Anonymous,\r\n },\r\n\r\n {\r\n path: 'registration',\r\n policy: Policy.Anonymous,\r\n loadChildren: () => import('./domain/finish-registration/finish-registration.module').then(m => m.FinishRegistrationModule),\r\n },\r\n\r\n {\r\n path: 'reset-password',\r\n policy: Policy.Anonymous,\r\n loadChildren: () => import('./domain/reset-password/reset-password.module').then(m => m.ResetPasswordModule),\r\n },\r\n\r\n {\r\n path: 'privacy',\r\n policy: Policy.Anonymous,\r\n loadChildren: () => import('./domain/privacy/privacy.module').then(m => m.PrivacyModule),\r\n },\r\n\r\n {\r\n path: 'imprint',\r\n policy: Policy.Anonymous,\r\n loadChildren: () => import('./domain/imprint/imprint.module').then(m => m.ImprintModule),\r\n },\r\n\r\n {\r\n path: 'contact',\r\n policy: Policy.Anonymous,\r\n loadChildren: () => import('./domain/contact/contact.module').then(m => m.ContactModule),\r\n },\r\n\r\n {\r\n path: 'maintenance',\r\n policy: Policy.Anonymous,\r\n component: MaintenancePageComponent,\r\n },\r\n\r\n // CMS area for monari co-workers\r\n {\r\n path: 'cms',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 7,\r\n loadChildren: () => import('./domain/cms/cms.module').then(m => m.CmsModule),\r\n },\r\n\r\n // B2B area for users\r\n {\r\n path: '',\r\n policy: Policy.Authenticated,\r\n component: LoggedInPageComponent,\r\n children: [\r\n {\r\n path: '',\r\n policy: Policy.Authenticated,\r\n loadChildren: () => import('./domain/start/start.module').then(m => m.StartModule),\r\n },\r\n {\r\n path: 'start',\r\n policy: Policy.Authenticated,\r\n loadChildren: () => import('./domain/start/start.module').then(m => m.StartModule),\r\n },\r\n {\r\n path: 'shop',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 2,\r\n loadChildren: () => import('./domain/shop/shop.module').then(m => m.ShopModule),\r\n },\r\n {\r\n path: 'my-account',\r\n policy: Policy.Authenticated,\r\n loadChildren: () => import('./domain/my-account/my-account.module').then(m => m.MyAccountModule),\r\n },\r\n {\r\n path: 'marketing',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 3,\r\n loadChildren: () => import('./domain/marketing/marketing.module').then(m => m.MarketingModule),\r\n },\r\n {\r\n path: 'visual-merchandising',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 4,\r\n loadChildren: () => import('./domain/visual-merchandise/visual-merchandise.module').then(m => m.VisualMerchandiseModule),\r\n },\r\n {\r\n path: 'pos-photos',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 11,\r\n loadChildren: () => import('./domain/pos-photos/pos-media.module').then(m => m.PosMediaModule),\r\n },\r\n // ToDo Check Can it be deleted?\r\n {\r\n path: 'admin/users',\r\n policy: Policy.Authenticated,\r\n loadChildren: () => import('./domain/user-admin/user-admin.module').then(m => m.UserAdminModule),\r\n },\r\n {\r\n path: 'help-center',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 9,\r\n loadChildren: () => import('./domain/faq/faq.module').then(m => m.FaqModule),\r\n },\r\n {\r\n path: 'article-gallery',\r\n policy: Policy.Authenticated,\r\n requiredProgramId: 5,\r\n loadChildren: () => import('./domain/article-gallery/article-gallery.module').then(m => m.ArticleGalleryModule),\r\n },\r\n ],\r\n },\r\n\r\n {\r\n path: '**',\r\n component: NotFoundPageComponent,\r\n policy: Policy.Anonymous,\r\n },\r\n]);\r\n\r\n@NgModule({\r\n imports: [\r\n /**\r\n * enabled'- Restores the previous scroll position on backward navigation,\r\n * else sets the position to the anchor if one is provided,\r\n * or sets the scroll position to [0, 0] (forward navigation).\r\n * This option will be the default in the future.\r\n *\r\n * See https://angular.io/api/router/ExtraOptions#scrollPositionRestoration\r\n */\r\n RouterModule.forRoot(routes, {scrollPositionRestoration: 'enabled'}),\r\n ],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {\r\n}\r\n","import {Component, OnDestroy, OnInit, ViewChild} from '@angular/core';\r\nimport {ShowToastEvent, ToastService} from './ui/toast/lib/toast.service';\r\nimport {ToastComponent} from './ui/toast/toast.component';\r\nimport {Subject} from 'rxjs';\r\nimport {UserSettingsService} from './core/user/lib/user-settings.service';\r\nimport {TranslatorService} from './core/i18n/lib/translator.service';\r\nimport {FileAccessTokenService} from './core/auth/lib/file-access-token.service';\r\nimport {PlatformService} from './core/platform/platform.service';\r\nimport {StatusBarService} from './core/statusBar/status-bar.service';\r\nimport {Style} from '@capacitor/status-bar';\r\nimport {NativeAppService} from './core/native/native-app/native-app.service';\r\nimport {takeUntil} from 'rxjs/operators';\r\nimport {ApiService} from './core/api/lib/api.service';\r\nimport {Router} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n @ViewChild('toast')\r\n private toast!: ToastComponent;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private router: Router,\r\n private apiService: ApiService,\r\n private toastService: ToastService,\r\n private platformService: PlatformService,\r\n private statusBarService: StatusBarService,\r\n private nativeAppService: NativeAppService,\r\n private fileAccessTokenService: FileAccessTokenService,\r\n private userSettingsService: UserSettingsService,\r\n private translatorService: TranslatorService,\r\n ) {\r\n this.statusBarService.setBackgroundColor('#ffffff'); // Set status bar white for mobile devices (only android)\r\n this.statusBarService.setStyle(Style.Light);\r\n // this.statusBarService.setOverlaysWebView(true);\r\n\r\n // Services are initialised here because serve creation is lazy by default. But we need them instant (eager).\r\n this.platformService.init();\r\n this.nativeAppService.init();\r\n this.fileAccessTokenService.init();\r\n this.userSettingsService.init();\r\n this.translatorService.init();\r\n }\r\n\r\n /**\r\n * Subscribe to events.\r\n */\r\n public ngOnInit(): void {\r\n this.toastService\r\n .showToast\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(\r\n (event: ShowToastEvent) => this.toast.show(event.text, event.duration),\r\n );\r\n\r\n this.apiService.requestMaintenanceModeError$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(\r\n () => this.router.navigate(['/maintenance']),\r\n );\r\n }\r\n\r\n /**\r\n * Unsubscribe from events.\r\n */\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\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 {BrowserModule} from '@angular/platform-browser';\r\nimport {APP_INITIALIZER, NgModule} from '@angular/core';\r\nimport {AppRoutingModule} from './app-routing.module';\r\nimport {AppComponent} from './app.component';\r\nimport {ReactiveFormsModule} from '@angular/forms';\r\nimport {NotFoundPageComponent} from './domain/error/pages/not-found/not-found-page.component';\r\nimport {HttpClientModule} from '@angular/common/http';\r\nimport {LoggedInPageComponent} from './domain/logged-in/logged-in-page.component';\r\nimport {TopNavigationModule} from './general/top-navigation/top-navigation.module';\r\nimport {SideBarModule} from './ui/side-bar/side-bar.module';\r\nimport {MenuModule} from './general/menu/menu.module';\r\nimport {SearchModule} from './general/search/search.module';\r\nimport {CoreModule} from './core/core.module';\r\nimport {ChatModule} from './general/chat/chat.module';\r\nimport {LoginModule} from './domain/login/login.module';\r\nimport {ButtonModule} from './ui/button/button.module';\r\nimport {ToastModule} from './ui/toast/toast.module';\r\nimport {VariousContentModule} from './general/various-content/various-content.module';\r\nimport {NoteModule} from './ui/note/note.module';\r\nimport {FlexBoxModule} from './ui/flex-box/flex-box.module';\r\nimport {MyAccountMenuModule} from './domain/my-account/general/my-account-menu/my-account-menu.module';\r\nimport {ContentBoxModule} from './ui/content-box/content-box.module';\r\nimport {ConfigService} from './core/config/config.service';\r\nimport {GridModule} from './ui/grid/grid.module';\r\nimport {ShoppingCartModule} from './general/shopping-cart/shopping-cart.module';\r\nimport {ToolbarModule} from './ui/toolbar/toolbar.module';\r\nimport {TokenRefreshService} from './core/auth/lib/token-refresh.service';\r\nimport {appInitializer} from './core/app-initializer/app-initializer';\r\nimport {TokenStorageService} from './core/auth/lib/token-storage.service';\r\nimport {BackdropModule} from './ui/backdrop/backdrop.module';\r\nimport {OfflineNotificationModule} from './general/offline-notification/offline-notification.module';\r\nimport {DxButtonModule} from 'devextreme-angular';\r\nimport {ContactModule} from './domain/contact/contact.module';\r\nimport {MaintenancePageComponent} from './domain/error/pages/maintenance/maintenance-page.component';\r\nimport {VersionNotificationModule} from './general/version-notification/version-notification.module';\r\nimport {VersionService} from './core/version/version.service';\r\nimport {StoreSelectionDialogModule} from './general/store-selection-dialog/store-selection-dialog.module';\r\nimport {ApiService} from './core/api/lib/api.service';\r\n\r\n@NgModule({\r\n declarations: [AppComponent, LoggedInPageComponent, NotFoundPageComponent, MaintenancePageComponent],\r\n imports: [\r\n BrowserModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n CoreModule,\r\n ChatModule,\r\n AppRoutingModule,\r\n TopNavigationModule,\r\n SideBarModule,\r\n MenuModule,\r\n SearchModule,\r\n ButtonModule,\r\n LoginModule,\r\n ToastModule,\r\n VariousContentModule,\r\n NoteModule,\r\n FlexBoxModule,\r\n MyAccountMenuModule,\r\n ContentBoxModule,\r\n GridModule,\r\n ShoppingCartModule,\r\n ToolbarModule,\r\n BackdropModule,\r\n OfflineNotificationModule,\r\n ContactModule,\r\n DxButtonModule,\r\n VersionNotificationModule,\r\n StoreSelectionDialogModule,\r\n ],\r\n bootstrap: [AppComponent],\r\n providers: [\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: appInitializer,\r\n multi: true,\r\n deps: [ApiService, ConfigService, VersionService, TokenStorageService, TokenRefreshService],\r\n },\r\n ],\r\n})\r\nexport class AppModule {\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable, Subject, throwError} from 'rxjs';\r\nimport {HttpClient, HttpErrorResponse, HttpHeaders} from '@angular/common/http';\r\nimport {TokenStorageService} from '../../auth/lib/token-storage.service';\r\nimport {resolvePath} from './resolve-path';\r\nimport {ConfigService} from '../../config/config.service';\r\nimport {catchError} from 'rxjs/operators';\r\nimport {VersionService} from '../../version/version.service';\r\n\r\nexport interface ApiRequestOptions {\r\n headers?: HttpHeaders;\r\n params?: Record;\r\n withCredentials?: boolean;\r\n responseType?: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ApiService {\r\n /**\r\n * If true endpoint 2 is used for requests. Could be set to true/ false in the user settings on the b2b platform.\r\n */\r\n public useEndpoint2: boolean = false;\r\n\r\n private _requestCancelled$ = new Subject();\r\n\r\n private _requestMaintenanceModeError$ = new Subject();\r\n\r\n public constructor(\r\n private http: HttpClient,\r\n private tokenStorage: TokenStorageService,\r\n private configService: ConfigService,\r\n private versionService: VersionService\r\n ) {\r\n }\r\n\r\n public get endpointUrl(): string {\r\n return this.useEndpoint2 ? this.configService.configuration.endpointUrl2 : this.configService.configuration.endpointUrl;\r\n }\r\n\r\n public getUrl(path: string, params?: Record): string {\r\n return resolvePath(\r\n [this.useEndpoint2 ? this.configService.configuration.endpointUrl2 : this.configService.configuration.endpointUrl, path], params,\r\n );\r\n }\r\n\r\n public get(path: string, options: ApiRequestOptions = {}): Observable {\r\n const headers = this.getHeaders(options);\r\n\r\n return this.http.get(this.getUrl(path, options.params), {\r\n headers,\r\n }).pipe(\r\n catchError(error => this.handleHttpError(error)),\r\n );\r\n }\r\n\r\n public delete(path: string, options: ApiRequestOptions = {}): Observable {\r\n const headers = this.getHeaders(options);\r\n\r\n return this.http.delete(this.getUrl(path, options.params), {\r\n headers,\r\n }).pipe(\r\n catchError(error => this.handleHttpError(error)),\r\n );\r\n }\r\n\r\n public post(path: string, body: TRequest, options: ApiRequestOptions = {}): Observable {\r\n const headers = this.getHeaders(options);\r\n\r\n return this.http.post(this.getUrl(path, options.params), body, {\r\n headers,\r\n }).pipe(\r\n catchError(error => this.handleHttpError(error)),\r\n );\r\n }\r\n\r\n public put(path: string, body: TRequest, options: ApiRequestOptions = {}): Observable {\r\n const headers = this.getHeaders(options);\r\n\r\n return this.http.put(this.getUrl(path, options.params), body, {\r\n headers,\r\n }).pipe(\r\n catchError(error => this.handleHttpError(error)),\r\n );\r\n }\r\n\r\n /**\r\n * Emitted if an request is cancelled.\r\n */\r\n public get requestCancelled$(): Observable {\r\n return this._requestCancelled$.asObservable();\r\n }\r\n\r\n /**\r\n * Emitted if an request error occurs due maintenance.\r\n */\r\n public get requestMaintenanceModeError$(): Observable {\r\n return this._requestMaintenanceModeError$.asObservable();\r\n }\r\n\r\n private getHeaders({\r\n withCredentials = true,\r\n headers,\r\n }: ApiRequestOptions): HttpHeaders | undefined {\r\n const token = this.tokenStorage.token;\r\n headers ??= new HttpHeaders();\r\n\r\n if (this.versionService?.info?.apiVersion) {\r\n headers = headers.set('x-api-version', this.versionService.info.apiVersion);\r\n }\r\n\r\n if (token && withCredentials) {\r\n headers = headers.set('Authorization', 'bearer ' + token.data);\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n private handleHttpError(error: HttpErrorResponse) {\r\n if (error.status === 401) { // Not authenticated. Clear user data.\r\n this.tokenStorage.setAccessToken(null);\r\n this.tokenStorage.setRefreshToken(null);\r\n }\r\n\r\n if (error.status === 503) { // Maintenance mode. Maintenance page will be shown.\r\n this._requestMaintenanceModeError$.next();\r\n }\r\n\r\n if (error.status === 0) { // Cancelled request: throw event so that the offlineNotification can subscribe an be shown\r\n this._requestCancelled$.next();\r\n }\r\n\r\n return throwError(error);\r\n }\r\n}\r\n","export function resolvePath(paths: string[], params?: { [key: string]: unknown } | null): string {\r\n const url = getUrl(paths);\r\n\r\n return addQueryToUrl(url, {...params});\r\n}\r\n\r\nfunction getUrl(paths: string[]): string {\r\n const pathParts: string[] = [];\r\n\r\n for (let i = paths.length - 1; i >= 0; --i) {\r\n let path = paths[i];\r\n\r\n if (path.length > 1 && path.endsWith('/')) {\r\n path = path.slice(0, path.length - 1);\r\n }\r\n\r\n pathParts.unshift(path);\r\n\r\n if (ABSOLUTE_PATTERN.test(path)) {\r\n break;\r\n }\r\n }\r\n\r\n return pathParts.join('/');\r\n}\r\n\r\nfunction joinParams(params: unknown[]): string {\r\n return params\r\n .filter((value) => value != null)\r\n .join('&');\r\n}\r\n\r\nfunction addQueryToUrl(url: string, params: Record): string {\r\n const usedParams: { [key: string]: boolean } = {};\r\n\r\n params = params || {};\r\n\r\n if (PLACEHOLDER_PATTERN.test(url)) {\r\n url = url.replace(PLACEHOLDER_PATTERN, (_, optional, raw, name): string => {\r\n name = name.trim();\r\n\r\n const value = params[name];\r\n\r\n if (value == null) {\r\n if (optional) {\r\n return '';\r\n }\r\n\r\n throw new RangeError(\r\n `Missing required parameter \"${name}\" for url \"${url}\". ` +\r\n `(Params: ${JSON.stringify(params)})`,\r\n );\r\n }\r\n\r\n usedParams[name] = true;\r\n\r\n let result: string;\r\n\r\n if (!raw) {\r\n result = encodeURIComponent(value + '');\r\n } else if (raw === '*') {\r\n result = (value + '')\r\n .split('/')\r\n .map((part) => encodeURIComponent(part))\r\n .join('/');\r\n } else {\r\n result = value + '';\r\n }\r\n\r\n return result;\r\n });\r\n }\r\n\r\n const restParams: Record = {};\r\n\r\n for (const [name, value] of Object.entries(params)) {\r\n if (!usedParams[name] && value != null) {\r\n restParams[name] = value;\r\n }\r\n }\r\n\r\n if (Object.keys(restParams).length > 0) {\r\n url += url.indexOf('?') === -1 ? '?' : '&';\r\n url += joinParams(\r\n Array.from(\r\n Object.entries(restParams),\r\n ([name, value]) => buildQueryParam(name, value),\r\n ),\r\n );\r\n }\r\n\r\n return url;\r\n}\r\n\r\nfunction buildQueryParam(key: string, value: unknown): string | null {\r\n if (value == null) {\r\n return null;\r\n }\r\n\r\n if (Array.isArray(value)) {\r\n return joinParams(value.map((item) => buildQueryParam(key + '[]', item)));\r\n }\r\n\r\n if (typeof value === 'object') {\r\n return joinParams(\r\n Array.from(\r\n Object.entries(value as Record),\r\n ([itemKey, itemValue]) => buildQueryParam(key + '[' + encodeURIComponent(itemKey) + ']', itemValue),\r\n ),\r\n );\r\n }\r\n\r\n if (typeof value === 'boolean') {\r\n value = value ? '1' : '0';\r\n }\r\n\r\n return key + '=' + encodeURIComponent(value + '');\r\n}\r\n\r\nconst PLACEHOLDER_PATTERN = /{([?]?)([!*]?)([^}]+)}/g;\r\nconst ABSOLUTE_PATTERN = /^([a-zA-Z]+:|\\/)/;\r\n","import {TokenRefreshService} from '../auth/lib/token-refresh.service';\r\nimport {TokenStorageService} from '../auth/lib/token-storage.service';\r\nimport {ConfigService} from '../config/config.service';\r\nimport {VersionService} from '../version/version.service';\r\nimport {ApiService} from '../api/lib/api.service';\r\nimport Config from \"devextreme/core/config\"\r\n\r\n/**\r\n * App initializer which does some startup work ...\r\n *\r\n * @param configService\r\n * @param tokenStorageService\r\n * @param tokenRefreshService\r\n */\r\nexport function appInitializer(\r\n apiService: ApiService,\r\n configService: ConfigService,\r\n versionService: VersionService,\r\n tokenStorageService: TokenStorageService,\r\n tokenRefreshService: TokenRefreshService,\r\n) {\r\n return () => new Promise(async resolve => {\r\n // Set default styling mode to `underlined`\r\n Config({ \r\n editorStylingMode: 'underlined'\r\n });\r\n \r\n apiService.useEndpoint2 = window.sessionStorage.getItem('useEndpoint2') === 'true' ? true : false;\r\n\r\n await configService.load(); // Loads config information e.g. server endpoints.\r\n\r\n await versionService.load(); // Loads app version information.\r\n\r\n await tokenStorageService.load(); // Load tokens from storage into service.\r\n\r\n // Stop with further startup work if user is not logged in.\r\n if (!(tokenStorageService.token && tokenStorageService.refreshToken)) {\r\n resolve();\r\n return;\r\n }\r\n\r\n tokenRefreshService // Attempt to refresh token.\r\n .refreshToken()\r\n .add(resolve);\r\n });\r\n}\r\n","import {ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot} from '@angular/router';\r\nimport {Injectable} from '@angular/core';\r\nimport {Policy} from './policies/policy';\r\nimport {Observable} from 'rxjs';\r\nimport {map} from 'rxjs/operators';\r\nimport {AuthorizationService} from './authorization.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthGuardService implements CanActivate {\r\n public constructor(\r\n private authorization: AuthorizationService,\r\n private router: Router,\r\n ) {\r\n }\r\n\r\n public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n return this.authorization\r\n .authorize$(route.data?.policy || Policy.Authenticated, route.data?.requiredProgramId)\r\n .pipe(\r\n map((authorized) => {\r\n let commands = ['/login'];\r\n let extras = {};\r\n\r\n // If user it authorized to open the requested page go on.\r\n if (authorized.isAuthorized) {\r\n return true;\r\n }\r\n\r\n // If user is not authorized due failed authentication add referrer query param and go to login\r\n // so that the user is navigated to the desired page after login.\r\n if (authorized.error === 'notAuthenticated') {\r\n extras = {\r\n queryParams: {\r\n referrer: state.url,\r\n },\r\n };\r\n\r\n // ToDo use here authService logout method\r\n }\r\n\r\n // If user is not authorized due failed authorization route the user to the start page.\r\n if (authorized.error === 'missingRight') {\r\n commands = ['/'];\r\n }\r\n\r\n this.router.navigate(commands, extras);\r\n\r\n return false;\r\n }));\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\nimport {LoginResponse} from './payloads/login-response';\r\nimport {LoginRequest} from './payloads/login-request';\r\nimport {ApiService} from '../../api/lib/api.service';\r\nimport {finalize, tap} from 'rxjs/operators';\r\nimport {TokenStorageService} from './token-storage.service';\r\nimport {Router} from '@angular/router';\r\nimport {TokenRefreshService} from './token-refresh.service';\r\n\r\n/**\r\n * Service to login and logout the user.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthenticationService {\r\n\r\n public constructor(\r\n private api: ApiService,\r\n private tokenStorage: TokenStorageService,\r\n private refreshTokenService: TokenRefreshService,\r\n private router: Router,\r\n ) {\r\n }\r\n\r\n /**\r\n * Logs in the user.\r\n *\r\n * @param request\r\n */\r\n public login(request: LoginRequest): Observable {\r\n return this.api\r\n .post('login', {\r\n username: request.username,\r\n password: request.password,\r\n }, {withCredentials: false})\r\n .pipe(\r\n tap((response) => {\r\n // Save tokens\r\n this.tokenStorage.setAccessToken(response.accessToken);\r\n this.tokenStorage.setRefreshToken(response.refreshToken);\r\n\r\n // Start token refresh process\r\n this.refreshTokenService.startRefreshTokenTimer();\r\n }),\r\n );\r\n }\r\n\r\n /**\r\n * Logs out the user on back- and frontend.\r\n */\r\n public logout(): void {\r\n this.api\r\n .post('logout', {})\r\n .pipe(\r\n finalize(\r\n () => {\r\n this.tokenStorage.setAccessToken(null);\r\n this.tokenStorage.setRefreshToken(null);\r\n },\r\n ),\r\n )\r\n .subscribe();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Policy} from './policies/policy';\r\nimport {TokenStorageService} from './token-storage.service';\r\nimport {Observable} from 'rxjs';\r\nimport {Token} from './token';\r\nimport {map, switchMap} from 'rxjs/operators';\r\nimport {RightService} from './right.service';\r\nimport {Right} from './right';\r\n\r\nexport interface IsAuthorizedResult {\r\n isAuthorized: boolean;\r\n error?: 'notAuthenticated' | 'missingRight';\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthorizationService {\r\n\r\n public constructor(\r\n private rightService: RightService,\r\n private tokenStorage: TokenStorageService,\r\n ) {\r\n }\r\n\r\n public authorize$(policy: Policy, requiredProgramId?: number): Observable {\r\n return this.rightService\r\n .rights$\r\n .pipe(\r\n switchMap(\r\n rights => this.tokenStorage\r\n .token$\r\n .pipe(map(token => this.isAuthorized(token, policy, requiredProgramId, rights))),\r\n ),\r\n );\r\n }\r\n\r\n private isAuthorized(token: Token | null, policy: Policy, requiredProgramId?: number, rights?: Right[]): IsAuthorizedResult {\r\n const result: IsAuthorizedResult = {\r\n isAuthorized: false,\r\n };\r\n\r\n if (policy === Policy.Anonymous) {\r\n result.isAuthorized = true;\r\n return result;\r\n }\r\n\r\n if (policy === Policy.Authenticated) {\r\n\r\n // Check if the user is logged in.\r\n if (!token) {\r\n result.isAuthorized = false;\r\n result.error = 'notAuthenticated';\r\n return result;\r\n }\r\n\r\n // Check if the user has the right 'isAllowed\" to open the route.\r\n if (requiredProgramId && rights) {\r\n result.isAuthorized = rights.find(right => right.programId === requiredProgramId && right.rights.isAllowed) !== undefined;\r\n result.error = result.isAuthorized ? undefined : 'missingRight';\r\n return result;\r\n }\r\n\r\n result.isAuthorized = true;\r\n return result;\r\n }\r\n\r\n return result;\r\n }\r\n}\r\n","import {Route, Routes} from '@angular/router';\r\nimport {AuthGuardService} from '../auth-guard.service';\r\nimport {Policy} from '../policies/policy';\r\n\r\nexport interface AuthRoute extends Omit {\r\n policy?: Policy;\r\n requiredProgramId?: number;\r\n children?: AuthRoute[];\r\n}\r\n\r\nexport function routesWithAuthorization(routes: AuthRoute[]): Routes {\r\n return routes.map(({policy, requiredProgramId, children, ...route}): Route => ({\r\n ...route,\r\n canActivate: [AuthGuardService, ...(route.canActivateChild || [])],\r\n data: {\r\n policy,\r\n requiredProgramId,\r\n ...route.data,\r\n },\r\n children: children != null ? routesWithAuthorization(children) : undefined,\r\n }));\r\n}\r\n","import {ApiService} from '../../api/lib/api.service';\r\nimport {Injectable, OnDestroy} from '@angular/core';\r\nimport {FileAccessToken} from './file-access-token';\r\nimport {BehaviorSubject, Observable, Subject} from 'rxjs';\r\nimport {takeUntil, tap} from 'rxjs/operators';\r\nimport {TokenStorageService} from './token-storage.service';\r\n\r\n/**\r\n * This services stores and requests the file access token.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileAccessTokenService implements OnDestroy {\r\n private _token$ = new BehaviorSubject(null);\r\n private _destroyed$ = new Subject();\r\n\r\n public constructor(\r\n private apiService: ApiService,\r\n private tokenStorageService: TokenStorageService,\r\n ) {\r\n }\r\n\r\n /**\r\n * Subscribe to user token change to update the file access token accordingly.\r\n */\r\n public init(): void {\r\n this.tokenStorageService\r\n .token$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(token => {\r\n if (token) {\r\n this.getFileAccessToken();\r\n\r\n } else {\r\n this._token$.next(null);\r\n }\r\n });\r\n }\r\n\r\n public ngOnDestroy() {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public get token(): FileAccessToken | null {\r\n return this._token$.value;\r\n }\r\n\r\n public get token$(): Observable {\r\n return this._token$.asObservable();\r\n }\r\n\r\n private getFileAccessToken(): void {\r\n this.apiService.get('fileAccessToken')\r\n .subscribe(\r\n token => this._token$.next(token),\r\n () => this._token$.next(null),\r\n );\r\n }\r\n}\r\n","export enum Policy {\r\n Anonymous = 'Anonymous',\r\n Authenticated = 'Authenticated',\r\n\r\n // Todo Obsolete remove\r\n Admin = 'Admin',\r\n\r\n // Todo Obsolete remove\r\n User = 'User',\r\n}\r\n","export class RefreshToken {\r\n public readonly data: string;\r\n public readonly expiresAt: Date;\r\n\r\n public constructor(data: string) {\r\n const values = JSON.parse(atob(data.split('.')[1]));\r\n this.data = data;\r\n this.expiresAt = new Date(values.exp * 1000);\r\n }\r\n\r\n public get isExpired(): boolean {\r\n return this.expiresAt.getTime() < Date.now();\r\n }\r\n\r\n public toString(): string {\r\n return this.data;\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ApiService} from '../../api/lib/api.service';\r\nimport {Right} from './right';\r\nimport {Observable, of} from 'rxjs';\r\nimport {catchError} from 'rxjs/operators';\r\nimport {TokenStorageService} from './token-storage.service';\r\n\r\n/**\r\n * This service loads and stores the current user rights.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RightService {\r\n /**\r\n * Rights observable with cached rights.\r\n */\r\n public readonly rights$ = new Observable((observer) => {\r\n // Return cached rights\r\n if (this._rights.length) {\r\n observer.next(this._rights);\r\n observer.complete();\r\n\r\n // Get rights from server if user is logged in\r\n } else if (this.tokenStorageService.token) {\r\n this.apiService\r\n .get(this._endpointUrl)\r\n .pipe(catchError(error => of([])))\r\n .subscribe(\r\n (data) => {\r\n this._rights = data;\r\n observer.next(this._rights);\r\n observer.complete();\r\n },\r\n );\r\n\r\n // Return empty right\r\n } else {\r\n this._rights = [];\r\n observer.next(this._rights);\r\n observer.complete();\r\n }\r\n\r\n return {\r\n unsubscribe: (): void => {\r\n },\r\n };\r\n });\r\n\r\n private _rights: Right[] = [];\r\n\r\n private readonly _endpointUrl: string = 'rights';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private tokenStorageService: TokenStorageService,\r\n ) {\r\n }\r\n\r\n /**\r\n * Returns the current loaded rights.\r\n */\r\n public get rights(): Right[] {\r\n return this._rights;\r\n }\r\n\r\n /**\r\n * Checks if the user has a certain right (key) for a program.\r\n * Assumptions is, that the rights have already been loaded during routing.\r\n *\r\n * @param programId\r\n * @param key E.g. 'isAllowed', 'download', ...\r\n */\r\n public hasRight(programId: number, key: string): boolean {\r\n return this._rights?.find(right => right.programId === programId && right.rights[key]) !== undefined;\r\n }\r\n\r\n}\r\n","import {HostListener, Injectable} from '@angular/core';\r\nimport Timeout = NodeJS.Timeout;\r\nimport {Observable, of, Subscription, throwError} from 'rxjs';\r\nimport {ApiService} from '../../api/lib/api.service';\r\nimport {catchError, take, tap} from 'rxjs/operators';\r\nimport {TokenStorageService} from './token-storage.service';\r\nimport {LoginResponse} from './payloads/login-response';\r\nimport {HttpErrorResponse} from '@angular/common/http';\r\nimport {PlatformService} from '../../platform/platform.service';\r\n\r\n/**\r\n * This service is responsible for token refreshing.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TokenRefreshService {\r\n private refreshTokenTimeout: Timeout | null = null;\r\n\r\n private hasLock: boolean = false;\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private platformService: PlatformService,\r\n private tokenStorageService: TokenStorageService,\r\n ) {\r\n // Release lock on closing page.\r\n window.addEventListener('beforeunload', (event) => this.clearRefreshTokenLock());\r\n\r\n // Keep lock saved in service in sync with local storage lock.\r\n window.addEventListener('storage', () => {\r\n const lock = localStorage.getItem(TOKEN_REFRESH_LOCK_KEY);\r\n\r\n if (!lock) {\r\n this.hasLock = false;\r\n }\r\n });\r\n\r\n // Stop refresh process timer and release lock on logout.\r\n this.tokenStorageService.tokenChanged$.subscribe(\r\n token => {\r\n if (!token) {\r\n this.stopRefreshTokenTimer();\r\n this.clearRefreshTokenLock();\r\n }\r\n },\r\n );\r\n }\r\n\r\n /**\r\n * Starts the timer to refresh the tokens.\r\n */\r\n public startRefreshTokenTimer(): void {\r\n const currentToken = this.tokenStorageService.token;\r\n let timeout = 0;\r\n\r\n this.stopRefreshTokenTimer(); // stop an other possible started timer.\r\n\r\n if (!currentToken) {\r\n return;\r\n }\r\n\r\n // If token is expired wait 10 seconds to refresh. E.g. in case if BE was offline and token couldn't be refreshed.\r\n // So we try again every minute.\r\n if (currentToken.isExpired) {\r\n timeout = 10000;\r\n\r\n // Set a timeout to refresh the token 3 minutes before it expires.\r\n // If there are no more 3 minutes left then refresh the token without 10 second delay\r\n } else {\r\n timeout = currentToken.expiresAt.getTime() - Date.now() - (3 * 60 * 1000);\r\n timeout = timeout <= 0 ? 10000 : timeout;\r\n }\r\n\r\n this.refreshTokenTimeout = setTimeout(() => this.refreshToken(), timeout);\r\n }\r\n\r\n /**\r\n * Refreshes the tokens.\r\n *\r\n * @private\r\n */\r\n public refreshToken(): Subscription {\r\n // Locking mechanism only on web\r\n if (!this.platformService.isNativePlatform()) {\r\n // Check if process is already locked\r\n const lock = localStorage.getItem(TOKEN_REFRESH_LOCK_KEY);\r\n\r\n if (lock && !this.hasLock) {\r\n return of().subscribe(response => this.startRefreshTokenTimer());\r\n }\r\n\r\n // Acquire lock\r\n localStorage.setItem(TOKEN_REFRESH_LOCK_KEY, Date.now() + '');\r\n this.hasLock = true;\r\n }\r\n\r\n return this.apiService\r\n .post<{ refreshToken: string | undefined }, LoginResponse>(\r\n 'refresh-token',\r\n {\r\n refreshToken: this.tokenStorageService.refreshToken?.data,\r\n })\r\n .pipe(\r\n take(1),\r\n // On error stop refreshing tokens and clear saved tokens\r\n catchError((error: HttpErrorResponse) => {\r\n // Logout on not auth error\r\n if (error.status === 401) {\r\n this.tokenStorageService.setAccessToken(null);\r\n this.tokenStorageService.setRefreshToken(null);\r\n return throwError(error);\r\n }\r\n\r\n // On all other errors try again with same tokens.\r\n return of({\r\n accessToken: this.tokenStorageService.token?.data || '',\r\n refreshToken: this.tokenStorageService.refreshToken?.data || '',\r\n });\r\n },\r\n ),\r\n )\r\n .subscribe(\r\n response => {\r\n // Save tokens and start a new refresh round\r\n this.tokenStorageService.setAccessToken(response.accessToken);\r\n this.tokenStorageService.setRefreshToken(response.refreshToken);\r\n\r\n this.startRefreshTokenTimer();\r\n },\r\n );\r\n }\r\n\r\n /**\r\n * Stops the token refresh timer.\r\n *\r\n * @private\r\n */\r\n public stopRefreshTokenTimer(): void {\r\n if (this.refreshTokenTimeout) {\r\n clearTimeout(this.refreshTokenTimeout);\r\n }\r\n }\r\n\r\n public clearRefreshTokenLock(): void {\r\n if (!this.platformService.isNativePlatform()) { // We have the locking mechanism only on web\r\n this.hasLock = false;\r\n localStorage.removeItem(TOKEN_REFRESH_LOCK_KEY);\r\n }\r\n }\r\n}\r\n\r\nconst TOKEN_REFRESH_LOCK_KEY = 'Monari.B2B.TokenRefreshLock';\r\n","import {Injectable} from '@angular/core';\r\nimport {isString} from 'lodash';\r\nimport {BehaviorSubject, Observable, Subject} from 'rxjs';\r\nimport {Token} from './token';\r\nimport {RefreshToken} from './refresh-token';\r\nimport { Preferences } from '@capacitor/preferences';\r\n\r\n/**\r\n * This service handles the storage of the access and refresh tokens.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TokenStorageService {\r\n private _token$ = new BehaviorSubject(null);\r\n private _tokenChanged$ = new Subject();\r\n private _storedTokenChanged$ = new Subject();\r\n private _refreshToken$ = new BehaviorSubject(null);\r\n\r\n public constructor() {\r\n }\r\n\r\n /**\r\n * Read possible tokens from local storage and load into service on app start.\r\n */\r\n public async load(): Promise {\r\n this.setRefreshToken(await this.readToken(REFRESH_TOKEN_KEY), true);\r\n this.setAccessToken(await this.readToken(ACCESS_TOKEN_KEY), true);\r\n\r\n window.addEventListener('storage', async () => {\r\n if (this.setAccessToken(await this.readToken(ACCESS_TOKEN_KEY), true)) {\r\n this._storedTokenChanged$.next(this.token);\r\n }\r\n if (this.setRefreshToken(await this.readToken(REFRESH_TOKEN_KEY), true)) {\r\n\r\n }\r\n });\r\n }\r\n\r\n public get token(): Token | null {\r\n return this._token$.getValue();\r\n }\r\n\r\n public get token$(): Observable {\r\n return this._token$.asObservable();\r\n }\r\n\r\n public get tokenChanged$(): Observable {\r\n return this._tokenChanged$.asObservable();\r\n }\r\n\r\n public get refreshToken(): RefreshToken | null {\r\n return this._refreshToken$.value;\r\n }\r\n\r\n public get refreshToken$(): Observable {\r\n return this._refreshToken$.asObservable();\r\n }\r\n\r\n /**\r\n * Wenn das Token in einem anderen Browser-Tab geändert wurde. (z.B. durch login/logout)\r\n */\r\n public get storedTokenChanged$(): Observable {\r\n return this._storedTokenChanged$.asObservable();\r\n }\r\n\r\n /**\r\n * Sets the current access token.\r\n *\r\n * @param data\r\n * @param wasRead\r\n */\r\n public setAccessToken(data: string | null, wasRead: boolean = false): boolean {\r\n const currentData = this.token?.data || null;\r\n\r\n if (currentData === data) {\r\n return false;\r\n }\r\n\r\n const token = data != null ? new Token(data) : null;\r\n\r\n this._token$.next(token);\r\n\r\n if (!wasRead) {\r\n this.writeToken(data, ACCESS_TOKEN_KEY);\r\n }\r\n\r\n this._tokenChanged$.next(token);\r\n return true;\r\n }\r\n\r\n /**\r\n * Sets the current refresh token.\r\n *\r\n * @param data\r\n * @param wasRead\r\n */\r\n public setRefreshToken(data: string | null, wasRead: boolean = false): boolean {\r\n const currentData = this.refreshToken?.data || null;\r\n\r\n if (currentData === data) {\r\n return false;\r\n }\r\n\r\n const token = data != null ? new RefreshToken(data) : null;\r\n\r\n this._refreshToken$.next(token);\r\n\r\n if (!wasRead) {\r\n this.writeToken(data, REFRESH_TOKEN_KEY);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Writes a the token to the local storage in web, UserDefaults on iOS and SharedPreferences on android.\r\n *\r\n * @param token Token to save.\r\n * @param key ACCESS_TOKEN_KEY or REFRESH_TOKEN_KEY to save the specific token.\r\n * @private\r\n */\r\n private async writeToken(token: string | null, key: string): Promise {\r\n if (token == null) {\r\n await Preferences.remove({\r\n key,\r\n });\r\n\r\n } else {\r\n await Preferences.set({\r\n key,\r\n value: token\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Reads a token from the local storage in web, UserDefaults on iOS and SharedPreferences on android.\r\n *\r\n * @param key ACCESS_TOKEN_KEY or REFRESH_TOKEN_KEY to read the specific token.\r\n * @private\r\n */\r\n private async readToken(key: string): Promise {\r\n const {value} = await Preferences.get({key});\r\n return isString(value) ? value : null;\r\n }\r\n}\r\n\r\nconst ACCESS_TOKEN_KEY = 'Monari.B2B.AccessToken';\r\nconst REFRESH_TOKEN_KEY = 'Monari.B2B.RefreshToken';\r\n","import {Role} from './policies/role';\r\n\r\nexport class Token {\r\n public readonly data: string;\r\n public readonly userId: number;\r\n public readonly name: string;\r\n public readonly email: string;\r\n public readonly roles: Role[]; // ToDo Obsolete, remove\r\n public readonly expiresAt: Date;\r\n\r\n public constructor(data: string) {\r\n const values = JSON.parse(atob(data.split('.')[1]));\r\n\r\n let roles: Role[];\r\n\r\n if (values.role != null) {\r\n roles = Array.isArray(values.role) ? values.role : [values.role];\r\n } else {\r\n roles = [];\r\n }\r\n\r\n this.data = data;\r\n this.userId = Number.parseInt(values.sub, 10);\r\n this.name = values.name;\r\n this.email = values.email;\r\n this.roles = roles;\r\n this.expiresAt = new Date(values.exp * 1000);\r\n }\r\n\r\n public get isExpired(): boolean {\r\n return this.expiresAt.getTime() < Date.now();\r\n }\r\n\r\n public toString(): string {\r\n return this.data;\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {tap} from 'rxjs/operators';\r\n\r\ninterface Configuration {\r\n endpointUrl: string;\r\n endpointUrl2: string;\r\n apiVersion: string;\r\n}\r\n\r\n/**\r\n * Service to load the config.json file.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ConfigService {\r\n private readonly _configUrl = 'assets/config/config.json';\r\n private _configuration?: Configuration;\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n public get configuration(): Configuration {\r\n return this._configuration || {} as Configuration;\r\n }\r\n\r\n /**\r\n * Load function is called once during app initialisation.\r\n */\r\n public load(): Promise {\r\n if (!this._configuration) {\r\n return this.http\r\n .get(this._configUrl)\r\n .pipe(\r\n tap(\r\n config => this._configuration = config,\r\n ),\r\n ).toPromise();\r\n }\r\n\r\n return Promise.resolve(this.configuration);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {TranslatePipe} from './i18n/lib/translate.pipe';\r\nimport {DatePipe} from './i18n/lib/date.pipe';\r\nimport {ArticleImgDirective} from './img/article-img.directive';\r\nimport { PrivateImgDirective } from './img/private-img.directive';\r\nimport { MoBypassSecurityTrustUrlPipe } from './utils/mo-bypass-security-trust-url.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n DatePipe,\r\n TranslatePipe,\r\n ArticleImgDirective,\r\n PrivateImgDirective,\r\n MoBypassSecurityTrustUrlPipe,\r\n ],\r\n providers: [],\r\n exports: [\r\n DatePipe,\r\n TranslatePipe,\r\n ArticleImgDirective,\r\n PrivateImgDirective,\r\n MoBypassSecurityTrustUrlPipe,\r\n ],\r\n})\r\nexport class CoreModule {\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {TranslatorService} from '../i18n/lib/translator.service';\r\nimport {format as formatDate} from 'date-fns';\r\nimport {parseDate} from './parse-date';\r\nimport {Language} from '../i18n/lib/language';\r\nimport de from 'date-fns/locale/de';\r\nimport en from 'date-fns/locale/en-US';\r\nimport fr from 'date-fns/locale/fr';\r\nimport it from 'date-fns/locale/it';\r\nimport nl from 'date-fns/locale/nl';\r\nimport es from 'date-fns/locale/es';\r\nimport tr from 'date-fns/locale/tr';\r\nimport ru from 'date-fns/locale/ru';\r\nimport el from 'date-fns/locale/el';\r\nimport pl from 'date-fns/locale/pl';\r\nimport pt from 'date-fns/locale/pt';\r\nimport {memoizeOne} from '../utils/memoize-one';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DateFormatterService {\r\n public constructor(private translator: TranslatorService) {\r\n }\r\n\r\n public formatDate(value: Date | string | number, formatOrType: string): string {\r\n const date = parseDate(value);\r\n const language = this.translator.language;\r\n const format =\r\n isDateFormatType(formatOrType)\r\n ? getFormatTypes(language)[formatOrType]\r\n : formatOrType;\r\n\r\n return formatDate(date, format, getFormatOptions(language));\r\n }\r\n}\r\n\r\nconst getFormatOptions = memoizeOne((language: Language) => ({\r\n locale: {\r\n de,\r\n en,\r\n fr,\r\n it,\r\n nl,\r\n es,\r\n tr,\r\n ru,\r\n el,\r\n pl,\r\n pt,\r\n }[language],\r\n weekStartsOn: 1 as const,\r\n useAdditionalWeekYearTokens: true,\r\n useAdditionalDayOfYearTokens: true,\r\n}));\r\n\r\nconst getFormatTypes = memoizeOne((language: Language): { [P in DateFormatType]: string } => {\r\n const defaults = {\r\n short: 'dd.MM.yyyy, HH:mm',\r\n long: 'EE. dd.MM.yyyy, HH:mm',\r\n\r\n shortDate: 'dd.MM.yyyy',\r\n longDate: 'EE. dd.MM.yyyy',\r\n\r\n shortTime: 'HH:mm',\r\n longTime: 'HH:mm',\r\n };\r\n\r\n switch (language) {\r\n case 'en':\r\n return {\r\n ...defaults,\r\n\r\n short: 'yyyy-MM-dd, h:mm a',\r\n long: 'EE. yyyy-MM-dd, h:mm a',\r\n\r\n shortDate: 'yyyy-MM-dd',\r\n longDate: 'EE. yyyy-MM-dd',\r\n\r\n shortTime: 'h:mm a',\r\n };\r\n\r\n default:\r\n return defaults;\r\n }\r\n});\r\n\r\nconst dateFormatTypes = [\r\n 'short',\r\n 'long',\r\n\r\n 'shortDate',\r\n 'longDate',\r\n\r\n 'shortTime',\r\n 'longTime',\r\n] as const;\r\n\r\ntype DateFormatType = ArrayElementType;\r\n\r\nfunction isDateFormatType(value: string): value is DateFormatType {\r\n return dateFormatTypes.includes(value as DateFormatType);\r\n}\r\n","import {parseISO} from 'date-fns';\r\n\r\nexport function parseDate(value: Date | string | number): Date {\r\n if (typeof value === 'number') {\r\n return new Date(value);\r\n }\r\n\r\n if (typeof value === 'string') {\r\n return parseISO(value);\r\n }\r\n\r\n return value;\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DateFormatterService} from '../../date/date-formatter.service';\r\n\r\n@Pipe({\r\n name: 'moDate',\r\n})\r\nexport class DatePipe implements PipeTransform {\r\n public constructor(private formatter: DateFormatterService) {\r\n }\r\n\r\n public transform(value: Date | string | number | null | undefined, formatOrType: string): string | null {\r\n if (value == null) {\r\n return null;\r\n }\r\n\r\n return this.formatter.formatDate(value, formatOrType);\r\n }\r\n}\r\n","export type Language = ArrayElementType;\r\n\r\nexport const defaultLanguage = 'en';\r\n\r\nexport function isValidLanguage(value: string): value is Language {\r\n return supportedLanguages.includes(value as Language);\r\n}\r\n\r\nconst supportedLanguages = [\r\n 'de',\r\n 'en',\r\n 'fr',\r\n 'it',\r\n 'nl',\r\n 'es',\r\n 'tr',\r\n 'ru',\r\n 'el',\r\n 'pl',\r\n 'pt',\r\n] as const;\r\n","import {OnDestroy, Pipe, PipeTransform} from '@angular/core';\r\nimport {TranslatorService} from './translator.service';\r\nimport {Unsubscribable} from 'rxjs';\r\nimport {Translation} from './translation';\r\n\r\n@Pipe({\r\n name: 'moTranslate',\r\n pure: false,\r\n})\r\nexport class TranslatePipe implements PipeTransform, OnDestroy {\r\n private translation: Translation | null = null;\r\n private subscription: Unsubscribable | null = null;\r\n\r\n public constructor(private translator: TranslatorService) {\r\n }\r\n\r\n public transform(value: string, placeholders?: Record): string {\r\n if (!this.translation || value !== this.translation.key) {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n this.translation = this.translator.trans$(value);\r\n this.subscription = this.translation.subscribe();\r\n }\r\n\r\n return this.translation.getValue(placeholders) ?? this.translation.key;\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n this.subscription = null;\r\n }\r\n }\r\n}\r\n","import {Observable, PartialObserver, Subscribable, Unsubscribable} from 'rxjs';\r\nimport {tap} from 'rxjs/operators';\r\nimport {replaceTranslationPlaceholders} from './utils/replace-translation-placeholders';\r\n\r\nexport class Translation implements Subscribable {\r\n public readonly key: string;\r\n\r\n private _value: string | undefined;\r\n private _provider: Observable | null = null;\r\n private _providerFactory: (key: string) => Observable;\r\n\r\n public constructor(key: string, value: string | undefined, providerFactory: (key: string) => Observable) {\r\n this.key = key;\r\n this._value = value;\r\n this._providerFactory = providerFactory;\r\n }\r\n\r\n public getValue(placeholders?: Record): string | undefined {\r\n if (placeholders == null) {\r\n return this._value;\r\n }\r\n\r\n if (this._value == null) {\r\n return undefined;\r\n }\r\n\r\n return replaceTranslationPlaceholders(this._value, placeholders);\r\n }\r\n\r\n public subscribe(\r\n observer?: PartialObserver | null | undefined | ((value: string) => void),\r\n error?: null | undefined | ((error: unknown) => void),\r\n complete?: () => void,\r\n ): Unsubscribable {\r\n if (this._provider == null) {\r\n this._provider = this._providerFactory(this.key).pipe(tap(message => {\r\n this._value = message;\r\n }));\r\n }\r\n\r\n return this._provider.subscribe(...arguments);\r\n }\r\n}\r\n","import {Injectable, OnDestroy} from '@angular/core';\r\nimport {BehaviorSubject, Observable, Subject} from 'rxjs';\r\nimport {ApiService} from '../../api/lib/api.service';\r\nimport {Translation} from './translation';\r\nimport bind from 'bind-decorator';\r\nimport {filter, map, switchMap, takeUntil} from 'rxjs/operators';\r\nimport {defaultLanguage, isValidLanguage, Language} from './language';\r\nimport {TranslationResponse} from './payloads/translation-response';\r\nimport {UserSettingsService} from '../../user/lib/user-settings.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TranslatorService implements OnDestroy {\r\n private _language$ = new BehaviorSubject(detectBrowserLanguage());\r\n private _messages$ = new BehaviorSubject(new Map());\r\n private _destroyed$ = new Subject();\r\n\r\n public constructor(\r\n private api: ApiService,\r\n private userSettingsService: UserSettingsService,\r\n ) {\r\n }\r\n\r\n public init(): void {\r\n // Update language by user settings.\r\n this.userSettingsService\r\n .userSettings$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n map(userSettings => userSettings?.language ?? detectBrowserLanguage()),\r\n filter(language => language !== this._language$.getValue()),\r\n )\r\n .subscribe((language) => {\r\n this._language$.next(language);\r\n });\r\n\r\n // Load translations.\r\n this._language$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n switchMap(language => this.api.get('translations/{language}', {params: {language}})),\r\n )\r\n .subscribe((response) => {\r\n const messages = this._messages$.getValue();\r\n\r\n for (const [key, message] of Object.entries(response.messages)) {\r\n messages.set(key, message);\r\n }\r\n\r\n this._messages$.next(messages);\r\n });\r\n }\r\n\r\n public get language(): Language {\r\n return this._language$.getValue();\r\n }\r\n\r\n public get language$(): Observable {\r\n return this._language$.asObservable();\r\n }\r\n\r\n public get messages$(): Observable> {\r\n return this._messages$.asObservable();\r\n }\r\n\r\n public trans$(key: string): Translation {\r\n return new Translation(key, this._messages$.getValue().get(key), this.createMessageProvider);\r\n }\r\n\r\n @bind\r\n private createMessageProvider(key: string): Observable {\r\n return new Observable((observer) => {\r\n let lastMessage = this._messages$.getValue().get(key);\r\n\r\n if (lastMessage != null) {\r\n observer.next(lastMessage);\r\n }\r\n\r\n return this._messages$.subscribe(messages => {\r\n const message = messages.get(key);\r\n\r\n if (message !== lastMessage) {\r\n observer.next(lastMessage = message);\r\n }\r\n });\r\n });\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n}\r\n\r\nfunction detectBrowserLanguage(): Language {\r\n const languages =\r\n Array.isArray(navigator.languages)\r\n ? navigator.languages\r\n : (navigator.language ? [navigator.language] : []);\r\n\r\n for (const language of languages) {\r\n const iso2 = getIso2(language);\r\n\r\n if (isValidLanguage(iso2)) {\r\n return iso2;\r\n }\r\n }\r\n\r\n return defaultLanguage;\r\n}\r\n\r\nfunction getIso2(language: string): string {\r\n const index = language.indexOf('-');\r\n\r\n return index !== -1 ? language.slice(0, index) : language;\r\n}\r\n","export function replaceTranslationPlaceholders(message: string, placeholders: Record): string {\r\n return message.replace(rePattern, (match) => {\r\n const key = match.substring(2,match.length-2);\r\n const result = placeholders[key];\r\n if (result != null) {\r\n return result;\r\n }\r\n\r\n throw new RangeError(`Missing translation parameter \"${key}\" for message: ${message}`);\r\n });\r\n}\r\n\r\nconst rePattern = /\\{\\{[a-zA-Z]+\\}\\}/g;\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnChanges, SimpleChanges} from '@angular/core';\r\nimport {ApiService} from '../api/lib/api.service';\r\nimport {FileAccessTokenService} from '../auth/lib/file-access-token.service';\r\n\r\n@Directive({\r\n selector: '[moArticleImg]',\r\n})\r\nexport class ArticleImgDirective implements AfterViewInit, OnChanges {\r\n @Input()\r\n public resolution: 50 | 100 | 200 | 400 | 600 | 1200 = 50;\r\n\r\n @Input()\r\n public format: 'webp' | 'png' | 'jpg' = 'webp';\r\n\r\n @Input()\r\n public colorSpace: 'rgb' | 'cmyk' = 'rgb';\r\n\r\n @Input()\r\n public moArticleImg?: string;\r\n\r\n @HostBinding('attr.src')\r\n private srcAttr?: string;\r\n\r\n constructor(\r\n private fileAccessTokenService: FileAccessTokenService,\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.loadImage();\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.loadImage();\r\n }\r\n\r\n private async loadImage(): Promise {\r\n if (!this.moArticleImg) {\r\n return;\r\n }\r\n\r\n const fileAccessToken = this.fileAccessTokenService.token?.data;\r\n\r\n if (fileAccessToken) {\r\n this.srcAttr = this.apiService.endpointUrl\r\n + 'media/'\r\n + this.resolution + '/'\r\n + this.format\r\n + '/false/'\r\n + fileAccessToken + '/'\r\n + this.moArticleImg;\r\n }\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnChanges, SimpleChanges} from '@angular/core';\r\nimport {FileAccessTokenService} from '../auth/lib/file-access-token.service';\r\nimport {ApiService} from '../api/lib/api.service';\r\n\r\n@Directive({\r\n selector: '[moPrivateImg]'\r\n})\r\nexport class PrivateImgDirective implements AfterViewInit, OnChanges {\r\n @Input()\r\n public moPrivateImg?: string;\r\n\r\n @HostBinding('attr.src')\r\n private srcAttr?: string;\r\n\r\n private readonly mediaEndpoint: string = 'private/media/';\r\n\r\n constructor(\r\n private fileAccessTokenService: FileAccessTokenService,\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.loadImage();\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.loadImage();\r\n }\r\n\r\n private async loadImage(): Promise {\r\n if (!this.moPrivateImg) {\r\n return;\r\n }\r\n\r\n const fileAccessToken = this.fileAccessTokenService.token?.data;\r\n\r\n if (fileAccessToken) {\r\n this.srcAttr = this.apiService.endpointUrl\r\n + this.mediaEndpoint\r\n + fileAccessToken + '/'\r\n + this.moPrivateImg;\r\n }\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ApiService} from '../api/lib/api.service';\r\n\r\n/**\r\n * Service which provides urls to essential public images.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PublicImgUrlService {\r\n private readonly _endpointPublicMedia: string = 'public/media/';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public get endpointPublicMedia(): string {\r\n return this.apiService.endpointUrl + this._endpointPublicMedia;\r\n }\r\n\r\n public get loginBackgroundImgUrl(): string {\r\n return this.endpointPublicMedia + 'login-bg.webp';\r\n }\r\n\r\n public get registrationBackgroundImgUrl(): string {\r\n return this.endpointPublicMedia + 'registration-bg.webp';\r\n }\r\n\r\n public get restorePasswordBackgroundImgUrl(): string {\r\n return this.endpointPublicMedia + 'restore-password-bg.webp';\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Keyboard} from '@capacitor/keyboard';\r\n\r\n/**\r\n * This Service provides keyboard visibility control of the native iOS and android keyboards.\r\n * This service wraps the Capacitor Keyboard API.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class KeyboardService {\r\n private _keyboard = Keyboard;\r\n\r\n constructor() {\r\n }\r\n\r\n /**\r\n * Shows the keyboard.\r\n */\r\n public async show(): Promise {\r\n try {\r\n await this._keyboard.show();\r\n\r\n } catch {\r\n // On error nothing to do. Keyboard is not available on desktop browsers.\r\n }\r\n }\r\n\r\n /**\r\n * Hides the keyboard.\r\n */\r\n public async hide(): Promise {\r\n\r\n try {\r\n await this._keyboard.hide();\r\n\r\n } catch {\r\n // On error nothing to do. Keyboard is not available on desktop browsers.\r\n }\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {BreakpointObserver, BreakpointState} from '@angular/cdk/layout';\r\nimport {CssVariableService} from './css-variable.service';\r\nimport {CssVariables} from './css-variables.enum';\r\nimport {Observable} from 'rxjs';\r\n\r\n/**\r\n * This service provides some functionality to work with the apps breakpoints.\r\n * It wraps the BreakpointObserver of the angular CDK. See https://material.angular.io/cdk/layout/overview.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class BreakpointService {\r\n public readonly breakpointXs: string = '';\r\n public readonly breakpointSm: string = '';\r\n public readonly breakpointMd: string = '';\r\n public readonly breakpointLg: string = '';\r\n public readonly breakpointXl: string = '';\r\n\r\n constructor(\r\n private cssVariableService: CssVariableService,\r\n private breakpointObserver: BreakpointObserver,\r\n ) {\r\n // Sets initial the breakpoints in px. So we can access them in the service.\r\n this.breakpointXs = this.cssVariableService.getCssVariableValue(CssVariables.breakpointXs);\r\n this.breakpointSm = this.cssVariableService.getCssVariableValue(CssVariables.breakpointSm);\r\n this.breakpointMd = this.cssVariableService.getCssVariableValue(CssVariables.breakpointMd);\r\n this.breakpointLg = this.cssVariableService.getCssVariableValue(CssVariables.breakpointLg);\r\n this.breakpointXl = this.cssVariableService.getCssVariableValue(CssVariables.breakpointXl);\r\n }\r\n\r\n /**\r\n * Whether one or more media queries match the current viewport size.\r\n * @param value One or more media queries to check.\r\n * @returns Whether any of the media queries match.\r\n * @example '(min-width: 599px)' or ['(min-width: 599px)', '(max-width: 599px)']\r\n */\r\n public isMatched(value: string | readonly string[]): boolean {\r\n return this.breakpointObserver.isMatched(value);\r\n }\r\n\r\n /**\r\n * Gets an observable of results for the given queries that will emit new results for any changes\r\n * in matching of the given queries.\r\n * @param value One or more media queries to check.\r\n * @returns A stream of matches for the given queries.\r\n * @example ['(orientation: portrait)','(orientation: landscape)',]\r\n */\r\n public observe(value: string | readonly string[]): Observable {\r\n return this.breakpointObserver.observe(value);\r\n }\r\n\r\n public get isXsScreen(): boolean {\r\n const value = +this.breakpointSm.replace('px', '');\r\n return this.breakpointObserver.isMatched('(max-width: ' + (value - 1) + 'px)');\r\n }\r\n\r\n public get isSmScreen(): boolean {\r\n const endValue = +this.breakpointMd.replace('px', '');\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointSm + ')')\r\n && this.breakpointObserver.isMatched('(max-width: ' + (endValue - 1) + 'px)');\r\n }\r\n\r\n public get isMdScreen(): boolean {\r\n const endValue = +this.breakpointLg.replace('px', '');\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointMd + ')')\r\n && this.breakpointObserver.isMatched('(max-width: ' + (endValue - 1) + 'px)');\r\n }\r\n\r\n public get isLgScreen(): boolean {\r\n const endValue = +this.breakpointXl.replace('px', '');\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointLg + ')')\r\n && this.breakpointObserver.isMatched('(max-width: ' + (endValue - 1) + 'px)');\r\n }\r\n\r\n public get isXlScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointXl + ')');\r\n }\r\n\r\n public get isGreaterOrEqualXsScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointXs + ')');\r\n }\r\n\r\n public get isGreaterOrEqualSmScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointSm + ')');\r\n }\r\n\r\n public get isGreaterOrEqualMdScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointMd + ')');\r\n }\r\n\r\n public get isGreaterOrEqualLgScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointLg + ')');\r\n }\r\n\r\n public get isGreaterOrEqualXlScreen(): boolean {\r\n return this.breakpointObserver.isMatched('(min-width: ' + this.breakpointXl + ')');\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {CssVariables} from './css-variables.enum';\r\n\r\n/**\r\n * This Service provides access to css variables.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CssVariableService {\r\n\r\n public readonly variables = CssVariables;\r\n\r\n constructor() {\r\n }\r\n\r\n public getCssVariableValue(variableName: CssVariables): string {\r\n return getComputedStyle(document.documentElement).getPropertyValue(variableName);\r\n }\r\n\r\n public setCssVariableValue(variableName: CssVariables, value: string): void {\r\n document.documentElement.style.setProperty(variableName, value);\r\n }\r\n\r\n}\r\n","/**\r\n * Lists all css variables which can be accessed via the CssVariableService.\r\n */\r\nexport enum CssVariables {\r\n // Fonts & Typo\r\n fontSize = '--fontSize',\r\n typoRatio = '--typoRatio',\r\n\r\n // Colors\r\n blackColor = '--blackColor',\r\n whiteColor = '--whiteColor',\r\n grayColor = '--grayColor',\r\n lightGrayColor = '--lightGrayColor',\r\n redColor = '--redColor',\r\n\r\n // Z-Indexes\r\n zIndexTopBar = '--zIndexTopBar',\r\n zIndexSideBar = '--zIndexSideBar',\r\n\r\n // Breakpoints\r\n breakpointXs = '--breakpointXs',\r\n breakpointSm = '--breakpointSm',\r\n breakpointMd = '--breakpointMd',\r\n breakpointLg = '--breakpointLg',\r\n breakpointXl = '--breakpointXl',\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 ScrollbarService {\r\n\r\n private _scrollbarsDisabled$ = new BehaviorSubject(false);\r\n\r\n constructor() {\r\n }\r\n\r\n public get scrollbarsDisabled(): boolean {\r\n return this._scrollbarsDisabled$.value;\r\n }\r\n\r\n public get scrollbarsDisabled$(): Observable {\r\n return this._scrollbarsDisabled$.asObservable();\r\n }\r\n\r\n /**\r\n * Disables or enables the app scrollbars.\r\n *\r\n * @param hide true to disable the scrollbars. False to enable the scrollbars.\r\n */\r\n public disableAppScrollbars(disable: boolean): void {\r\n window.document.documentElement.style.setProperty('--overflow-x', disable ? 'hidden' : 'auto');\r\n window.document.documentElement.style.setProperty('--overflow-y', disable ? 'hidden' : 'auto');\r\n this._scrollbarsDisabled$.next(disable);\r\n }\r\n\r\n}\r\n","import {ApplicationRef, Injectable} from '@angular/core';\r\nimport {App, AppInfo, AppState, BackButtonListenerEvent} from '@capacitor/app';\r\nimport {TokenRefreshService} from '../../auth/lib/token-refresh.service';\r\nimport {TokenStorageService} from '../../auth/lib/token-storage.service';\r\n\r\nexport interface Overlay {\r\n visible: boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NativeAppService {\r\n private _app = App;\r\n\r\n private _overlayHistory: Overlay[] = [];\r\n\r\n constructor(\r\n private appRef: ApplicationRef,\r\n private tokenStorageService: TokenStorageService,\r\n private tokenRefreshService: TokenRefreshService,\r\n ) {\r\n }\r\n\r\n /**\r\n * Returns information about the app e.g. build, version and name.\r\n */\r\n public getInfo(): Promise {\r\n return this._app.getInfo();\r\n }\r\n\r\n public init(): void {\r\n this._app.addListener('backButton', (data: BackButtonListenerEvent) => {\r\n if (this._overlayHistory.length) {\r\n this._overlayHistory[this._overlayHistory.length - 1].visible = false; // Set last overlay visibility to false to close it.\r\n this.appRef.tick(); // Trigger change detection to rerender view\r\n return;\r\n }\r\n\r\n window.history.back();\r\n });\r\n\r\n this._app.addListener('appStateChange', (state: AppState) => {\r\n if (state.isActive && this.tokenStorageService.token && this.tokenStorageService.refreshToken) {\r\n this.tokenRefreshService.stopRefreshTokenTimer();\r\n this.tokenRefreshService.refreshToken();\r\n\r\n // Stop refresh token process if app is not active and clear refresh token lock.\r\n } else if (!state.isActive) {\r\n this.tokenRefreshService.stopRefreshTokenTimer();\r\n this.tokenRefreshService.clearRefreshTokenLock();\r\n }\r\n });\r\n }\r\n\r\n public addToHistory(overlay: Overlay): void {\r\n this._overlayHistory.push(overlay);\r\n }\r\n\r\n public removeLastFromHistory(): void {\r\n this._overlayHistory.pop();\r\n }\r\n\r\n}\r\n","export enum Platform {\r\n android = 'android',\r\n iOS = 'ios',\r\n web = 'web'\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Capacitor} from '@capacitor/core';\r\nimport {BehaviorSubject, Observable} from 'rxjs';\r\nimport {Platform} from './platform.enum';\r\n\r\n/**\r\n * This service provides information about the current platform.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PlatformService {\r\n /**\r\n * Holds the current platform.\r\n */\r\n private _platform$ = new BehaviorSubject(Platform.web);\r\n\r\n constructor() {\r\n }\r\n\r\n public get platform(): Platform {\r\n return this._platform$.value;\r\n }\r\n\r\n public get platform$(): Observable {\r\n return this._platform$;\r\n }\r\n\r\n public init(): void {\r\n this.setPlatform(this.getPlatform() as Platform);\r\n }\r\n\r\n public setPlatform(platform: Platform): void {\r\n if (\r\n platform !== Platform.android\r\n && platform !== Platform.iOS\r\n && platform !== Platform.web\r\n ) {\r\n platform = Platform.web;\r\n }\r\n\r\n // Set current platform class to access platform information in css.\r\n const html = document.getElementsByTagName('html')[0];\r\n html.classList.remove('mo-' + Platform.web, 'mo-' + Platform.iOS, 'mo-' + Platform.android);\r\n html.classList.add('mo-' + platform);\r\n\r\n this._platform$.next(platform);\r\n }\r\n\r\n public getPlatform(): string {\r\n return Capacitor.getPlatform();\r\n }\r\n\r\n public isAndroid(): boolean {\r\n return Capacitor.getPlatform() === Platform.android;\r\n }\r\n\r\n public isIOS(): boolean {\r\n return Capacitor.getPlatform() === Platform.iOS;\r\n }\r\n\r\n public isWeb(): boolean {\r\n return Capacitor.getPlatform() === Platform.web;\r\n }\r\n\r\n public isNativePlatform(): boolean {\r\n return Capacitor.isNativePlatform();\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {StatusBar, Style} from '@capacitor/status-bar';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StatusBarService {\r\n private _statusBar = StatusBar;\r\n\r\n constructor() {\r\n }\r\n\r\n public async setStyle(style: Style): Promise {\r\n try {\r\n await this._statusBar.setStyle({style});\r\n\r\n } catch (e) {\r\n // Nothing to do if not possible to set style.\r\n }\r\n }\r\n\r\n /**\r\n * Sets the background color of the devices status bar. Only on android.\r\n */\r\n public async setBackgroundColor(color: string): Promise {\r\n try {\r\n await this._statusBar.setBackgroundColor({color});\r\n\r\n } catch {\r\n // Nothing to do if not possible to color the status bar.\r\n }\r\n }\r\n\r\n /**\r\n * Overlays the status bar. Only on android.\r\n */\r\n public async setOverlaysWebView(overlay: boolean): Promise {\r\n try {\r\n await this._statusBar.setOverlaysWebView({overlay});\r\n\r\n } catch {\r\n // Nothing to do if not overlaying status bar.\r\n }\r\n }\r\n\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ApiService} from '../api/lib/api.service';\r\nimport {SelectBoxItem} from '../../ui/select-menu/lib/select-box-item';\r\nimport {BehaviorSubject, Observable} from 'rxjs';\r\nimport {Store} from './store.interface';\r\nimport {filter, map, tap} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StoreService {\r\n private _endpoint = 'store/byToken';\r\n\r\n private _cachedStores = new BehaviorSubject([]);\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n /**\r\n * Get list of the users stores inclusive online shops.\r\n */\r\n public readStores(): Observable {\r\n if (this._cachedStores.getValue().length > 0) {\r\n return this._cachedStores.asObservable();\r\n }\r\n\r\n return this.apiService.get(this._endpoint, {\r\n params: {\r\n excludeOnlineshops: 'false',\r\n },\r\n }).pipe(\r\n map((data) => data.map((item) => ({ ...item, disabled: !item.isActive }))),\r\n tap(\r\n data => this._cachedStores.next(data),\r\n ),\r\n );\r\n }\r\n\r\n /**\r\n * Returns all user stores but exclude online shops.\r\n */\r\n public readLocalOnlyStores(): Observable {\r\n return this.apiService.get(this._endpoint, {\r\n params: {\r\n excludeOnlineshops: 'true',\r\n },\r\n });\r\n }\r\n\r\n public get endpoint(): string {\r\n return this._endpoint;\r\n }\r\n}\r\n","import {Injectable, OnDestroy} from '@angular/core';\r\nimport {ApiService} from '../../api/lib/api.service';\r\nimport {UserSettings} from './user-settings';\r\nimport {BehaviorSubject, Observable, Subject} from 'rxjs';\r\nimport {TokenStorageService} from '../../auth/lib/token-storage.service';\r\nimport {switchMap, takeUntil} from 'rxjs/operators';\r\nimport {SelectBoxItem} from '../../../ui/select-menu/lib/select-box-item';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserSettingsService implements OnDestroy {\r\n\r\n private _userSettings$ = new BehaviorSubject(null);\r\n private _refresh$ = new Subject();\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private tokenStorageService: TokenStorageService,\r\n ) {\r\n }\r\n\r\n public init() {\r\n // Load user settings.\r\n this._refresh$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n switchMap(() => this.apiService.get('user/settings')),\r\n )\r\n .subscribe(response => this.setUserSettings(response));\r\n\r\n // Load/ clear user settings after login/ logout.\r\n this.tokenStorageService\r\n .token$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(token => {\r\n if (token) {\r\n this._refresh$.next();\r\n\r\n } else {\r\n this._userSettings$.next(null);\r\n }\r\n });\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public get userSettings(): UserSettings | null {\r\n return this._userSettings$.getValue();\r\n }\r\n\r\n public get userSettings$(): Observable {\r\n return this._userSettings$.asObservable();\r\n }\r\n\r\n public setUserSettings(userSettings: UserSettings): void {\r\n this._userSettings$.next(userSettings);\r\n }\r\n\r\n public updateUserSettings(userSettings: UserSettings): Observable {\r\n return this.apiService.put('user/settings/update', userSettings);\r\n }\r\n\r\n public getLanguages(): Observable {\r\n return this.apiService.get('user/settings/languages');\r\n }\r\n}\r\n","export function memoizeOne(fn: (arg: TIn) => TOut): (arg: TIn) => TOut {\r\n let memoized = false;\r\n let memoizedInput: TIn | undefined;\r\n let memoizedOutput: TOut | undefined;\r\n\r\n return (input) => {\r\n if (memoized && memoizedInput === input) {\r\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\r\n return memoizedOutput!;\r\n }\r\n\r\n memoized = true;\r\n memoizedInput = input;\r\n memoizedOutput = fn(input);\r\n\r\n return memoizedOutput;\r\n };\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'moBypassSecurityTrustUrl',\r\n})\r\nexport class MoBypassSecurityTrustUrlPipe implements PipeTransform {\r\n\r\n constructor(protected sanitizer: DomSanitizer) {\r\n }\r\n\r\n transform(value: string): SafeUrl {\r\n return this.sanitizer.bypassSecurityTrustUrl(value);\r\n }\r\n\r\n}\r\n","/**\r\n * Pattern to define a phone number layout\r\n *\r\n * @example + 49 (0) 12345 - 6, +49(0)12345-6, 0123456\r\n */\r\nexport const phoneNumberPattern = /^\\+?(\\s?\\-?\\s?((\\(\\d+\\))|(\\d+)))+$/gm;\r\n\r\n/**\r\n * Validator function to check if the value is a valid phone number.\r\n *\r\n * @param value Phone number to check.\r\n */\r\nexport function isPhoneNumber(value: string) {\r\n return value && !value.match(phoneNumberPattern) ? false : true;\r\n}\r\n","import type {ValidationCallbackData} from 'devextreme/ui/validation_rules';\r\nimport normalizeEmail from '../../ui/devextreme-validation/shared/normalize-email';\r\n\r\nexport default function validateEmailCallback({value}: ValidationCallbackData) {\r\n const email = normalizeEmail(value);\r\n\r\n return (\r\n email != null &&\r\n reEmail.test(email)\r\n );\r\n}\r\n\r\n// Aus Devextreme übernommen\r\nconst reEmail = /^[\\d\\w._-]+@[\\d\\w._-]+\\.[\\w]+$/i;\r\n","import {Injectable} from '@angular/core';\r\nimport {PlatformService} from '../platform/platform.service';\r\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\r\nimport {BehaviorSubject, Observable} from 'rxjs';\r\nimport {ConfigService} from '../config/config.service';\r\n\r\ninterface VersionInfo {\r\n appVersion?: string;\r\n apiVersion?: string;\r\n latestAppVersion?: string;\r\n}\r\n\r\n/**\r\n * Service to get the current and latest app Version.\r\n * Does not work with endpoint2 from apiService!\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class VersionService {\r\n /**\r\n * Endpoint to read current app version for web.\r\n *\r\n * @private\r\n */\r\n private readonly _webVersionUrl = 'assets/config/version.json';\r\n\r\n /**\r\n * Endpoint to get the latest version for android and ios apps.\r\n *\r\n * @private\r\n */\r\n private readonly _latestAppVersionEndpoint: string = 'latest-app-version';\r\n\r\n /**\r\n * Provides app version information.\r\n *\r\n * @private\r\n */\r\n private _info$ = new BehaviorSubject(undefined);\r\n\r\n constructor(\r\n private _http: HttpClient,\r\n private _configService: ConfigService,\r\n private _platformService: PlatformService,\r\n ) {\r\n }\r\n\r\n /**\r\n * App version information.\r\n */\r\n public get info(): VersionInfo | undefined {\r\n return this._info$.value;\r\n }\r\n\r\n public get info$(): Observable {\r\n return this._info$.asObservable();\r\n }\r\n\r\n /**\r\n * Returns true if user can update app version.\r\n */\r\n public canUpdateVersion(): boolean {\r\n if (this._platformService.isNativePlatform() && this.info && this.info.appVersion && this.info.latestAppVersion) {\r\n return +this.info.appVersion < +this.info.latestAppVersion;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public updateVersion(): void {\r\n if (this._platformService.isAndroid()) {\r\n window.open('market://details?id=com.monari.business');\r\n\r\n } else if (this._platformService.isIOS()) {\r\n window.open('itms-apps://apps.apple.com/app/apple-store/id1570246290');\r\n }\r\n }\r\n\r\n /**\r\n * Loads version info into the service.\r\n *\r\n * @private\r\n */\r\n public async load(): Promise {\r\n let versionInfo: VersionInfo;\r\n\r\n // Get current app version information.\r\n try {\r\n versionInfo = await this.readVersionConfig();\r\n\r\n } catch {\r\n versionInfo = {\r\n apiVersion: undefined,\r\n appVersion: undefined,\r\n };\r\n }\r\n\r\n // Get latest app version information from app store.\r\n if (this._platformService.isNativePlatform()) {\r\n try {\r\n versionInfo.latestAppVersion = (await this.readLatestAppVersion(versionInfo)).latestVersion;\r\n\r\n } catch {\r\n versionInfo.latestAppVersion = undefined;\r\n }\r\n }\r\n\r\n this._info$.next(versionInfo);\r\n }\r\n\r\n private readVersionConfig(): Promise {\r\n return this._http.get(this._webVersionUrl).toPromise();\r\n }\r\n\r\n /**\r\n * Read the latest app version in store form back end.\r\n *\r\n * @param info\r\n * @private\r\n */\r\n private readLatestAppVersion(info: VersionInfo): Promise<{ latestVersion: string }> {\r\n const endpoint = this._configService.configuration.endpointUrl + this._latestAppVersionEndpoint;\r\n\r\n let headers = new HttpHeaders();\r\n\r\n if (info?.apiVersion) {\r\n headers = headers.set('x-api-version', info.apiVersion);\r\n }\r\n\r\n return this._http.get<{ latestVersion: string }>(endpoint, {\r\n params: {\r\n platform: this._platformService.getPlatform(),\r\n },\r\n headers,\r\n }).toPromise();\r\n }\r\n\r\n}\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ContactFormPayload } from './contactFormPayload';\r\nimport { ContactFormService } from '../lib/contact-form.service';\r\nimport { catchError, filter, finalize, takeUntil } from 'rxjs/operators';\r\nimport { Observable, Subject, throwError } from 'rxjs';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { TranslatorService } from '../../../core/i18n/lib/translator.service';\r\nimport { ToastService } from '../../../ui/toast/lib/toast.service';\r\nimport { DxValidationGroupComponent } from 'devextreme-angular';\r\nimport validateEmailCallback from '../../../core/validators/validate-email-callback';\r\nimport { FaqResponse } from '../lib/payload/faq-response';\r\n\r\n@Component({\r\n selector: 'mo-contact-form',\r\n templateUrl: './contact-form.component.html',\r\n styleUrls: ['./contact-form.component.scss'],\r\n})\r\nexport class ContactFormComponent implements OnInit {\r\n @ViewChild('validationGroup')\r\n public validationGroup: DxValidationGroupComponent | undefined;\r\n\r\n public payload: ContactFormPayload = { subject: '', mail: '', message: '', name: '', customerId: '' };\r\n\r\n public validateEmailCallback = validateEmailCallback;\r\n\r\n public accordionData$?: Observable;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n public contactFormService: ContactFormService,\r\n public translatorService: TranslatorService,\r\n public toastService: ToastService\r\n ) {\r\n this.accordionData$ = this.contactFormService.getFAQ();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n sendMessage(e: any) {\r\n e.preventDefault();\r\n\r\n this.contactFormService\r\n .sendContactForm(this.payload)\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n catchError((err: HttpErrorResponse) => {\r\n if (err.status === 400) {\r\n // TODO: Define error message and replace\r\n const text = this.translatorService.trans$('b2b.web.error400').getValue();\r\n this.toastService.show(text ?? 'Beim Senden ist ein Fehler aufgetreten. Bitte versuchen Sie es später erneut.');\r\n } else {\r\n // TODO: Define error message\r\n const text = this.translatorService.trans$('b2b.web.error.default').getValue();\r\n this.toastService.show(text ?? 'Ein unerwarteter Fehler ist aufgetreten. Bitte versuchen Sie es später erneut.');\r\n }\r\n\r\n return throwError(err);\r\n }),\r\n finalize(() => {})\r\n )\r\n .subscribe((data) => {\r\n const text = this.translatorService.trans$('b2b.web.page.contact.text.success').getValue();\r\n this.toastService.show(text ?? 'Success');\r\n this.payload = { subject: '', mail: '', message: '', name: '', customerId: '' };\r\n this.validationGroup?.instance.reset();\r\n });\r\n }\r\n\r\n onPrefill(data: FaqResponse): void {\r\n this.payload.subject = data.contactSubject;\r\n this.payload.message = data.contactMessage;\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n

{{ 'b2b.web.page.contact.form.text.pleaseFillOut*Fields' | moTranslate }}

\r\n\r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.contact.form.subject.text' | moTranslate }}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.contact.form.name.text' | moTranslate }}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.contact.form.mail.text' | moTranslate }}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.contact.form.customerId.text' | moTranslate }}
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.contact.form.message.text' | moTranslate }}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

{{ 'b2b.web.page.contact.subTitle.howCanWeHelp' | moTranslate }}

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

{{ data.title | moTranslate }}

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

{{ data.message }}

\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 {RouterModule, Routes} from '@angular/router';\r\nimport {routesWithAuthorization} from '../../core/auth/lib/config/auth-route';\r\nimport {PrivacyPageComponent} from '../privacy/pages/privacy-page/privacy-page.component';\r\nimport {Policy} from '../../core/auth/lib/policies/policy';\r\nimport {ContactComponent} from './contact.component';\r\n\r\n\r\n\r\nconst routes: Routes = routesWithAuthorization([\r\n {\r\n path: '',\r\n component: ContactComponent,\r\n policy: Policy.Anonymous,\r\n }]);\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class ContactRoutingModule { }\r\n","import { Location } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'mo-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.scss'],\r\n})\r\nexport class ContactComponent implements OnInit {\r\n constructor(private location: Location, private router: Router) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n public navigateBack(): void {\r\n const { navigationId } = this.location.getState() as { navigationId: number };\r\n\r\n if (navigationId <= 1) {\r\n this.router.navigateByUrl('/');\r\n return;\r\n }\r\n\r\n this.location.back();\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n\r\n

{{'b2b.web.page.contact.title' |moTranslate}}

\r\n\r\n

\r\n monari GmbH
\r\n Jöbkesweg 19 - 23
\r\n 48599 Gronau
\r\n Germany\r\n

\r\n\r\n

{{'b2b.web.page.contact.subTitle.howCanWeHelp' |moTranslate}}

\r\n\r\n \r\n\r\n
\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ContactComponent} from './contact.component';\r\nimport {\r\n DxAccordionModule,\r\n DxButtonModule, DxNumberBoxModule, DxPopupModule,\r\n DxScrollViewModule, DxSelectBoxModule,\r\n DxTextAreaModule,\r\n DxTextBoxModule,\r\n DxValidationGroupModule,\r\n DxValidatorModule,\r\n} from 'devextreme-angular';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {ContactFormComponent} from './contact-form/contact-form.component';\r\nimport {PopupModule} from '../../ui/popup/popup.module';\r\nimport {ContactRoutingModule} from './contact-routing.module';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {ToolbarModule} from '../../ui/toolbar/toolbar.module';\r\nimport {GridModule} from '../../ui/grid/grid.module';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\n\r\n\r\n@NgModule({\r\n // eslint-disable-next-line max-len\r\n declarations: [ContactComponent, ContactFormComponent],\r\n imports: [\r\n CommonModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxValidationGroupModule,\r\n DxValidatorModule,\r\n DxSelectBoxModule,\r\n DxNumberBoxModule,\r\n DxTextAreaModule,\r\n PopupModule,\r\n CoreModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n ContactRoutingModule,\r\n ContentBoxModule,\r\n ToolbarModule,\r\n GridModule,\r\n FlexBoxModule,\r\n DxAccordionModule\r\n ],\r\n})\r\nexport class ContactModule {\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { TranslatorService } from 'src/app/core/i18n/lib/translator.service';\r\nimport { ApiService } from '../../../core/api/lib/api.service';\r\nimport { ContactFormPayload } from '../contact-form/contactFormPayload';\r\nimport { FaqResponse } from './payload/faq-response';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ContactFormService {\r\n public constructor(private api: ApiService, private translatorService: TranslatorService) {}\r\n\r\n public sendContactForm(request: ContactFormPayload): Observable {\r\n return this.api.post(`contact/notify`, request);\r\n }\r\n\r\n public getFAQ(): Observable {\r\n return this.api.get(`contact/faq`, {\r\n params: { language: this.translatorService.language },\r\n });\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {MaintenanceText} from './maintenance-text';\r\nimport {Observable, of} from 'rxjs';\r\nimport {ApiService} from '../../../core/api/lib/api.service';\r\nimport {TranslatorService} from '../../../core/i18n/lib/translator.service';\r\nimport {TranslationResponse} from '../../../core/i18n/lib/payloads/translation-response';\r\nimport {catchError, switchMap} from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class MaintenanceService {\r\n\r\n private _endpoint: string = 'maintenance';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private translatorService: TranslatorService,\r\n ) {\r\n }\r\n\r\n /**\r\n * Returns the text for the maintenance page.\r\n */\r\n public readText(): Observable {\r\n return this.apiService.get(this._endpoint, {\r\n params: {\r\n iso2: this.translatorService.language,\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Currently checking if app is in maintenance mode by checking if we can request translations.\r\n */\r\n public appIsInMaintenanceMode(): Observable {\r\n return this.apiService\r\n .get('translations/{language}', {params: {language: 'de'}})\r\n .pipe(\r\n catchError(data => of(true)),\r\n switchMap(data => of(false)),\r\n );\r\n }\r\n\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {MaintenanceService} from '../../lib/maintenance.service';\r\nimport {MaintenanceText} from '../../lib/maintenance-text';\r\nimport {take} from 'rxjs/operators';\r\nimport {ToastService} from '../../../../ui/toast/lib/toast.service';\r\nimport {Router} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'mo-maintenance-page',\r\n templateUrl: './maintenance-page.component.html',\r\n styleUrls: ['./maintenance-page.component.scss'],\r\n})\r\nexport class MaintenancePageComponent implements OnInit {\r\n\r\n public text?: MaintenanceText;\r\n\r\n constructor(\r\n private router: Router,\r\n private toastService: ToastService,\r\n private maintenanceService: MaintenanceService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.maintenanceService.readText().subscribe(data => this.text = data);\r\n }\r\n\r\n public checkAppIsInMaintenanceMode(): void {\r\n this.maintenanceService.appIsInMaintenanceMode().pipe(take(1)).subscribe(\r\n value => {\r\n if (value) { // App is still in maintenance mode\r\n this.toastService.show(this.text?.toastText ? this.text.toastText : '');\r\n\r\n } else { // App works again. Go to start page\r\n this.router.navigate(['/']);\r\n }\r\n },\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n \r\n\r\n

{{text?.title}}

\r\n\r\n

{{text?.text}}

\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: 'mo-not-found-page',\r\n templateUrl: './not-found-page.component.html',\r\n})\r\nexport class NotFoundPageComponent {\r\n}\r\n","\r\n\r\n\r\n \r\n {{'b2b.web.page.error.note.text.error404' | moTranslate}}\r\n\r\n

{{'b2b.web.page.error.title.sorry' | moTranslate}}

\r\n\r\n

{{'b2b.web.page.error.text.sorry' | moTranslate}}

\r\n\r\n \r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n {{'b2b.web.page.error.note.text.error404' | moTranslate}}\r\n

{{'b2b.web.page.error.title.sorry' | moTranslate}}

\r\n

{{'b2b.web.page.error.text.sorry' | moTranslate}}

\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 {Subject} from 'rxjs';\r\nimport {TokenStorageService} from '../../core/auth/lib/token-storage.service';\r\nimport {takeUntil} from 'rxjs/operators';\r\nimport {Router} from '@angular/router';\r\nimport {MenuService} from '../../general/menu/lib/menu.service';\r\n\r\n@Component({\r\n selector: 'mo-logged-in-page',\r\n templateUrl: './logged-in-page.component.html',\r\n styleUrls: ['./logged-in-page.component.scss'],\r\n})\r\nexport class LoggedInPageComponent implements OnDestroy {\r\n private destroyed$ = new Subject();\r\n\r\n public constructor(\r\n public menu: MenuService,\r\n private tokenStorage: TokenStorageService,\r\n private router: Router,\r\n ) {\r\n this.tokenStorage.tokenChanged$\r\n .pipe(takeUntil(this.destroyed$))\r\n .subscribe((token) => {\r\n if (token == null) {\r\n this.router.navigate(['/login'], {\r\n queryParams: {\r\n referrer: router.routerState.snapshot.url,\r\n },\r\n });\r\n }\r\n });\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this.destroyed$.next();\r\n this.destroyed$.complete();\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n \r\n\r\n \r\n \r\n

{{'b2b.web.page.myAccount.title.myAccount' | moTranslate}}

\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\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 {Injectable} from '@angular/core';\r\nimport {ApiService} from '../../../core/api/lib/api.service';\r\nimport {RegistrationRequest} from './payloads/registration-request';\r\nimport {FinishRegistrationRequest} from '../../finish-registration/lib/finish-registration-request';\r\nimport {Observable} from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RegistrationService {\r\n private endpoint: string = 'access/';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public registrate(payload: RegistrationRequest): Observable {\r\n return this.apiService.post(this.endpoint + 'request-account', payload);\r\n }\r\n\r\n public finishRegistration(payload: FinishRegistrationRequest): Observable {\r\n return this.apiService.post(this.endpoint + 'finish-registration', payload);\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ApiService} from '../../../core/api/lib/api.service';\r\nimport {SendPasswordRestoreLinkRequest} from './payloads/send-password-restore-link-request';\r\nimport {Observable} from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RestorePasswordService {\r\n private endpoint: string = 'access/request-reset-password-link';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public sendEMailToRestorePassword(eMail: string): Observable {\r\n return this.apiService.post(this.endpoint, {eMail});\r\n }\r\n\r\n}\r\n","import {AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild} from '@angular/core';\r\nimport {FormGroup} from '@angular/forms';\r\nimport {AuthenticationService} from '../../core/auth/lib/authentication.service';\r\nimport {Subject, Subscription} from 'rxjs';\r\nimport {take, takeUntil} from 'rxjs/operators';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {isString} from 'lodash';\r\nimport {TokenStorageService} from '../../core/auth/lib/token-storage.service';\r\nimport {SideBarComponent} from '../../ui/side-bar/side-bar.component';\r\nimport {IntroComponent} from './pages/intro/intro.component';\r\nimport {BreakpointService} from '../../core/layout/breakpoint.service';\r\nimport {SliderComponent} from '../../ui/slider/slider.component';\r\nimport {BreakpointState} from '@angular/cdk/layout';\r\nimport {publicDecrypt} from 'crypto';\r\nimport {KeyboardService} from '../../core/keyboard/keyboard.service';\r\nimport {ToastService} from '../../ui/toast/lib/toast.service';\r\nimport {TranslatorService} from '../../core/i18n/lib/translator.service';\r\nimport {LoginRequest} from '../../core/auth/lib/payloads/login-request';\r\n\r\n@Component({\r\n selector: 'mo-login-page',\r\n templateUrl: './login-page.component.html',\r\n styleUrls: ['./login-page.component.scss'],\r\n})\r\nexport class LoginPageComponent implements AfterViewInit, OnDestroy {\r\n @ViewChild('sideBar')\r\n private sideBar!: SideBarComponent;\r\n\r\n @ViewChild('slider')\r\n private slider!: SliderComponent;\r\n\r\n @ViewChild('intro')\r\n private intro!: IntroComponent;\r\n\r\n public logoVisible: boolean = true;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n public constructor(\r\n private auth: AuthenticationService,\r\n private toastService: ToastService,\r\n private translatorService: TranslatorService,\r\n private tokenStorage: TokenStorageService,\r\n private keyboardService: KeyboardService,\r\n private breakpointService: BreakpointService,\r\n private cd: ChangeDetectorRef,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n ) {\r\n this.subscribeToTokenChanges();\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.subscribeToDisplayChanges();\r\n this.cd.detectChanges(); // Detect changes manually because change detection of children is already done in the afterViewInit hook.\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public async login(form: LoginRequest): Promise {\r\n await this.keyboardService.hide(); // Hide mobile keyboard\r\n\r\n this.auth\r\n .login(form)\r\n .pipe(\r\n take(1),\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(\r\n () => this.onAuthenticated(),\r\n () => {\r\n const errorText = this.translatorService.trans$('b2b.web.page.login.toast.invalidCredentials').getValue();\r\n this.toastService.show(errorText || 'Wrong credentials');\r\n },\r\n );\r\n }\r\n\r\n private subscribeToDisplayChanges(): void {\r\n this.breakpointService\r\n .observe('(min-width: ' + this.breakpointService.breakpointLg + ')')\r\n .pipe(takeUntil(this._destroyed$))\r\n .subscribe(\r\n (state: BreakpointState) => {\r\n if (state.matches) {\r\n this.slider.paginationType = 'bubbles';\r\n this.slider.enableControlArrows = true;\r\n } else {\r\n this.slider.paginationType = 'tabs';\r\n this.slider.enableControlArrows = false;\r\n }\r\n },\r\n );\r\n\r\n this.breakpointService\r\n .observe('(min-height: 600px)')\r\n .pipe(takeUntil(this._destroyed$))\r\n .subscribe((state: BreakpointState) => this.slider.enablePagination = this.logoVisible = state.matches)\r\n ;\r\n }\r\n\r\n private subscribeToTokenChanges(): void {\r\n this.tokenStorage.storedTokenChanged$\r\n .pipe(takeUntil(this._destroyed$))\r\n .subscribe((token) => {\r\n if (token != null) {\r\n this.onAuthenticated();\r\n }\r\n });\r\n }\r\n\r\n private onAuthenticated(): void {\r\n const referrer = this.route.snapshot.queryParamMap.get('referrer');\r\n\r\n // Show intro. After that go to requested page.\r\n this.intro.show().then(() => {\r\n if (isString(referrer) && referrer.startsWith('/')) {\r\n this.router.navigateByUrl(referrer);\r\n } else {\r\n this.router.navigateByUrl('/start');\r\n }\r\n });\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n \r\n \r\n \r\n \r\n \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 {LoginSlideComponent} from './pages/login-slide/login-slide.component';\r\nimport {RegistrationSlideComponent} from './pages/registration-slide/registration-slide.component';\r\nimport {RestorePasswordSlideComponent} from './pages/restore-password-slide/restore-password-slide.component';\r\nimport {LoginPageComponent} from './login-page.component';\r\nimport {ReactiveFormsModule} from '@angular/forms';\r\nimport {TextInputModule} from '../../ui/input/text-input.module';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {SliderModule} from '../../ui/slider/slider.module';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {LoaderModule} from '../../ui/loader/loader.module';\r\nimport {SideBarModule} from '../../ui/side-bar/side-bar.module';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {ValidationErrorModule} from '../../ui/validation-error/validation-error.module';\r\nimport {RegistrationFormComponent} from './pages/registration-form/registration-form.component';\r\nimport {GridModule} from '../../ui/grid/grid.module';\r\nimport {IntroModule} from './pages/intro/intro.module';\r\nimport {ToolbarModule} from '../../ui/toolbar/toolbar.module';\r\nimport {SelectModule} from '../../ui/select/select.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {\r\n DxButtonModule,\r\n DxSelectBoxModule,\r\n DxTagBoxModule,\r\n DxTextAreaModule,\r\n DxTextBoxModule,\r\n DxValidationGroupModule,\r\n DxValidatorModule,\r\n} from 'devextreme-angular';\r\nimport {GlassCardModule} from '../../ui/glass-card/glass-card.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n LoginPageComponent,\r\n LoginSlideComponent,\r\n RegistrationSlideComponent,\r\n RestorePasswordSlideComponent,\r\n RegistrationFormComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n TextInputModule,\r\n ButtonModule,\r\n SliderModule,\r\n CoreModule,\r\n LoaderModule,\r\n SideBarModule,\r\n FlexBoxModule,\r\n ContentBoxModule,\r\n ValidationErrorModule,\r\n GridModule,\r\n IntroModule,\r\n ToolbarModule,\r\n SelectModule,\r\n RouterModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxValidatorModule,\r\n DxValidationGroupModule,\r\n DxTextAreaModule,\r\n DxSelectBoxModule,\r\n GlassCardModule,\r\n DxTagBoxModule\r\n ],\r\n exports: [\r\n LoginPageComponent,\r\n ],\r\n})\r\nexport class LoginModule {\r\n}\r\n","import {Component, ViewChild} from '@angular/core';\r\nimport {SideBarComponent} from '../../../../ui/side-bar/side-bar.component';\r\n\r\n/**\r\n * Component to show a small intro after login.\r\n */\r\n@Component({\r\n selector: 'mo-intro',\r\n templateUrl: './intro.component.html',\r\n styleUrls: ['./intro.component.scss'],\r\n})\r\nexport class IntroComponent {\r\n @ViewChild('sideBar')\r\n private sideBar!: SideBarComponent;\r\n\r\n private duration = 4400;\r\n\r\n constructor() {\r\n }\r\n\r\n /**\r\n * Shows the intro.\r\n */\r\n public show(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.sideBar.visible = true; // Fade in the logo.\r\n this.driftNumbersApart(); // Make space for the monari armor.\r\n this.switchColors();\r\n\r\n setTimeout(() => {\r\n resolve();\r\n }, this.duration);\r\n });\r\n }\r\n\r\n private driftNumbersApart(): void {\r\n setTimeout(() => {\r\n const numbersLeft = document.querySelectorAll('path.mo-logo-number-sideways-left');\r\n const numbersRight = document.querySelectorAll('path.mo-logo-number-sideways-right');\r\n\r\n if (numbersLeft.length === 2 && numbersRight.length === 2) {\r\n numbersLeft[0].setAttribute('transform', 'translate(' + -176 + ')');\r\n numbersLeft[1].setAttribute('transform', 'translate(' + -176 + ')');\r\n numbersRight[0].setAttribute('transform', 'translate(' + 176 + ')');\r\n numbersRight[1].setAttribute('transform', 'translate(' + 176 + ')');\r\n }\r\n }, 1700);\r\n }\r\n\r\n private switchColors(): void {\r\n setTimeout(() => {\r\n const background = document.getElementById('mo-logo-loader-wrapper');\r\n const loader = document.getElementById('mo-logo-loader');\r\n\r\n if (background && loader) {\r\n background.style.backgroundColor = 'black';\r\n loader.setAttribute('filter', 'invert(1)');\r\n }\r\n\r\n }, 3000);\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n\r\n\r\n \r\n\t\r\n \r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n \r\n \r\n \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n \r\n \r\n \t\t\t\r\n \r\n \r\n \t\t\r\n\t\r\n\r\n\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { IntroComponent } from './intro.component';\r\nimport {SideBarModule} from '../../../../ui/side-bar/side-bar.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [IntroComponent],\r\n imports: [\r\n CommonModule,\r\n SideBarModule,\r\n ],\r\n exports: [\r\n IntroComponent,\r\n ],\r\n})\r\nexport class IntroModule { }\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\nimport {PublicImgUrlService} from '../../../../core/img/public-img-url.service';\r\nimport {LoginRequest} from '../../../../core/auth/lib/payloads/login-request';\r\nimport {PlatformService} from '../../../../core/platform/platform.service';\r\n\r\n@Component({\r\n selector: 'mo-login-slide',\r\n templateUrl: './login-slide.component.html',\r\n styleUrls: ['./login-slide.component.scss'],\r\n})\r\nexport class LoginSlideComponent implements OnInit {\r\n @Output()\r\n public submitted: EventEmitter = new EventEmitter();\r\n\r\n public platform: string | undefined;\r\n public isNative: boolean | undefined;\r\n public android: boolean = false;\r\n public iOS: boolean = false;\r\n public passwordIsVisible: boolean = false;\r\n\r\n public formData: LoginRequest = {\r\n username: '',\r\n password: '',\r\n };\r\n\r\n constructor(\r\n private platformService: PlatformService,\r\n private publicImgUrlService: PublicImgUrlService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.capacitorCheck();\r\n this.getMobileOperatingSystem();\r\n }\r\n\r\n public get backgroundImgUrl(): string {\r\n return this.publicImgUrlService.loginBackgroundImgUrl;\r\n }\r\n\r\n public capacitorCheck() {\r\n this.platform = this.platformService.getPlatform();\r\n this.isNative = this.platformService.isNativePlatform();\r\n }\r\n\r\n // public checkIfBrowser() {\r\n // if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Windows Phone/i.test(navigator.userAgent)) {\r\n // return false;\r\n // } else {\r\n // return true;\r\n // }\r\n // }\r\n //\r\n public getMobileOperatingSystem() {\r\n const userAgent = navigator.userAgent || navigator.vendor;\r\n\r\n // Windows Phone must come first because its UA also contains \"Android\"\r\n if (/windows phone/i.test(userAgent)) {\r\n this.android = true;\r\n return;\r\n }\r\n\r\n if (/android/i.test(userAgent)) {\r\n this.android = true;\r\n return;\r\n }\r\n\r\n // iOS detection from: http://stackoverflow.com/a/9039885/177710\r\n if (/iPad|iPhone|iPod|Mac/.test(userAgent) && !(window as any).MSStream) {\r\n this.iOS = true;\r\n return;\r\n }\r\n return;\r\n }\r\n\r\n public submit(e: Event): void {\r\n e.preventDefault();\r\n this.submitted.next(this.formData);\r\n }\r\n\r\n}\r\n","
\r\n

{{'b2b.web.page.login.headline.welcome' | moTranslate}}

\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\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, OnDestroy, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {RegistrationService} from '../../lib/registration.service';\r\nimport {ToastService} from '../../../../ui/toast/lib/toast.service';\r\nimport {TranslatorService} from '../../../../core/i18n/lib/translator.service';\r\nimport {SelectBoxItem} from '../../../../ui/select-menu/lib/select-box-item';\r\nimport {takeUntil} from 'rxjs/operators';\r\nimport {Subject} from 'rxjs';\r\nimport {DxTextBoxComponent, DxValidationGroupComponent} from 'devextreme-angular';\r\nimport {isPhoneNumber, phoneNumberPattern} from '../../../../core/validators/phone-number-validator';\r\nimport validateEmailCallback from '../../../../core/validators/validate-email-callback';\r\nimport normalizeEmail from '../../../../ui/devextreme-validation/shared/normalize-email';\r\nimport {HttpErrorResponse} from '@angular/common/http';\r\n\r\nexport enum AccountRequestSalutation {\r\n notDefined = 0,\r\n male = 1,\r\n female = 2,\r\n diverse = 3\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'mo-registration-form',\r\n templateUrl: './registration-form.component.html',\r\n styleUrls: ['./registration-form.component.scss'],\r\n})\r\nexport class RegistrationFormComponent implements OnInit, OnDestroy {\r\n @Output()\r\n public closeButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public goToLoginLinkClicked: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('eMailTextBox')\r\n private eMailTextBox!: DxTextBoxComponent;\r\n\r\n public phonePattern = phoneNumberPattern;\r\n\r\n public formData = {\r\n email: '',\r\n lastname: '',\r\n firstname: '',\r\n salutation: '',\r\n phone: '',\r\n companyName: '',\r\n companyStreet: '',\r\n companyHouseNumber: '',\r\n companyZipcode: '',\r\n companyCity: '',\r\n companyCountry: '',\r\n comment: '',\r\n language: '',\r\n department: ''\r\n };\r\n\r\n public salutationItems: SelectBoxItem[] = [];\r\n\r\n public showSuccessMessage: boolean = false;\r\n\r\n @ViewChild('validationGroup')\r\n private validationGroup!: DxValidationGroupComponent;\r\n\r\n public validateEmailCallback = validateEmailCallback;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private registrationService: RegistrationService,\r\n private toastService: ToastService,\r\n private translatorService: TranslatorService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setupSalutationItems();\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public checkPhoneNumber = (e: any) => isPhoneNumber(e.value);\r\n\r\n public submit(e: Event): void {\r\n e.preventDefault();\r\n\r\n this.formData.language = this.translatorService.language;\r\n\r\n const {\r\n email,\r\n ...restData\r\n } = this.formData;\r\n\r\n this.registrationService\r\n .registrate({\r\n ...restData,\r\n email: normalizeEmail(email) ?? '',\r\n })\r\n .subscribe(\r\n () => {\r\n this.showSuccessMessage = true;\r\n this.validationGroup.instance.reset();\r\n },\r\n (error: HttpErrorResponse) => {\r\n let text = this.translatorService.trans$('b2b.web.error.default').getValue();\r\n\r\n if (error.status === 409) {\r\n text = this.translatorService.trans$('b2b.web.error.eMailAlreadyTaken').getValue();\r\n this.eMailTextBox.instance.reset();\r\n this.eMailTextBox.instance.focus();\r\n }\r\n\r\n this.toastService.show(text || '');\r\n },\r\n );\r\n }\r\n\r\n /**\r\n * Set select box items as soon as translated texts are available.\r\n *\r\n * @private\r\n */\r\n private setupSalutationItems(): void {\r\n this.translatorService\r\n .messages$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(\r\n () => {\r\n this.salutationItems = [\r\n {\r\n id: AccountRequestSalutation.female,\r\n text: this.translatorService.trans$('b2b.web.page.registration.select.salutation.item.mrs').getValue() || 'Frau',\r\n },\r\n {\r\n id: AccountRequestSalutation.male,\r\n text: this.translatorService.trans$('b2b.web.page.registration.select.salutation.item.mr').getValue() || 'Herr',\r\n },\r\n {\r\n id: AccountRequestSalutation.diverse,\r\n text: this.translatorService.trans$('b2b.web.page.registration.select.salutation.item.diverse').getValue() || 'Divers',\r\n },\r\n {\r\n id: AccountRequestSalutation.notDefined,\r\n text: this.translatorService.trans$('b2b.web.page.registration.select.salutation.item.notSpecified').getValue() || '-',\r\n },\r\n ];\r\n },\r\n );\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n\r\n
\r\n

{{'b2b.web.page.registration.title.thankYou' | moTranslate}}

\r\n

\r\n {{'b2b.web.page.registration.text.requestReceived' | moTranslate}}\r\n

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

{{'b2b.web.page.registration.title.createAccount' | moTranslate}}

\r\n\r\n

\r\n {{'b2b.web.page.registration.text.pleaseFillOut' | moTranslate}}\r\n
\r\n {{'b2b.web.page.registration.text.alreadyHaveAnAccount' | moTranslate}}\r\n {{'b2b.web.page.registration.text.loginHere' | moTranslate}}

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

{{'b2b.web.page.registration.subTitle.personalData' | moTranslate}}

\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n
\r\n
{{'b2b.web.page.registration.placeholder.eMail' | moTranslate}}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
{{'b2b.web.page.registration.placeholder.firstname' | moTranslate}}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n
{{'b2b.web.page.registration.placeholder.lastname' | moTranslate}}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.salutation' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
{{'b2b.web.page.registration.placeholder.phone' | moTranslate}}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
{{ 'b2b.web.page.registration.placeholder.department' | moTranslate }}*
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n\r\n

{{'b2b.web.page.registration.subTitle.company' | moTranslate}}

\r\n\r\n \r\n\r\n \r\n \r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyName' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyStreet' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyHouseNumber' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyZipCode' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyCity' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {{'b2b.web.page.registration.placeholder.companyCountry' | moTranslate}}*\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n

{{'b2b.web.page.registration.subTitle.message' | moTranslate}}

\r\n\r\n
\r\n {{'b2b.web.page.registration.placeholder.message' | moTranslate}}
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\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, Output} from '@angular/core';\r\nimport {PublicImgUrlService} from '../../../../core/img/public-img-url.service';\r\n\r\n@Component({\r\n selector: 'mo-registration-slide',\r\n templateUrl: './registration-slide.component.html',\r\n styleUrls: ['./registration-slide.component.scss'],\r\n})\r\nexport class RegistrationSlideComponent {\r\n @Output()\r\n public showRegistrationFormButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n constructor(\r\n private publicImgUrlService: PublicImgUrlService,\r\n ) {\r\n }\r\n\r\n public get backgroundImgUrl(): string {\r\n return this.publicImgUrlService.registrationBackgroundImgUrl;\r\n }\r\n\r\n}\r\n","
\r\n

{{'b2b.web.page.registration.headline.createAccount' | moTranslate}}

\r\n

{{'b2b.web.page.registration.headline.greeting' | moTranslate}}

\r\n \r\n
\r\n\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {RestorePasswordService} from '../../lib/restore-password.service';\r\nimport {FormBuilder} from '@angular/forms';\r\nimport {ToastService} from '../../../../ui/toast/lib/toast.service';\r\nimport {TranslatorService} from '../../../../core/i18n/lib/translator.service';\r\nimport {PublicImgUrlService} from '../../../../core/img/public-img-url.service';\r\nimport normalizeEmail from '../../../../ui/devextreme-validation/shared/normalize-email';\r\nimport validateEmailCallback from '../../../../core/validators/validate-email-callback';\r\n\r\n@Component({\r\n selector: 'mo-restore-password-slide',\r\n templateUrl: './restore-password-slide.component.html',\r\n styleUrls: ['./restore-password-slide.component.scss'],\r\n})\r\nexport class RestorePasswordSlideComponent implements OnInit {\r\n public formData = {\r\n email: '',\r\n };\r\n\r\n public showMessage: boolean = false;\r\n\r\n public validateEmailCallback = validateEmailCallback;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private restorePasswordService: RestorePasswordService,\r\n private toastService: ToastService,\r\n private translatorService: TranslatorService,\r\n private publicImgUrlService: PublicImgUrlService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public get backgroundImgUrl(): string {\r\n return this.publicImgUrlService.restorePasswordBackgroundImgUrl;\r\n }\r\n\r\n public submit(e: Event): void {\r\n e.preventDefault();\r\n\r\n this.restorePasswordService\r\n .sendEMailToRestorePassword(normalizeEmail(this.formData.email) ?? '')\r\n .subscribe(\r\n () => this.showMessage = true,\r\n () => {\r\n const text = this.translatorService.trans$('b2b.web.error.default').getValue();\r\n this.toastService.show(text || '');\r\n },\r\n );\r\n }\r\n\r\n}\r\n","
\r\n\r\n

{{'b2b.web.page.restorePassword.headline.forgotPassword' | moTranslate}}

\r\n

{{'b2b.web.page.restorePassword.headline.instructions' | moTranslate}}

\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n {{'b2b.web.page.login.restorePassword.text.eMailReceived' | moTranslate}}\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 {Router} from '@angular/router';\r\nimport {UserSettingsService} from '../../../../core/user/lib/user-settings.service';\r\nimport {SelectBoxItem} from '../../../../ui/select-menu/lib/select-box-item';\r\nimport {FormBuilder, FormControl, Validators} from '@angular/forms';\r\nimport {finalize, takeUntil} from 'rxjs/operators';\r\nimport {pipe, Subject} from 'rxjs';\r\nimport {StoreService} from '../../../../core/store/store.service';\r\nimport {ToastService} from '../../../../ui/toast/lib/toast.service';\r\nimport {TranslatorService} from '../../../../core/i18n/lib/translator.service';\r\nimport {AuthenticationService} from '../../../../core/auth/lib/authentication.service';\r\nimport {Store} from '../../../../core/store/store.interface';\r\n\r\ninterface MyAccountMenuItem {\r\n text: string;\r\n description?: string;\r\n url: string;\r\n active?: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'mo-my-account-menu',\r\n templateUrl: './my-account-menu.component.html',\r\n styleUrls: ['./my-account-menu.component.scss'],\r\n})\r\nexport class MyAccountMenuComponent implements OnInit, OnDestroy {\r\n @Input()\r\n public visible: boolean = false;\r\n\r\n @Output()\r\n public itemSelected: EventEmitter = new EventEmitter();\r\n\r\n public items: MyAccountMenuItem[] = [];\r\n\r\n public stores: Store[] = [];\r\n\r\n public currentStore?: Store;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private router: Router,\r\n private fb: FormBuilder,\r\n private storeService: StoreService,\r\n private toastService: ToastService,\r\n private auth: AuthenticationService,\r\n private translatorService: TranslatorService,\r\n private userSettingsService: UserSettingsService,\r\n ) {\r\n }\r\n\r\n async ngOnInit(): Promise {\r\n this.getMenuItems();\r\n\r\n this.storeService\r\n .readStores()\r\n .pipe(\r\n finalize(() => this.subscribeToEvents()),\r\n )\r\n .subscribe(\r\n stores => this.stores = stores,\r\n () => this.stores = [], // ToDo error toast\r\n );\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public handleItemClick(item: MyAccountMenuItem): void {\r\n this.router.navigateByUrl(item.url);\r\n this.clearActiveItems();\r\n item.active = true;\r\n this.itemSelected.next(item);\r\n }\r\n\r\n public logout(): void {\r\n this.auth.logout();\r\n }\r\n\r\n public updateCurrentActiveStore(e: Store): void {\r\n this.currentStore = e;\r\n\r\n if (this.userSettingsService.userSettings && this.currentStore && this.currentStore?.id >= 0) {\r\n this.userSettingsService.userSettings.defaultMerchantId = +this.currentStore?.id;\r\n this.userSettingsService.updateUserSettings(this.userSettingsService.userSettings).subscribe(\r\n response => {\r\n this.userSettingsService.setUserSettings(response);\r\n const text = this.translatorService.trans$('b2b.web.page.myAccount.toast.text.activeStoreChanged').getValue();\r\n this.toastService.show(text ?? '');\r\n },\r\n () => {\r\n const text = this.translatorService.trans$('b2b.web.page.myAccount.toast.text.couldNotChangeActiveStore').getValue();\r\n this.toastService.show(text ?? '');\r\n },\r\n );\r\n }\r\n }\r\n\r\n private clearActiveItems(): void {\r\n this.items.forEach(itemTemp => itemTemp.active = false);\r\n }\r\n\r\n private subscribeToEvents(): void {\r\n this.userSettingsService\r\n .userSettings$\r\n .pipe(\r\n takeUntil(this._destroyed$),\r\n )\r\n .subscribe(userSettings => {\r\n this.currentStore = this.stores.find(storeTemp => storeTemp.id === userSettings?.defaultMerchantId);\r\n });\r\n }\r\n\r\n private getMenuItems(): void {\r\n // ToDo Get menu items from server\r\n this.items = [\r\n // {\r\n // text: 'Postfach',\r\n // url: '/my-account',\r\n // },\r\n // {\r\n // text: 'Aufträge',\r\n // url: '/my-account/orders',\r\n // },\r\n // {\r\n // text: 'Belege',\r\n // url: '/my-account',\r\n // },\r\n // {\r\n // text: 'Offene Posten',\r\n // url: '/my-account',\r\n // },\r\n {\r\n text: 'b2b.web.page.myAccount.menu.item.text.settings',\r\n description: 'b2b.web.page.myAccount.menu.item.description.settings',\r\n url: '/my-account/personal-data',\r\n },\r\n ];\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n\r\n
\r\n
{{'b2b.web.page.myAccount.label.currentStore' | moTranslate}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n
    \r\n
  • \r\n \r\n \r\n
    \r\n

    {{item.text | moTranslate}}

    \r\n

    {{'b2b.web.page.myAccount.menu.item.description.settings' | moTranslate}}

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

    {{'b2b.web.page.myAccount.button.text.logout' | moTranslate}}

    \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 {MyAccountMenuComponent} from './my-account-menu.component';\r\nimport {ButtonModule} from '../../../../ui/button/button.module';\r\nimport {ContentBoxModule} from '../../../../ui/content-box/content-box.module';\r\nimport {GridModule} from '../../../../ui/grid/grid.module';\r\nimport {DropDownButtonModule} from '../../../../ui/drop-down-button/drop-down-button.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {SelectModule} from '../../../../ui/select/select.module';\r\nimport {ReactiveFormsModule} from '@angular/forms';\r\nimport {CoreModule} from '../../../../core/core.module';\r\nimport {DxButtonModule, DxSelectBoxModule, DxTextBoxModule} from 'devextreme-angular';\r\nimport {NoteModule} from '../../../../ui/note/note.module';\r\nimport {FlexBoxModule} from '../../../../ui/flex-box/flex-box.module';\r\nimport {StoreSelectionDialogModule} from '../../../../general/store-selection-dialog/store-selection-dialog.module';\r\nimport { StoreSelectionBoxModule } from 'src/app/general/store-select-box/store-select-box.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [MyAccountMenuComponent],\r\n exports: [\r\n MyAccountMenuComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n ContentBoxModule,\r\n GridModule,\r\n DropDownButtonModule,\r\n RouterModule,\r\n SelectModule,\r\n ReactiveFormsModule,\r\n CoreModule,\r\n DxSelectBoxModule,\r\n DxButtonModule,\r\n NoteModule,\r\n FlexBoxModule,\r\n DxTextBoxModule,\r\n StoreSelectionBoxModule,\r\n ],\r\n})\r\nexport class MyAccountMenuModule {\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {FloatingChatButtonComponent} from './components/floating-chat-button/floating-chat-button.component';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {FloatingButtonModule} from '../../ui/floating-button/floating-button.module';\r\nimport { ChatComponent } from './components/chat/chat.component';\r\nimport {TextInputModule} from '../../ui/input/text-input.module';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {NoteModule} from '../../ui/note/note.module';\r\nimport { ChatMessageComponent } from './components/chat-message/chat-message.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n FloatingChatButtonComponent,\r\n ChatComponent,\r\n ChatMessageComponent,\r\n ],\r\n providers: [],\r\n exports: [\r\n FloatingChatButtonComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n CoreModule,\r\n FloatingButtonModule,\r\n TextInputModule,\r\n ButtonModule,\r\n NoteModule,\r\n ],\r\n})\r\nexport class ChatModule {\r\n}\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-chat-message',\r\n templateUrl: './chat-message.component.html',\r\n styleUrls: ['./chat-message.component.scss'],\r\n})\r\nexport class ChatMessageComponent implements OnInit {\r\n @Input()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public message: any; // ToDo use message type\r\n\r\n @Input()\r\n @HostBinding('class.right')\r\n public isUserMessage: boolean = false;\r\n\r\n @Input()\r\n public messageText: string = ''; // ToDo remove and use text from message object\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n Simon Wegbünder\r\n \r\n

{{messageText}}

\r\n 28.01.2021, 15:31\r\n
\r\n
\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-chat-window',\r\n templateUrl: './chat.component.html',\r\n styleUrls: ['./chat.component.scss'],\r\n})\r\nexport class ChatComponent implements OnInit {\r\n @Output()\r\n public closeButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n \r\n monari Chat\r\n
\r\n\r\n
\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, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-floating-chat-button',\r\n templateUrl: './floating-chat-button.component.html',\r\n styleUrls: ['./floating-chat-button.component.scss'],\r\n})\r\nexport class FloatingChatButtonComponent implements OnInit {\r\n\r\n public visible: boolean = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n","import {Injectable} from '@angular/core';\r\nimport {BehaviorSubject, Observable} from 'rxjs';\r\nimport {MenuItem} from './menu-item';\r\nimport {ApiService} from '../../../core/api/lib/api.service';\r\n\r\n/**\r\n * Small service to show and hide the side bar menu.\r\n * Provides also an visibilityChange Event.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class MenuService {\r\n private endpoint = 'menu';\r\n\r\n private _visible: boolean = false;\r\n\r\n private _visibilityChange: BehaviorSubject = new BehaviorSubject(this._visible);\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public set visible(visible: boolean) {\r\n if (visible === this._visible) {\r\n return;\r\n }\r\n this._visible = visible;\r\n this._visibilityChange.next(this._visible);\r\n }\r\n\r\n public get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n public visibilityChange(): Observable {\r\n return this._visibilityChange.asObservable();\r\n }\r\n\r\n public getMenuItems(): Observable {\r\n return this.apiService.get(this.endpoint);\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Directive, HostBinding, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\nimport {FileAccessTokenService} from '../../core/auth/lib/file-access-token.service';\r\nimport {ApiService} from '../../core/api/lib/api.service';\r\n\r\n@Directive({\r\n selector: '[moMenuImg]',\r\n})\r\nexport class MenuImgDirective implements AfterViewInit, OnChanges {\r\n\r\n @Input()\r\n public moMenuImg?: string;\r\n\r\n @HostBinding('attr.src')\r\n private srcAttr?: string;\r\n\r\n private readonly menuMediaEndpoint: string = 'menu/media/';\r\n\r\n constructor(\r\n private fileAccessTokenService: FileAccessTokenService,\r\n private apiService: ApiService,\r\n ) {\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this.loadImage();\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.loadImage();\r\n }\r\n\r\n private async loadImage(): Promise {\r\n if (!this.moMenuImg) {\r\n return;\r\n }\r\n\r\n const fileAccessToken = this.fileAccessTokenService.token?.data;\r\n\r\n if (fileAccessToken) {\r\n this.srcAttr = this.apiService.endpointUrl\r\n + this.menuMediaEndpoint\r\n + fileAccessToken + '/'\r\n + this.moMenuImg;\r\n }\r\n }\r\n\r\n}\r\n","import {ChangeDetectorRef, Component, HostBinding, HostListener, Input, OnInit} from '@angular/core';\r\nimport {MenuService} from './lib/menu.service';\r\nimport {Router} from '@angular/router';\r\nimport {MenuItem} from './lib/menu-item';\r\n\r\n@Component({\r\n selector: 'mo-menu',\r\n templateUrl: './menu.component.html',\r\n styleUrls: ['./menu.component.scss'],\r\n})\r\nexport class MenuComponent implements OnInit {\r\n @Input()\r\n @HostBinding('class.visible')\r\n public set visible(value: boolean) {\r\n // Clear hovered state on opening up menu\r\n this.currentHovering = false;\r\n this.items.forEach(item => item.hovered = false);\r\n\r\n this._visible = value;\r\n };\r\n\r\n public get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n public items: MenuItem[] = [];\r\n\r\n public selectedItem: MenuItem | null = null;\r\n\r\n /**\r\n * Flag to prevent rendering img of active item while hovering an other item.\r\n */\r\n public currentHovering: boolean = false;\r\n\r\n private _visible: boolean = false;\r\n\r\n constructor(\r\n private menuService: MenuService,\r\n private router: Router,\r\n private cd: ChangeDetectorRef,\r\n ) {\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.menuService\r\n .getMenuItems()\r\n .subscribe(\r\n menuItems => {\r\n this.items = menuItems;\r\n this.selectedItem = this.items[0];\r\n\r\n if(this.selectedItem) {\r\n this.selectedItem.active = true;\r\n }\r\n },\r\n () => this.items = [],\r\n );\r\n }\r\n\r\n public handleMenuItemClick(item: MenuItem, topLevel: boolean = true): void {\r\n if (topLevel) {\r\n this.clearSelection();\r\n\r\n this.cd.detectChanges(); // trigger the css transition ...\r\n this.selectedItem = item;\r\n\r\n if(this.selectedItem) {\r\n this.selectedItem.active = true;\r\n }\r\n }\r\n\r\n // Route to url and close menu (if item has an url)\r\n if (item.url) {\r\n this.router.navigateByUrl(item.url);\r\n this.closeMenu();\r\n }\r\n }\r\n\r\n public clearSelection(): void {\r\n this.items.forEach(itemTemp => itemTemp.active = false);\r\n this.selectedItem = null;\r\n }\r\n\r\n public closeMenu(): void {\r\n this.menuService.visible = 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

    {{item.text | moTranslate}}

    \r\n

    \r\n
    \r\n\r\n
  • \r\n
\r\n\r\n
    \r\n
  • \r\n {{'b2b.web.page.login.text.contact' | moTranslate}}\r\n \r\n
  • \r\n
  • \r\n {{'b2b.web.page.login.text.privacy' | moTranslate}}\r\n
  • \r\n
  • \r\n {{'b2b.web.page.login.text.imprint' | moTranslate}}\r\n
  • \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n
    \r\n\r\n
  • \r\n

    {{selectedItem?.text}}

    \r\n
  • \r\n\r\n
  • \r\n {{item.text | moTranslate}}\r\n
  • \r\n\r\n
\r\n
\r\n\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 {MenuComponent} from './menu.component';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {DropDownButtonModule} from '../../ui/drop-down-button/drop-down-button.module';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\nimport { MenuImgDirective } from './menu-img.directive';\r\nimport {CoreModule} from '../../core/core.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n MenuComponent,\r\n MenuImgDirective,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RouterModule,\r\n ContentBoxModule,\r\n DropDownButtonModule,\r\n FlexBoxModule,\r\n CoreModule,\r\n ],\r\n exports: [\r\n MenuComponent,\r\n ],\r\n})\r\nexport class MenuModule {\r\n}\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {Subject} from 'rxjs';\r\nimport {takeUntil} from 'rxjs/operators';\r\nimport {ApiService} from '../../core/api/lib/api.service';\r\nimport {TranslatorService} from '../../core/i18n/lib/translator.service';\r\nimport {Network} from '@capacitor/network';\r\nimport {NetworkPlugin} from '@capacitor/network/dist/esm/definitions';\r\nimport {PluginListenerHandle} from '@capacitor/core';\r\n\r\n@Component({\r\n selector: 'mo-offline-notification',\r\n templateUrl: './offline-notification.component.html',\r\n styleUrls: ['./offline-notification.component.scss'],\r\n})\r\nexport class OfflineNotificationComponent implements OnInit, OnDestroy {\r\n\r\n public offline: boolean = false;\r\n\r\n public message: string | undefined;\r\n\r\n public buttonText: string | undefined;\r\n\r\n private handler?: PluginListenerHandle;\r\n\r\n private network: NetworkPlugin = Network;\r\n\r\n private destroyed$: Subject = new Subject();\r\n\r\n private fallbackButtonText: string = 'Try again';\r\n\r\n private fallbackMassage: string = 'It seems like there is no internet connection or the server cannot be reached.';\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private translatorService: TranslatorService,\r\n ) {\r\n }\r\n\r\n public async ngOnInit() {\r\n this.handler = this.network.addListener('networkStatusChange', (status) => {\r\n if (!status.connected) { // We don't want to hide the popup automatically. So we add this condition.\r\n this.offline = true;\r\n }\r\n });\r\n\r\n this.apiService.requestCancelled$\r\n .pipe(takeUntil(this.destroyed$))\r\n .subscribe(() => this.offline = true);\r\n\r\n this.message = this.translatorService.trans$('b2b.web.error.noConnection').getValue() || this.fallbackMassage;\r\n this.buttonText = this.translatorService.trans$('b2b.web.button.text.tryAgain').getValue() || this.fallbackButtonText;\r\n }\r\n\r\n public ngOnDestroy() {\r\n this.handler?.remove();\r\n this.destroyed$.next();\r\n this.destroyed$.complete();\r\n }\r\n\r\n public reload(): void {\r\n this.offline = false;\r\n window.location.reload();\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n

\r\n \r\n

\r\n

\r\n {{message}}\r\n

\r\n
\r\n \r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { OfflineNotificationComponent } from './offline-notification.component';\r\nimport {BackdropModule} from '../../ui/backdrop/backdrop.module';\r\nimport {PopupModule} from '../../ui/popup/popup.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [OfflineNotificationComponent],\r\n imports: [\r\n CommonModule,\r\n BackdropModule,\r\n PopupModule,\r\n ],\r\n exports: [\r\n OfflineNotificationComponent,\r\n ],\r\n})\r\nexport class OfflineNotificationModule { }\r\n","import {Component, OnInit, Output, EventEmitter, ViewChild, ElementRef} from '@angular/core';\r\nimport {TextInputComponent} from '../../ui/input/text-input.component';\r\n\r\n@Component({\r\n selector: 'mo-search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.scss'],\r\n})\r\nexport class SearchComponent implements OnInit {\r\n @Output()\r\n public closeButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('search')\r\n private search!: TextInputComponent;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public focus(): void {\r\n this.search.focus();\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n

{{'b2b.web.page.search.text.noResults' | moTranslate}}

\r\n
\r\n\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SearchComponent } from './search.component';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\nimport {TextInputModule} from '../../ui/input/text-input.module';\r\nimport {ToolbarModule} from '../../ui/toolbar/toolbar.module';\r\nimport {CoreModule} from '../../core/core.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SearchComponent],\r\n exports: [\r\n SearchComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ContentBoxModule,\r\n ButtonModule,\r\n FlexBoxModule,\r\n TextInputModule,\r\n ToolbarModule,\r\n CoreModule,\r\n ],\r\n})\r\nexport class SearchModule { }\r\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-shopping-cart',\r\n templateUrl: './shopping-cart.component.html',\r\n styleUrls: ['./shopping-cart.component.scss'],\r\n})\r\nexport class ShoppingCartComponent implements OnInit {\r\n\r\n @Output()\r\n public closeButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n // Muss durch richtigen Datentypen ersetzt werden\r\n public cartItems: number = 0;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n\r\n

Ihr Warenkorb ist leer.

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

{{'b2b.web.page.endless-aisle-article.text.cart' | moTranslate}}

\r\n {{cartItems}} Artikel\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n

{{'Gesamtbetrag 0,00 EUR' }}

\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 {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {ShoppingCartComponent} from './shopping-cart.component';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {NoteModule} from '../../ui/note/note.module';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {GridModule} from '../../ui/grid/grid.module';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ContentBoxModule,\r\n FlexBoxModule,\r\n ButtonModule,\r\n NoteModule,\r\n CoreModule,\r\n GridModule,\r\n ],\r\n declarations: [\r\n ShoppingCartComponent\r\n ],\r\n providers: [\r\n ],\r\n exports: [\r\n ShoppingCartComponent,\r\n ],\r\n})\r\nexport class ShoppingCartModule {\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {Store} from '../../core/store/store.interface';\r\n\r\n@Component({\r\n selector: 'mo-store-select-box',\r\n templateUrl: './store-select-box.component.html',\r\n styleUrls: ['./store-select-box.component.scss'],\r\n})\r\nexport class StoreSelectBoxComponent implements OnInit {\r\n @Input()\r\n public stores: Store[] = [];\r\n\r\n @Input()\r\n public currentStore?: Store;\r\n\r\n @Input()\r\n public showClearButton: boolean = false;\r\n\r\n @Input()\r\n public disabled: boolean = false;\r\n\r\n @Input()\r\n public placeholder: string = 'b2b.web.page.myAccount.placeholder.chooseStore';\r\n\r\n @Output()\r\n public valueChanged = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public _onValueChanged(e: any) {\r\n if (!e.event) {\r\n return;\r\n }\r\n\r\n this.valueChanged.next(e.value);\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n {{data?.id}}\r\n
\r\n \r\n \r\n {{data?.name2}}\r\n \r\n \r\n {{data?.street}}, {{data?.zipCode}} {{data?.city}}, {{data?.countryIso2}}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n {{data?.id}}\r\n {{data.text}}\r\n {{data.name2}}\r\n \r\n \r\n {{data?.street}}, {{data?.zipCode}} {{data?.city}}, {{data?.countryIso2}}\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 { DxSelectBoxModule, DxTextBoxModule } from 'devextreme-angular';\r\nimport { CoreModule } from '../../core/core.module';\r\nimport { FlexBoxModule } from '../../ui/flex-box/flex-box.module';\r\nimport { NoteModule } from '../../ui/note/note.module';\r\nimport { StoreSelectBoxComponent } from '../store-select-box/store-select-box.component';\r\n\r\n@NgModule({\r\n declarations: [StoreSelectBoxComponent],\r\n exports: [StoreSelectBoxComponent],\r\n imports: [CoreModule, CommonModule, DxSelectBoxModule, DxTextBoxModule, FlexBoxModule, NoteModule],\r\n})\r\nexport class StoreSelectionBoxModule {}\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {StoreService} from '../../core/store/store.service';\r\nimport {Store} from '../../core/store/store.interface';\r\nimport {UserSettingsService} from '../../core/user/lib/user-settings.service';\r\nimport {finalize, switchMap, take, takeUntil} from 'rxjs/operators';\r\nimport {Subject} from 'rxjs';\r\nimport {ToastService} from '../../ui/toast/lib/toast.service';\r\nimport {TranslatorService} from '../../core/i18n/lib/translator.service';\r\n\r\n@Component({\r\n selector: 'mo-store-selection-dialog',\r\n templateUrl: './store-selection-dialog.component.html',\r\n styleUrls: ['./store-selection-dialog.component.scss'],\r\n})\r\nexport class StoreSelectionDialogComponent implements OnInit, OnDestroy {\r\n public stores: Store[] = [];\r\n\r\n public visible: boolean = false;\r\n\r\n public selectedStore?: Store;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private _storeService: StoreService,\r\n private _toastService: ToastService,\r\n private _settingsService: UserSettingsService,\r\n private _translatorService: TranslatorService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n // Check settings as soon as available to show dialog.\r\n this._storeService\r\n .readStores()\r\n .pipe(\r\n take(1),\r\n switchMap(stores => {\r\n this.stores = stores;\r\n return this._settingsService.userSettings$;\r\n }),\r\n ).pipe(takeUntil(this._destroyed$))\r\n .subscribe(\r\n () => this.checkSettingsAndShowDialog(),\r\n );\r\n }\r\n\r\n public ngOnDestroy() {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public updateCurrentActiveStore(): void {\r\n if (this.selectedStore && this.selectedStore.id >= 0 && this._settingsService.userSettings) {\r\n this._settingsService.userSettings.defaultMerchantId = +this.selectedStore.id;\r\n\r\n this._settingsService\r\n .updateUserSettings(this._settingsService.userSettings)\r\n .pipe(\r\n finalize(() => this.visible = false,\r\n ),\r\n )\r\n .subscribe(\r\n response => {\r\n this._settingsService.setUserSettings(response);\r\n },\r\n () => {\r\n const text = this._translatorService.trans$('b2b.web.page.myAccount.toast.text.couldNotChangeActiveStore').getValue();\r\n this._toastService.show(text ?? '');\r\n },\r\n );\r\n\r\n }\r\n }\r\n\r\n private checkSettingsAndShowDialog(): void {\r\n // If user has default merchant set and selected default merchant is still valid (in store list)\r\n // we don't need to show store selection dialog.\r\n if (this._settingsService.userSettings?.defaultMerchantId) {\r\n const store = this.stores.find(storeTemp => storeTemp.id === this._settingsService.userSettings?.defaultMerchantId);\r\n\r\n if (store) {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n\r\n return;\r\n }\r\n }\r\n\r\n // If no default merchant has been set or merchant not valid anymore do check if store is available.\r\n if (this._settingsService.userSettings) {\r\n // If user has more stores than one store for selection we want to show the store selection dialog.\r\n if (this.stores.length > 1) {\r\n this.visible = true;\r\n\r\n // If user has exactly 1 store for selection we can set this store as active store automatically.\r\n } else if (this.stores.length === 1) {\r\n this.selectedStore = this.stores[0];\r\n this.updateCurrentActiveStore();\r\n }\r\n\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n\r\n \r\n

{{'b2b.web.page.myAccount.popup.text.changeActiveStoreInfo' | moTranslate}}

\r\n
\r\n
{{'b2b.web.page.myAccount.label.currentStore' | moTranslate}}
\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 { StoreSelectionDialogComponent } from './store-selection-dialog.component';\r\nimport {PopupModule} from '../../ui/popup/popup.module';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport { StoreSelectionBoxModule } from '../store-select-box/store-select-box.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n StoreSelectionDialogComponent,\r\n ],\r\n exports: [\r\n StoreSelectionDialogComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n PopupModule,\r\n CoreModule,\r\n StoreSelectionBoxModule\r\n ],\r\n})\r\nexport class StoreSelectionDialogModule { }\r\n","import {Injectable} from '@angular/core';\r\nimport {BehaviorSubject, Observable} from 'rxjs';\r\n\r\n/**\r\n * Service to work with the apps top navigation.\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TopNavigationService {\r\n private _invert: boolean = false;\r\n\r\n private _backButtonVisible$ = new BehaviorSubject(false);\r\n\r\n constructor() {\r\n }\r\n\r\n /**\r\n * Inverts the color of the top navigations text and icons.\r\n *\r\n * @param value True to inverse. False to set it back to normal.\r\n */\r\n public set invert(value: boolean) {\r\n this._invert = value;\r\n }\r\n\r\n public get invert(): boolean {\r\n return this._invert;\r\n }\r\n\r\n public get backButtonVisible(): boolean {\r\n return this._backButtonVisible$.value;\r\n }\r\n\r\n public get backButtonVisible$(): Observable {\r\n return this._backButtonVisible$.asObservable();\r\n }\r\n\r\n /**\r\n * Shows or hides the back button. If back button is shown the menu button is hidden.\r\n *\r\n * @param value\r\n * @example True to show back button. False to hide back button.\r\n */\r\n public showBackButton(value: boolean): void {\r\n this._backButtonVisible$.next(value);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, HostBinding, HostListener, OnDestroy, OnInit, Output} from '@angular/core';\r\nimport {MenuService} from '../menu/lib/menu.service';\r\nimport {TopNavigationService} from './lib/top-navigation.service';\r\nimport {BreakpointService} from '../../core/layout/breakpoint.service';\r\nimport {BreakpointState} from '@angular/cdk/layout';\r\nimport {Subscription} from 'rxjs';\r\nimport {Location} from '@angular/common';\r\nimport { Router } from '@angular/router';\r\nimport { DxMenuTypes } from 'devextreme-angular/ui/menu';\r\nimport { TranslatorService } from 'src/app/core/i18n/lib/translator.service';\r\n\r\nexport interface Menu {\r\n id: string;\r\n name?: string;\r\n path?: string;\r\n icon?: string;\r\n items?: Menu[];\r\n}\r\n\r\n@Component({\r\n selector: 'mo-top-navigation',\r\n templateUrl: './top-navigation.component.html',\r\n styleUrls: ['./top-navigation.component.scss'],\r\n})\r\nexport class TopNavigationComponent implements OnInit, OnDestroy {\r\n @Output()\r\n public searchButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public shoppingCartButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public userButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public contactButtonClicked: EventEmitter = new EventEmitter();\r\n\r\n public xsScreen: boolean = false;\r\n\r\n @HostBinding('class.visible')\r\n private _visible: boolean = true;\r\n\r\n @HostBinding('class.mo-shrunken-top-navigation')\r\n private get _shrunkenTopNavigationClass(): boolean {\r\n return !this._expandedTopNavigationClass;\r\n }\r\n\r\n @HostBinding('class.mo-expanded-top-navigation')\r\n private get _expandedTopNavigationClass(): boolean {\r\n return this._scrolledTop || this.menuIsVisible;\r\n }\r\n\r\n private _scrolledTop: boolean = false;\r\n\r\n private subscription?: Subscription;\r\n\r\n private lastScrollTop: number = 0;\r\n\r\n public settings: Menu[] = [];\r\n\r\n constructor(\r\n private menu: MenuService,\r\n private location: Location,\r\n private topNavigationService: TopNavigationService,\r\n private breakpointService: BreakpointService,\r\n private router: Router,\r\n private translatorService: TranslatorService,\r\n ) {\r\n this.settings = [\r\n {\r\n id: 'root',\r\n icon: 'fal fa-gear',\r\n items: [\r\n {\r\n id: '',\r\n name: this.translatorService.trans$('b2b.web.topNavigation.overlayMenu.users').getValue() ?? 'Users',\r\n path: '/cms/users',\r\n icon: 'fal fa-user',\r\n },\r\n ],\r\n },\r\n ];\r\n }\r\n\r\n ngOnInit(): void {\r\n this.onScroll();\r\n this.subscribeToBreakpointChange();\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n\r\n public scrollTop(): void {\r\n window.scrollTo({top: 0, behavior: 'smooth'});\r\n }\r\n\r\n public toggleMenu(): void {\r\n this.menu.visible = !this.menu.visible;\r\n }\r\n\r\n public get menuIsVisible(): boolean {\r\n return this.menu.visible;\r\n }\r\n\r\n /**\r\n * Defines if the button and logo color should be inverted.\r\n * Will invert only if the menu is not visible and user didn't scroll.\r\n */\r\n public get invert(): boolean {\r\n return this.topNavigationService.invert && this._scrolledTop && !this.menuIsVisible;\r\n }\r\n\r\n public get backButtonVisible(): boolean {\r\n return this.topNavigationService.backButtonVisible;\r\n }\r\n\r\n public navigateBack(): void {\r\n this.location.back();\r\n }\r\n\r\n public onMenuItemClick(e: any): void {\r\n if (!e?.itemData?.path) {\r\n return;\r\n }\r\n\r\n this.router.navigateByUrl(e?.itemData?.path);\r\n }\r\n\r\n private subscribeToBreakpointChange(): void {\r\n this.subscription = this.breakpointService\r\n .observe('(min-width: ' + this.breakpointService.breakpointSm + ')')\r\n .subscribe((state: BreakpointState) => {\r\n this.xsScreen = !state.matches;\r\n });\r\n }\r\n\r\n /**\r\n * Handle showing/ hiding of the top navigation on scrolling.\r\n */\r\n @HostListener('window:scroll', ['$event'])\r\n private onScroll(event?: Event): void {\r\n const scrollTopTemp = document.documentElement.scrollTop;\r\n\r\n // Hide navigation on scroll down.\r\n if (scrollTopTemp > this.lastScrollTop) {\r\n this._visible = false;\r\n\r\n // Show top navbar on scroll up.\r\n } else {\r\n this._visible = true;\r\n this._scrolledTop = scrollTopTemp === 0; // Define to show expanded or shrunken top navigation.\r\n }\r\n\r\n this.lastScrollTop = scrollTopTemp <= 0 ? 0 : scrollTopTemp;\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \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 {TopNavigationComponent} from './top-navigation.component';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {SideBarModule} from '../../ui/side-bar/side-bar.module';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {DxButtonModule, DxMenuModule} from 'devextreme-angular';\r\nimport {FlexBoxModule} from '../../ui/flex-box/flex-box.module';\r\nimport {CoreModule} from '../../core/core.module';\r\n\r\n@NgModule({\r\n declarations: [TopNavigationComponent],\r\n exports: [\r\n TopNavigationComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n SideBarModule,\r\n ContentBoxModule,\r\n RouterModule,\r\n DxButtonModule,\r\n FlexBoxModule,\r\n CoreModule,\r\n DxMenuModule\r\n ],\r\n})\r\nexport class TopNavigationModule {\r\n}\r\n","import {AfterContentChecked, AfterContentInit, AfterViewInit, Component, HostListener, OnInit} from '@angular/core';\r\n\r\n/**\r\n * Layout component for various content pages like \"reset password page\", \"finish registration page\" and \"error page\" ...\r\n */\r\n@Component({\r\n selector: 'mo-various-content',\r\n templateUrl: './various-content.component.html',\r\n styleUrls: ['./various-content.component.scss'],\r\n})\r\nexport class VariousContentComponent implements OnInit, AfterContentChecked {\r\n\r\n public widthBackground: string = '0px';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public ngAfterContentChecked(): void {\r\n setTimeout(() => {\r\n this.onResize();\r\n });\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n public onResize(): void {\r\n const element = document.getElementById('mo-first-col');\r\n if (element) {\r\n this.widthBackground = (element.getBoundingClientRect().x + element.getBoundingClientRect().width) + 'px';\r\n } else {\r\n this.widthBackground = '0px';\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n

\r\n \r\n

\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\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 { VariousContentComponent } from './various-content.component';\r\nimport {GridModule} from '../../ui/grid/grid.module';\r\nimport {ButtonModule} from '../../ui/button/button.module';\r\nimport {RouterModule} from '@angular/router';\r\nimport {ContentBoxModule} from '../../ui/content-box/content-box.module';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {DxButtonModule} from 'devextreme-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [VariousContentComponent],\r\n imports: [\r\n CommonModule,\r\n GridModule,\r\n ButtonModule,\r\n RouterModule,\r\n ContentBoxModule,\r\n CoreModule,\r\n DxButtonModule,\r\n ],\r\n exports: [\r\n VariousContentComponent,\r\n ],\r\n})\r\nexport class VariousContentModule { }\r\n","import {Component, OnDestroy, OnInit} from '@angular/core';\r\nimport {VersionService} from '../../core/version/version.service';\r\nimport {Subject} from 'rxjs';\r\nimport {takeUntil} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'mo-version-notification',\r\n templateUrl: './version-notification.component.html',\r\n styleUrls: ['./version-notification.component.scss'],\r\n})\r\nexport class VersionNotificationComponent implements OnInit, OnDestroy {\r\n public canUpdateVersion: boolean = false;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n constructor(\r\n private _versionService: VersionService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this._versionService.info$\r\n .pipe(takeUntil(this._destroyed$))\r\n .subscribe(\r\n info => {\r\n if (this._versionService.canUpdateVersion()) {\r\n this.canUpdateVersion = true;\r\n }\r\n }\r\n );\r\n }\r\n\r\n public ngOnDestroy() {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n public openAppStore(): void {\r\n this._versionService.updateVersion();\r\n this.canUpdateVersion = false;\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n\r\n \r\n

\r\n {{'b2b.web.versionNotification.popup.text.newAppAvailable' | moTranslate}}\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 { VersionNotificationComponent } from './version-notification.component';\r\nimport {PopupModule} from '../../ui/popup/popup.module';\r\nimport {CoreModule} from '../../core/core.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n VersionNotificationComponent,\r\n ],\r\n exports: [\r\n VersionNotificationComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n PopupModule,\r\n CoreModule,\r\n ],\r\n})\r\nexport class VersionNotificationModule { }\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-backdrop',\r\n templateUrl: './backdrop.component.html',\r\n styleUrls: ['./backdrop.component.scss'],\r\n})\r\nexport class BackdropComponent implements OnInit {\r\n @Input()\r\n @HostBinding('class.visible')\r\n public visible: boolean = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BackdropComponent } from './backdrop.component';\r\nimport {ContentBoxModule} from '../content-box/content-box.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [BackdropComponent],\r\n exports: [\r\n BackdropComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ContentBoxModule,\r\n ],\r\n})\r\nexport class BackdropModule { }\r\n","import {Component, EventEmitter, HostBinding, Input, Output} from '@angular/core';\r\nimport {UiComponent} from '../lib/ui.component';\r\n\r\n@Component({\r\n selector: 'mo-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.scss'],\r\n})\r\nexport class ButtonComponent extends UiComponent {\r\n @Input()\r\n public type: ButtonType = 'button';\r\n\r\n @Input()\r\n public text: string | number = '';\r\n\r\n @Input()\r\n public icon: string = '';\r\n\r\n @Input()\r\n public noPadding?: boolean;\r\n\r\n @Input()\r\n @HostBinding('style.width')\r\n public width?: string;\r\n\r\n @Output()\r\n public buttonClick = new EventEmitter();\r\n\r\n @HostBinding('class.mo-icon-button')\r\n private get isIconButton(): boolean {\r\n return this.icon && !this.text ? true : false;\r\n }\r\n}\r\n\r\nexport type ButtonType = 'button' | 'submit';\r\n","\r\n
{{text}}\r\n\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ButtonComponent} from './button.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ButtonComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n ButtonComponent,\r\n ],\r\n})\r\nexport class ButtonModule {\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\n\r\n/**\r\n * Box to wrap content. This box handles automatically the left/ right space to the devices borders considering mobile/ desktop devices.\r\n */\r\n@Component({\r\n selector: 'mo-content-box',\r\n templateUrl: './content-box.component.html',\r\n styleUrls: ['./content-box.component.scss'],\r\n})\r\nexport class ContentBoxComponent implements OnInit {\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ContentBoxComponent} from './content-box.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ContentBoxComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n ContentBoxComponent,\r\n ],\r\n})\r\nexport class ContentBoxModule {\r\n}\r\n","export default function normalizeEmail(email: unknown): string | null {\r\n if (typeof email !== 'string') {\r\n return null;\r\n }\r\n\r\n return email\r\n .replace(/[–—―‒]/g, '-')\r\n .trim();\r\n}\r\n","import {\r\n AfterContentInit,\r\n Component, ContentChild,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input, OnDestroy,\r\n Optional,\r\n Output,\r\n Self,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {UiComponent} from '../lib/ui.component';\r\nimport {ControlValueAccessor, NgControl} from '@angular/forms';\r\nimport {noop} from 'rxjs';\r\nimport {ValidationErrorComponent} from '../validation-error/validation-error.component';\r\nimport {SelectBoxItem} from '../select-menu/lib/select-box-item';\r\n\r\n@Component({\r\n selector: 'mo-drop-down-button',\r\n templateUrl: './drop-down-button.component.html',\r\n styleUrls: ['./drop-down-button.component.scss'],\r\n})\r\nexport class DropDownButtonComponent extends UiComponent implements ControlValueAccessor, AfterContentInit, OnDestroy {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public value: any[] = [];\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public onChange: (value: any) => void = noop;\r\n public onTouched: () => void = noop;\r\n\r\n @Input()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public items: SelectBoxItem[] | any[] = [];\r\n\r\n @Input()\r\n public keyExpr: string = 'id';\r\n\r\n @Input()\r\n public displayExpr: string = 'text';\r\n\r\n @Input()\r\n public text: string = '';\r\n\r\n @Input()\r\n public icon: string = '';\r\n\r\n @Input()\r\n public multiSelect: boolean = false;\r\n\r\n @Input()\r\n public itemTemplate?: TemplateRef<{data: Element}>;\r\n\r\n @Output()\r\n public itemSelected: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public buttonClicked: EventEmitter = new EventEmitter();\r\n\r\n @HostBinding('class.item-menu-visible')\r\n public itemMenuVisible: boolean = false;\r\n\r\n @ViewChild('selectButton')\r\n private selectButton!: ElementRef;\r\n\r\n @ContentChild(ValidationErrorComponent)\r\n private validationError?: ValidationErrorComponent;\r\n\r\n constructor(\r\n @Self()\r\n @Optional()\r\n public ngControl: NgControl,\r\n ) {\r\n super();\r\n\r\n if (ngControl) {\r\n ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n public ngAfterContentInit(): void {\r\n if (this.ngControl && this.validationError) {\r\n this.validationError.ngControl = this.ngControl;\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this.itemMenuVisible = false;\r\n }\r\n\r\n @HostBinding('class.error')\r\n private get error(): boolean {\r\n return this.ngControl && this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) ? true : false;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n writeValue(obj: any): void {\r\n this.value = obj !== null ? obj : [];\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerOnChange(fn: (value: any) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n public setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n public handleSelectButtonClick(): void {\r\n this.itemMenuVisible = true;\r\n this.buttonClicked.next();\r\n }\r\n\r\n /**\r\n * Toggle active status of selected item and trigger itemSelected event.\r\n * Stop click events on items from bubbling up so we can close item menu on outside click.\r\n * @param e MouseEvent\r\n * @param item Item\r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public select(item: SelectBoxItem | any): void {\r\n // @ts-ignore\r\n const currentIndex = this.value.findIndex(itemTemp => item[this.keyExpr] === itemTemp[this.keyExpr]);\r\n\r\n if (currentIndex === -1) {\r\n\r\n if (!this.multiSelect) {\r\n this.items.forEach(itemTemp => itemTemp.active = false);\r\n this.value = [];\r\n }\r\n\r\n this.value.push(item);\r\n\r\n } else {\r\n this.value.splice(currentIndex, 1);\r\n }\r\n\r\n if (!this.multiSelect) {\r\n this.itemMenuVisible = false;\r\n }\r\n\r\n item.active = !item.active;\r\n\r\n this.onTouched();\r\n this.onChange(this.value);\r\n\r\n this.itemSelected.next(item);\r\n }\r\n\r\n /**\r\n * Close item menu on outside click.\r\n * @param e MouseEvent\r\n */\r\n @HostListener('window:click', ['$event'])\r\n private onWindowClick(e: MouseEvent): void {\r\n if (e.target !== this.selectButton.nativeElement) {\r\n this.itemMenuVisible = false;\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 {DropDownButtonComponent} from './drop-down-button.component';\r\nimport {ScrollingModule} from '@angular/cdk/scrolling';\r\nimport {SelectMenuModule} from '../select-menu/select-menu.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [DropDownButtonComponent],\r\n exports: [\r\n DropDownButtonComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ScrollingModule,\r\n SelectMenuModule,\r\n ],\r\n})\r\nexport class DropDownButtonModule {\r\n}\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-flex-box',\r\n templateUrl: './flex-box.component.html',\r\n styleUrls: ['./flex-box.component.scss'],\r\n})\r\nexport class FlexBoxComponent implements OnInit {\r\n @Input()\r\n @HostBinding('style.align-items')\r\n public alignItems: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch' | 'normal' = 'normal';\r\n\r\n @Input()\r\n @HostBinding('style.justify-content')\r\n public justifyContent: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly' | 'normal' = 'normal';\r\n\r\n @Input()\r\n @HostBinding('style.flex-wrap')\r\n public flexWrap: 'nowrap' | 'wrap' | 'wrap-reverse' = 'nowrap';\r\n\r\n @Input()\r\n @HostBinding('style.flex-direction')\r\n public flexDirection: 'row' | 'row-reverse' | 'column' | 'column-reverse' = 'row';\r\n\r\n @Input()\r\n @HostBinding('style.width')\r\n public width: string = '100%';\r\n\r\n @Input()\r\n @HostBinding('style.height')\r\n public height: string = 'auto';\r\n\r\n @Input()\r\n @HostBinding('style.gap')\r\n public gap: string = '0';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FlexBoxComponent } from './flex-box.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [FlexBoxComponent],\r\n exports: [\r\n FlexBoxComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n})\r\nexport class FlexBoxModule { }\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-floating-button',\r\n templateUrl: './floating-button.component.html',\r\n styleUrls: ['./floating-button.component.scss'],\r\n})\r\nexport class FloatingButtonComponent implements OnInit {\r\n @Input()\r\n public icon: string = 'fal fa-plus';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {FloatingButtonComponent} from './floating-button.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [FloatingButtonComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n FloatingButtonComponent,\r\n ],\r\n})\r\nexport class FloatingButtonModule {\r\n}\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-glass-card',\r\n templateUrl: './glass-card.component.html',\r\n styleUrls: ['./glass-card.component.scss'],\r\n})\r\nexport class GlassCardComponent implements OnInit {\r\n @Input()\r\n @HostBinding('style.max-width')\r\n public maxWidth?: string;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlassCardComponent } from './glass-card.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [GlassCardComponent],\r\n exports: [\r\n GlassCardComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n})\r\nexport class GlassCardModule { }\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\nimport {GridColDefinition} from '../lib/grid-col-definition';\r\n\r\n@Component({\r\n selector: 'mo-grid-col',\r\n templateUrl: './grid-col.component.html',\r\n styleUrls: ['./grid-col.component.scss'],\r\n})\r\nexport class GridColComponent implements OnInit {\r\n @Input()\r\n public set cols(colDefinition: GridColDefinition) {\r\n if (colDefinition) {\r\n this._cols = '';\r\n for (const key in colDefinition) {\r\n // @ts-ignore\r\n if (colDefinition[key]) {\r\n // @ts-ignore\r\n this._cols += 'mo-grid-col-' + key + '-' + colDefinition[key] + ' ';\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Defines where the row starts.\r\n * @example | | span | span | auto\r\n */\r\n @Input()\r\n @HostBinding('style.grid-row-start')\r\n public rowStart: string | number = 'auto';\r\n\r\n /**\r\n * Defines where the row ends.\r\n * @example | | span | span | auto\r\n */\r\n @Input()\r\n @HostBinding('style.grid-row-end')\r\n public rowEnd: string | number = 'auto';\r\n\r\n @HostBinding('class')\r\n private _cols: string = '';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n/**\r\n * Grid component with 12 columns.\r\n */\r\n@Component({\r\n selector: 'mo-grid',\r\n templateUrl: './grid.component.html',\r\n styleUrls: ['./grid.component.scss'],\r\n})\r\nexport class GridComponent implements OnInit {\r\n @Input()\r\n @HostBinding('style.grid-row-gap')\r\n public gridRowGap?: string;\r\n\r\n @Input()\r\n @HostBinding('style.grid-column-gap')\r\n public gridColumnGap?: string;\r\n\r\n @Input()\r\n @HostBinding('style.grid-template-columns')\r\n public gridTemplateColumns?: string = 'repeat(12, 1fr)';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {GridComponent} from './grid.component';\r\nimport {GridColComponent} from './grid-col/grid-col.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [GridComponent, GridColComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [GridComponent, GridColComponent],\r\n})\r\nexport class GridModule {\r\n}\r\n","import {ControlValueAccessor, NgControl} from '@angular/forms';\r\nimport {AfterContentInit, Component, ContentChild, ElementRef, HostBinding, Input, Optional, Self, ViewChild} from '@angular/core';\r\nimport {isString, noop} from 'lodash';\r\nimport {UiComponent} from '../lib/ui.component';\r\nimport {ValidationErrorComponent} from '../validation-error/validation-error.component';\r\n\r\n@Component({\r\n selector: 'mo-text-input',\r\n templateUrl: './text-input.component.html',\r\n styleUrls: ['./text-input.component.scss'],\r\n})\r\nexport class TextInputComponent extends UiComponent implements ControlValueAccessor, AfterContentInit {\r\n @Input()\r\n public type: TextInputType = 'text';\r\n\r\n @Input()\r\n @HostBinding('style.display')\r\n public display: 'block' | 'inline-block' = 'block';\r\n\r\n @Input()\r\n @HostBinding('style.width')\r\n public width: string | number = 'auto';\r\n\r\n @Input()\r\n @HostBinding('style.max-width')\r\n public maxWidth: string | number = 'auto';\r\n\r\n @Input()\r\n public enableClearButton: boolean = true;\r\n\r\n @Input()\r\n public label: string = '';\r\n\r\n @Input()\r\n public placeholder: string = '';\r\n\r\n @Input()\r\n public readOnly: boolean = false;\r\n\r\n @Input()\r\n public value: string = '';\r\n\r\n public ngControl: NgControl | undefined;\r\n public onChange: (value: string) => void = noop;\r\n public onTouched: () => void = noop;\r\n\r\n @ViewChild('inputElement')\r\n private inputElement!: ElementRef;\r\n\r\n @HostBinding('class.mo-label-up')\r\n private get labelUp(): boolean {\r\n return this.hasFocus || (this.value ? true : false);\r\n }\r\n\r\n @HostBinding('class.error')\r\n private get error(): boolean {\r\n return this.ngControl && this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) ? true : false;\r\n }\r\n\r\n @ContentChild(ValidationErrorComponent)\r\n private validationError?: ValidationErrorComponent;\r\n\r\n public hasFocus: boolean = false;\r\n\r\n public constructor(\r\n @Self()\r\n @Optional()\r\n ngControl: NgControl, // Leider kann man das @Optional() im Type nicht als \"undefined\" sichtbar machen,\r\n // deshalb wird der Parameter nicht direkt als Eigenschaft deklariert ...\r\n ) {\r\n super();\r\n\r\n this.ngControl = ngControl;\r\n\r\n if (ngControl) {\r\n ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n public ngAfterContentInit(): void {\r\n if (this.ngControl && this.validationError) {\r\n this.validationError.ngControl = this.ngControl;\r\n }\r\n }\r\n\r\n public registerOnChange(fn: (value: string) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n public registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n public setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n public writeValue(obj: string | null): void {\r\n this.value = obj != null ? obj + '' : '';\r\n }\r\n\r\n public focus(): void {\r\n this.inputElement.nativeElement.focus();\r\n }\r\n\r\n public clear(): void {\r\n this.value = '';\r\n this.onTouched();\r\n this.onChange(this.value);\r\n }\r\n}\r\n\r\nexport type TextInputType =\r\n | 'text'\r\n | 'password'\r\n | 'email'\r\n | 'url'\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 {TextInputComponent} from './text-input.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n TextInputComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n TextInputComponent,\r\n ],\r\n})\r\nexport class TextInputModule {\r\n}\r\n","export const UiComponentColorType = {\r\n black: 'black',\r\n white: 'white',\r\n red: 'red',\r\n gray: 'gray',\r\n lightGray: 'lightGray',\r\n} as const;\r\n\r\nexport type UiComponentColorType =\r\n | 'black'\r\n | 'white'\r\n | 'red'\r\n | 'gray'\r\n | 'lightGray';\r\n","export const UiComponentStyleType = {\r\n filled: 'filled',\r\n outline: 'outline',\r\n text: 'text',\r\n} as const;\r\n\r\nexport type UiComponentStyleType =\r\n | 'filled'\r\n | 'outline'\r\n | 'text';\r\n","import {Component, HostBinding, Input} from '@angular/core';\r\nimport {UiComponentColorType} from './ui-component-color.type';\r\nimport {UiComponentStyleType} from './ui-component-style-type';\r\n\r\n/**\r\n * Base class for ui components like buttons, inputs, etc.\r\n */\r\n@Component({\r\n selector: 'mo-ui',\r\n template: '',\r\n})\r\nexport abstract class UiComponent {\r\n @Input()\r\n public colorType: UiComponentColorType = UiComponentColorType.black;\r\n\r\n @Input()\r\n public styleType: UiComponentStyleType = UiComponentStyleType.filled;\r\n\r\n @Input()\r\n @HostBinding('class.disabled')\r\n public disabled: boolean = false;\r\n\r\n constructor() {\r\n }\r\n\r\n @HostBinding('class.black')\r\n private get blackColor(): boolean {\r\n return this.colorType === UiComponentColorType.black;\r\n }\r\n\r\n @HostBinding('class.white')\r\n private get whiteColor(): boolean {\r\n return this.colorType === UiComponentColorType.white;\r\n }\r\n\r\n @HostBinding('class.red')\r\n private get redColor(): boolean {\r\n return this.colorType === UiComponentColorType.red;\r\n }\r\n\r\n @HostBinding('class.gray')\r\n private get grayColor(): boolean {\r\n return this.colorType === UiComponentColorType.gray;\r\n }\r\n\r\n @HostBinding('class.light-gray')\r\n private get lightGrayColor(): boolean {\r\n return this.colorType === UiComponentColorType.lightGray;\r\n }\r\n\r\n @HostBinding('class.filled')\r\n private get styleTypeFilled(): boolean {\r\n return this.styleType === UiComponentStyleType.filled;\r\n }\r\n\r\n @HostBinding('class.outline')\r\n private get styleTypeOutline(): boolean {\r\n return this.styleType === UiComponentStyleType.outline;\r\n }\r\n\r\n @HostBinding('class.text')\r\n private get styleTypeText(): boolean {\r\n return this.styleType === UiComponentStyleType.text;\r\n }\r\n\r\n}\r\n","import {Component, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-loader',\r\n templateUrl: './loader.component.html',\r\n styleUrls: ['./loader.component.scss'],\r\n})\r\nexport class LoaderComponent implements OnInit {\r\n /**\r\n * Width of the loader. Height will be the same as width.\r\n */\r\n @Input()\r\n public width: string = 'var(--spacer)';\r\n\r\n @HostBinding('style.width')\r\n @HostBinding('style.height')\r\n private get _width(): string {\r\n return this.width;\r\n }\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {LoaderComponent} from './loader.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [LoaderComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [LoaderComponent],\r\n})\r\nexport class LoaderModule {\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-note',\r\n templateUrl: './note.component.html',\r\n styleUrls: ['./note.component.scss']\r\n})\r\nexport class NoteComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NoteComponent } from './note.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [NoteComponent],\r\n exports: [\r\n NoteComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n})\r\nexport class NoteModule { }\r\n","import {Injectable} from '@angular/core';\r\nimport {BehaviorSubject, Observable, Subject} from 'rxjs';\r\n\r\n/**\r\n * Popup service for communication within the popup.\r\n * This service is provided inside the popup component.\r\n */\r\n@Injectable()\r\nexport class PopupInternalService {\r\n\r\n private _visible$ = new BehaviorSubject(false);\r\n\r\n private _confirm$ = new Subject();\r\n\r\n private _cancel$ = new Subject();\r\n\r\n constructor() {\r\n }\r\n\r\n public get visible(): boolean {\r\n return this._visible$.value;\r\n }\r\n\r\n public get visible$(): Observable {\r\n return this._visible$.asObservable();\r\n }\r\n\r\n public get confirm$(): Observable {\r\n return this._confirm$.asObservable();\r\n }\r\n\r\n public get cancel$(): Observable {\r\n return this._cancel$.asObservable();\r\n }\r\n\r\n public show(): void {\r\n this._visible$.next(true);\r\n }\r\n\r\n public hide(): void {\r\n this._visible$.next(false);\r\n }\r\n\r\n public confirm(): void {\r\n this._confirm$.next();\r\n }\r\n\r\n public cancel(): void {\r\n this._cancel$.next();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-popup-body',\r\n templateUrl: './popup-body.component.html',\r\n styleUrls: ['./popup-body.component.scss']\r\n})\r\nexport class PopupBodyComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { PopupInternalService } from '../lib/popup-internal.service';\r\n\r\n@Component({\r\n selector: 'mo-popup-footer',\r\n templateUrl: './popup-footer.component.html',\r\n styleUrls: ['./popup-footer.component.scss'],\r\n})\r\nexport class PopupFooterComponent implements OnInit {\r\n @Input()\r\n public confirmButtonTextKey: string = 'b2b.web.general.button.text.ok';\r\n\r\n @Input()\r\n public cancelButtonTextKey: string = 'b2b.web.general.button.text.cancel';\r\n\r\n /**\r\n * Shows/ hides confirm button.\r\n */\r\n @Input()\r\n public enableConfirmButton: boolean = true;\r\n\r\n /**\r\n * Shows/ hides cancel button.\r\n */\r\n @Input()\r\n public enableCancelButton: boolean = true;\r\n\r\n /**\r\n * Disables confirm button.\r\n */\r\n @Input()\r\n public disableConfirmButton: boolean = false;\r\n\r\n /**\r\n * Disables cancel button.\r\n */\r\n @Input()\r\n public disableCancelButton: boolean = false;\r\n\r\n @Input()\r\n public flexWrap: 'nowrap' | 'wrap' | 'wrap-reverse' = 'nowrap';\r\n\r\n @Input()\r\n public flex?: string = '0 0 auto';\r\n\r\n constructor(private popupInternalService: PopupInternalService) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n public cancel(): void {\r\n this.popupInternalService.cancel();\r\n }\r\n\r\n public confirm(): void {\r\n this.popupInternalService.confirm();\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 {PopupInternalService} from '../lib/popup-internal.service';\r\n\r\n@Component({\r\n selector: 'mo-popup-header',\r\n templateUrl: './popup-header.component.html',\r\n styleUrls: ['./popup-header.component.scss'],\r\n})\r\nexport class PopupHeaderComponent implements OnInit {\r\n @Input()\r\n public titleTextKey: string = '';\r\n\r\n @Input()\r\n public enableCloseButton: boolean = true;\r\n\r\n @Input()\r\n public disableCloseButton: boolean = false;\r\n\r\n constructor(\r\n private popupInternalService: PopupInternalService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public cancel(): void {\r\n this.popupInternalService.cancel();\r\n }\r\n\r\n}\r\n","

{{titleTextKey | moTranslate}}

\r\n\r\n\r\n\r\n\r\n","import { Component, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { PopupInternalService } from './lib/popup-internal.service';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { ScrollbarService } from '../../core/layout/scrollbar.service';\r\nimport { NativeAppService, Overlay } from '../../core/native/native-app/native-app.service';\r\n\r\n@Component({\r\n selector: 'mo-popup',\r\n templateUrl: './popup.component.html',\r\n styleUrls: ['./popup.component.scss'],\r\n providers: [PopupInternalService],\r\n})\r\nexport class PopupComponent implements OnInit, OnDestroy, Overlay {\r\n @Input()\r\n minWidth: string = 'auto';\r\n\r\n @Input()\r\n public width: string = 'auto';\r\n\r\n @Input()\r\n public height: string = 'auto';\r\n\r\n @Input()\r\n public set visible(value: boolean) {\r\n if (value) {\r\n this.popupInternalService.show();\r\n } else {\r\n this.popupInternalService.hide();\r\n }\r\n }\r\n\r\n public get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n @Output()\r\n public confirmed: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public cancelled: EventEmitter = new EventEmitter();\r\n\r\n @HostBinding('class.visible')\r\n private _visible: boolean = false;\r\n\r\n private _destroyed$ = new Subject();\r\n\r\n private _registeredInHistory: boolean = false;\r\n\r\n constructor(\r\n private scrollbarService: ScrollbarService,\r\n private nativeAppService: NativeAppService,\r\n private popupInternalService: PopupInternalService\r\n ) {}\r\n\r\n public ngOnInit(): void {\r\n this.popupInternalService.visible$.pipe(takeUntil(this._destroyed$)).subscribe((visible) => {\r\n this.scrollbarService.disableAppScrollbars(visible);\r\n\r\n this._visible = visible;\r\n\r\n // Add/ remove popup to/ from history for usage with mobile devices back button.\r\n if (visible && !this._registeredInHistory) {\r\n this._registeredInHistory = true;\r\n this.nativeAppService.addToHistory(this);\r\n } else if (!visible && this._registeredInHistory) {\r\n this._registeredInHistory = false;\r\n this.nativeAppService.removeLastFromHistory();\r\n }\r\n });\r\n this.popupInternalService.confirm$.pipe(takeUntil(this._destroyed$)).subscribe(() => this.confirmed.next(this));\r\n this.popupInternalService.cancel$.pipe(takeUntil(this._destroyed$)).subscribe(() => {\r\n this.popupInternalService.hide();\r\n this.cancelled.next(this);\r\n });\r\n }\r\n\r\n public ngOnDestroy() {\r\n this._destroyed$.next();\r\n this._destroyed$.complete();\r\n }\r\n\r\n /**\r\n * Close popup on outside click.\r\n */\r\n public close(): void {\r\n // ToDo\r\n this.popupInternalService.hide();\r\n }\r\n}\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 {PopupComponent} from './popup.component';\r\nimport {ButtonModule} from '../button/button.module';\r\nimport {PopupFooterComponent} from './popup-footer/popup-footer.component';\r\nimport {PopupHeaderComponent} from './popup-header/popup-header.component';\r\nimport {PopupBodyComponent} from './popup-body/popup-body.component';\r\nimport {BackdropModule} from '../backdrop/backdrop.module';\r\nimport {CoreModule} from '../../core/core.module';\r\nimport {DxButtonModule} from 'devextreme-angular';\r\nimport { FlexBoxModule } from '../flex-box/flex-box.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopupComponent,\r\n PopupFooterComponent,\r\n PopupHeaderComponent,\r\n PopupBodyComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n BackdropModule,\r\n CoreModule,\r\n DxButtonModule,\r\n FlexBoxModule,\r\n ],\r\n exports: [\r\n PopupComponent,\r\n PopupFooterComponent,\r\n PopupHeaderComponent,\r\n PopupBodyComponent,\r\n ],\r\n})\r\nexport class PopupModule {\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, TemplateRef } from '@angular/core';\r\nimport { BreakpointService } from '../../core/layout/breakpoint.service';\r\nimport { ScrollbarService } from '../../core/layout/scrollbar.service';\r\nimport { SelectBoxItem } from './lib/select-box-item';\r\n\r\n/**\r\n * Component to use as drop down menu for drop down button and select box.\r\n */\r\n@Component({\r\n selector: 'mo-select-menu',\r\n templateUrl: './select-menu.component.html',\r\n styleUrls: ['./select-menu.component.scss'],\r\n})\r\nexport class SelectMenuComponent {\r\n @Input()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public items: SelectBoxItem[] | any[] = [];\r\n\r\n @Input()\r\n public itemTemplate?: TemplateRef<{data: Element}>;\r\n\r\n @Input()\r\n public keyExpr: string = 'id';\r\n\r\n @Input()\r\n public displayExpr: string = 'text';\r\n\r\n @Output()\r\n public itemSelected: EventEmitter = new EventEmitter();\r\n\r\n public isMdScreen: boolean = true;\r\n\r\n private _visible: boolean = false;\r\n\r\n private _hasDisabledScrollbars: boolean = false;\r\n\r\n\r\n constructor(private breakpointService: BreakpointService, private scrollbarService: ScrollbarService) {}\r\n\r\n @Input()\r\n public set visible(visible: boolean) {\r\n this.isMdScreen = this.breakpointService.isGreaterOrEqualMdScreen;\r\n this._visible = visible;\r\n\r\n if (this._visible) {\r\n this.disableScrollbars();\r\n } else {\r\n this.enableScrollbars();\r\n }\r\n }\r\n\r\n public get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public handleItemSelection(e: MouseEvent, item: SelectBoxItem | any): void {\r\n e.stopPropagation();\r\n this.itemSelected.next(item);\r\n }\r\n\r\n private disableScrollbars(): void {\r\n if (!this.isMdScreen && !this.scrollbarService.scrollbarsDisabled) {\r\n this.scrollbarService.disableAppScrollbars(true);\r\n this._hasDisabledScrollbars = true;\r\n }\r\n }\r\n\r\n /**\r\n * Enables the app scroll bars if this component has disabled the scrollbars before.\r\n * @private\r\n */\r\n private enableScrollbars(): void {\r\n if (this._hasDisabledScrollbars) {\r\n this.scrollbarService.disableAppScrollbars(false);\r\n this._hasDisabledScrollbars = false;\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n {{item[displayExpr]}}\r\n \r\n \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[displayExpr]}}\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 { SelectMenuComponent } from './select-menu.component';\r\nimport {ScrollingModule} from '@angular/cdk/scrolling';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [SelectMenuComponent],\r\n exports: [\r\n SelectMenuComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ScrollingModule,\r\n ],\r\n})\r\nexport class SelectMenuModule { }\r\n","import {\r\n AfterContentInit,\r\n Component, ContentChild,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding, HostListener,\r\n Input, OnDestroy,\r\n Optional,\r\n Output,\r\n Self,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {UiComponent} from '../lib/ui.component';\r\nimport {ControlValueAccessor, NgControl} from '@angular/forms';\r\nimport {noop} from 'rxjs';\r\nimport {ValidationErrorComponent} from '../validation-error/validation-error.component';\r\nimport {SelectBoxItem} from '../select-menu/lib/select-box-item';\r\n\r\n@Component({\r\n selector: 'mo-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss'],\r\n})\r\nexport class SelectComponent extends UiComponent implements ControlValueAccessor, AfterContentInit, OnDestroy {\r\n @Input()\r\n public enableClearButton: boolean = true;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public value: any[] = [];\r\n\r\n public get displayValue(): string | null {\r\n if (this.value.length > 0) {\r\n let result = '';\r\n this.value.forEach((item, index) => {\r\n result = result + item[this.displayExpr] + ((index < this.value.length - 1) ? ', ' : '');\r\n });\r\n return result;\r\n }\r\n return this.value[0] ? this.value[0][this.displayExpr] + '' : null;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public onChange: (value: any) => void = noop;\r\n public onTouched: () => void = noop;\r\n\r\n @Input()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public items: SelectBoxItem[] | any[] = [];\r\n\r\n @Input()\r\n public keyExpr: string = 'id';\r\n\r\n @Input()\r\n public displayExpr: string = 'text';\r\n\r\n @Input()\r\n public label: string = '';\r\n\r\n @Input()\r\n public placeholder: string = '';\r\n\r\n @Input()\r\n public icon: string = '';\r\n\r\n @Input()\r\n public multiSelect: boolean = false;\r\n\r\n @Input()\r\n public itemTemplate?: TemplateRef<{data: Element}>;\r\n\r\n @Input()\r\n @HostBinding('style.width')\r\n public width: string | number = 'auto';\r\n\r\n @Input()\r\n @HostBinding('style.height')\r\n public height: string | number = 'auto';\r\n\r\n @Output()\r\n public itemSelected: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public buttonClicked: EventEmitter = new EventEmitter();\r\n\r\n @HostBinding('class.item-menu-visible')\r\n public itemMenuVisible: boolean = false;\r\n\r\n @ViewChild('selectButton')\r\n private selectButton!: ElementRef;\r\n\r\n @HostBinding('class.mo-label-up')\r\n private get labelUp(): boolean {\r\n return this.hasFocus || (this.value.length ? true : false);\r\n }\r\n\r\n @ContentChild(ValidationErrorComponent)\r\n private validationError?: ValidationErrorComponent;\r\n\r\n public hasFocus: boolean = false;\r\n\r\n constructor(\r\n @Self()\r\n @Optional()\r\n public ngControl: NgControl,\r\n ) {\r\n super();\r\n\r\n if (ngControl) {\r\n ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n public ngAfterContentInit(): void {\r\n if (this.ngControl && this.validationError) {\r\n this.validationError.ngControl = this.ngControl;\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this.itemMenuVisible = false;\r\n }\r\n\r\n @HostBinding('class.error')\r\n private get error(): boolean {\r\n return this.ngControl && this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) ? true : false;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n writeValue(obj: any): void {\r\n this.value = obj !== null ? obj : [];\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerOnChange(fn: (value: any) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n public setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n public handleSelectButtonClick(): void {\r\n this.itemMenuVisible = true;\r\n this.buttonClicked.next();\r\n }\r\n\r\n /**\r\n * Toggle active status of selected item and trigger itemSelected event.\r\n * Stop click events on items from bubbling up so we can close item menu on outside click.\r\n *\r\n * @param e MouseEvent\r\n * @param item Item\r\n */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n public select(item: SelectBoxItem | any): void {\r\n // @ts-ignore\r\n const currentIndex = this.value.findIndex(itemTemp => item[this.keyExpr] === itemTemp[this.keyExpr]);\r\n\r\n if (currentIndex === -1) {\r\n\r\n if (!this.multiSelect) {\r\n this.items.forEach(itemTemp => itemTemp.active = false);\r\n this.value = [];\r\n }\r\n\r\n this.value.push(item);\r\n\r\n } else {\r\n this.value.splice(currentIndex, 1);\r\n }\r\n\r\n if (!this.multiSelect) {\r\n this.itemMenuVisible = false;\r\n }\r\n\r\n item.active = !item.active;\r\n\r\n this.onTouched();\r\n this.onChange(this.value);\r\n\r\n this.itemSelected.next(item);\r\n }\r\n\r\n /**\r\n * Clears the select box.\r\n */\r\n public clear(): void {\r\n this.value = [];\r\n this.onTouched();\r\n this.onChange(this.value);\r\n }\r\n\r\n /**\r\n * Close item menu on outside click.\r\n *\r\n * @param e MouseEvent\r\n */\r\n @HostListener('window:click', ['$event'])\r\n private onWindowClick(e: MouseEvent): void {\r\n if (e.target !== this.selectButton.nativeElement) {\r\n this.itemMenuVisible = 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\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {SelectComponent} from './select.component';\r\nimport {ScrollingModule} from '@angular/cdk/scrolling';\r\nimport {SelectMenuModule} from '../select-menu/select-menu.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [SelectComponent],\r\n exports: [\r\n SelectComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ScrollingModule,\r\n SelectMenuModule,\r\n ],\r\n})\r\nexport class SelectModule {\r\n}\r\n","import {Component, ElementRef, HostBinding, HostListener, Input, OnInit, Output, EventEmitter, OnDestroy, Host} from '@angular/core';\r\nimport {ScrollbarService} from '../../core/layout/scrollbar.service';\r\nimport {NativeAppService, Overlay} from '../../core/native/native-app/native-app.service';\r\n\r\n@Component({\r\n selector: 'mo-side-bar',\r\n templateUrl: './side-bar.component.html',\r\n styleUrls: ['./side-bar.component.scss'],\r\n})\r\nexport class SideBarComponent implements OnInit, OnDestroy, Overlay {\r\n @Output()\r\n public hidden: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n public shown: EventEmitter = new EventEmitter();\r\n\r\n @Input()\r\n public set visible(visible: boolean) {\r\n this._visible = visible;\r\n this.scrollbarService.disableAppScrollbars(visible);\r\n this._visible ? this.shown.next() : this.hidden.next();\r\n\r\n if (visible && !this._registeredInHistory) {\r\n this._registeredInHistory = true;\r\n this.nativeAppService.addToHistory(this);\r\n\r\n } else if (!visible && this._registeredInHistory) {\r\n this._registeredInHistory = false;\r\n this.nativeAppService.removeLastFromHistory();\r\n }\r\n }\r\n\r\n public get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n @Input()\r\n public position: 'left' | 'right' | 'top' | 'bottom' = 'left';\r\n\r\n @Input()\r\n @HostBinding('class.full-width')\r\n public fullWidth: boolean = false;\r\n\r\n @Input()\r\n public width: string = 'var(--sideNavigationWidth)';\r\n\r\n @Input()\r\n @HostBinding('class.dark-background')\r\n public darkBackground: boolean = false;\r\n\r\n @Input()\r\n @HostBinding('class.mo-safe-area-enabled')\r\n public safeAreaEnabled: boolean = true;\r\n\r\n @HostBinding('class.visible')\r\n private _visible: boolean = false;\r\n\r\n @HostBinding('class.left')\r\n private get positionLeft(): boolean {\r\n return this.position === 'left';\r\n }\r\n\r\n @HostBinding('class.right')\r\n private get positionRight(): boolean {\r\n return this.position === 'right';\r\n }\r\n\r\n @HostBinding('class.top')\r\n private get positionTop(): boolean {\r\n return this.position === 'top';\r\n }\r\n\r\n @HostBinding('class.bottom')\r\n private get positionBottom(): boolean {\r\n return this.position === 'bottom';\r\n }\r\n\r\n private _registeredInHistory: boolean = false;\r\n\r\n constructor(\r\n private eRef: ElementRef,\r\n private nativeAppService: NativeAppService,\r\n private scrollbarService: ScrollbarService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this.visible = false; // Important to make document scrollable again if user leave page with open side bar.\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n private onClick(e: MouseEvent): void {\r\n if (e.target === this.eRef.nativeElement) {\r\n this.visible = false;\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 {SideBarComponent} from './side-bar.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SideBarComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n SideBarComponent,\r\n ],\r\n})\r\nexport class SideBarModule {\r\n}\r\n","import {Component, ElementRef, HostBinding, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'mo-slide',\r\n templateUrl: './slide.component.html',\r\n styleUrls: ['./slide.component.scss'],\r\n})\r\nexport class SlideComponent implements OnInit {\r\n @Input()\r\n public title: string = '';\r\n\r\n @Input()\r\n @HostBinding('class.mo-animate')\r\n public enableAnimation: boolean = true;\r\n\r\n constructor(\r\n public elementRef: ElementRef,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n","import {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n Input, OnDestroy,\r\n OnInit,\r\n QueryList, Renderer2,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {SlideComponent} from './slide/slide.component';\r\nimport {UiComponent} from '../lib/ui.component';\r\nimport {startWith} from 'rxjs/operators';\r\nimport {Subscription} from 'rxjs';\r\n\r\n/**\r\n * Slider component for custom content.\r\n * Currently supports only x slide direction. Groundwork for y slide direction is done but needs to be finished.\r\n */\r\n@Component({\r\n selector: 'mo-slider',\r\n templateUrl: './slider.component.html',\r\n styleUrls: ['./slider.component.scss'],\r\n})\r\nexport class SliderComponent extends UiComponent implements OnInit, OnDestroy, AfterContentInit {\r\n /**\r\n * Index of the currently visible slide.\r\n */\r\n @Input()\r\n public currentIndex: number = 0;\r\n\r\n /**\r\n * Length of swipe gesture in px which is needed to switch to another slide. Default is 50px;\r\n */\r\n @Input()\r\n public swipeThreshold: number = 50;\r\n\r\n /**\r\n * Controls arrows are only shown on large screens. To hide the control arrows set the property to false.\r\n */\r\n @Input()\r\n public enableControlArrows: boolean = true;\r\n\r\n /**\r\n * To disable the pagination set the property to false. Then the tab and \"bubble\" pagination wouldn't be shown anymore.\r\n */\r\n @Input()\r\n public enablePagination: boolean = true;\r\n\r\n @Input()\r\n @HostBinding('style.width')\r\n public width: string = '100%';\r\n\r\n @Input()\r\n @HostBinding('style.height')\r\n public height: string = '100%';\r\n\r\n /**\r\n * Sets the pagination type. Default is auto.\r\n * @example 'tabs' = Tabs are used for all kinds of screens\r\n * @example 'bubbles' = Bubbles are used for all kinds of screens\r\n */\r\n @Input()\r\n public paginationType: 'tabs' | 'bubbles' = 'bubbles';\r\n\r\n public animateTabs: boolean = true;\r\n\r\n @ContentChildren(SlideComponent)\r\n public slides!: QueryList;\r\n\r\n @HostBinding('class.bubble-pagination-visible')\r\n private get bubblePaginationVisible(): boolean {\r\n return this.paginationType === 'bubbles';\r\n }\r\n\r\n @HostBinding('class.tab-pagination-visible')\r\n private get tabPaginationVisible(): boolean {\r\n return this.paginationType === 'tabs';\r\n }\r\n\r\n @ViewChild('tabs')\r\n private tabs?: ElementRef;\r\n\r\n private xDown: number | null = null;\r\n\r\n private yDown: number | null = null;\r\n\r\n private lastMove: { x: number | null; y: number | null } = {x: null, y: null};\r\n\r\n private changesSubscription: Subscription | null = null;\r\n\r\n constructor(\r\n private renderer: Renderer2,\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this.changesSubscription) {\r\n this.changesSubscription.unsubscribe();\r\n this.changesSubscription = null;\r\n }\r\n }\r\n\r\n public ngAfterContentInit(): void {\r\n if (this.changesSubscription) {\r\n return;\r\n }\r\n\r\n // We manually add the first emission to keep consistency\r\n this.changesSubscription = this.slides.changes.pipe(startWith(this.slides)).subscribe(() => {\r\n this.initSlides();\r\n this.checkCurrentIndex();\r\n this.moveSlides();\r\n });\r\n }\r\n\r\n @HostListener('mousedown', ['$event'])\r\n public handleMouseStart(evt: MouseEvent): void {\r\n this.xDown = this.lastMove.x = evt.clientX;\r\n this.yDown = this.lastMove.y = evt.clientY;\r\n this.disableAnimation(); // Disable slide animation to set slide position (without delay) equal to mouse position.\r\n }\r\n\r\n @HostListener('mousemove', ['$event'])\r\n public handleMouseMove(evt: MouseEvent): void {\r\n this.handleMove(evt.clientX, evt.clientY);\r\n }\r\n\r\n @HostListener('mouseup', ['$event'])\r\n public handleMouseUp(evt: MouseEvent): void {\r\n this.handleMoveEnd();\r\n }\r\n\r\n @HostListener('touchstart', ['$event'])\r\n public handleTouchStart(evt: TouchEvent): void {\r\n const firstTouch = evt.touches[0];\r\n this.xDown = this.lastMove.x = firstTouch.clientX;\r\n this.yDown = this.lastMove.y = firstTouch.clientY;\r\n this.disableAnimation(); // Disable slide animation to set slide position (without delay) equal to touch position.\r\n }\r\n\r\n @HostListener('touchmove', ['$event'])\r\n public handleTouchMove(evt: TouchEvent): void {\r\n this.handleMove(evt.touches[0].clientX, evt.touches[0].clientY);\r\n }\r\n\r\n @HostListener('touchend', ['$event'])\r\n public handleTouchEnd(evt: TouchEvent): void {\r\n this.handleMoveEnd();\r\n }\r\n\r\n public get previousSlideTitle(): string {\r\n try {\r\n return this.slides.toArray()[this.currentIndex - 1].title;\r\n } catch {\r\n return '';\r\n }\r\n }\r\n\r\n public get nextSlideTitle(): string {\r\n try {\r\n return this.slides.toArray()[this.currentIndex + 1].title;\r\n } catch {\r\n return '';\r\n }\r\n }\r\n\r\n private initSlides(): void {\r\n let left = 0;\r\n for (const slide of this.slides) {\r\n this.renderer.setStyle(slide.elementRef.nativeElement, 'left', left + '%');\r\n left += 100;\r\n }\r\n }\r\n\r\n public next(): void {\r\n if (this.currentIndex + 1 < this.slides.length) {\r\n this.currentIndex++;\r\n }\r\n this.moveSlides();\r\n }\r\n\r\n public previous(): void {\r\n if (this.currentIndex - 1 >= 0) {\r\n this.currentIndex--;\r\n }\r\n this.moveSlides();\r\n }\r\n\r\n public slideTo(index: number): void {\r\n this.currentIndex = index;\r\n this.moveSlides();\r\n }\r\n\r\n private moveSlidesToMouseOrTouchPosition(xDiff: number): void {\r\n for (const slide of this.slides) {\r\n this.renderer\r\n .setStyle(\r\n slide.elementRef.nativeElement,\r\n 'transform',\r\n 'translateX(-' + this.currentIndex * 100 + '%) translateX(' + (-1 * xDiff) + 'px)',\r\n );\r\n }\r\n }\r\n\r\n /**\r\n * Moves the tabs accordingly to the user swipe gesture.\r\n */\r\n private moveTabsToMouseOrTouchPosition(xDiff: number): void {\r\n const tabElement = document.querySelector('[data-tab=\"mo-slider-tab-' + this.currentIndex + '\"]') as HTMLElement;\r\n if (tabElement && this.tabs) {\r\n this.renderer.setStyle(\r\n this.tabs.nativeElement,\r\n 'transform',\r\n 'translateX(50%) ' +\r\n 'translateX(-' + (tabElement.offsetLeft + tabElement.offsetWidth / 2) + 'px) ' +\r\n 'translateX(' + (-.2 * xDiff) + 'px)',\r\n );\r\n }\r\n }\r\n\r\n /**\r\n * Checks if the current index is valid and correct it if not. Needs to be checked after slides has been changed.\r\n * @private\r\n */\r\n private checkCurrentIndex(): void {\r\n this.currentIndex = this.currentIndex > this.slides.length - 1 ? this.slides.length - 1 : this.currentIndex;\r\n }\r\n\r\n /**\r\n * Moves the currently active slide into view.\r\n */\r\n private moveSlides(): void {\r\n this.moveTabs();\r\n for (const slide of this.slides) {\r\n this.renderer.setStyle(slide.elementRef.nativeElement, 'transform', 'translateX(-' + this.currentIndex * 100 + '%)');\r\n }\r\n }\r\n\r\n /**\r\n * Moves the currently active tab into the center of the slider window.\r\n */\r\n private moveTabs(): void {\r\n const tabElement = document.querySelector('[data-tab=\"mo-slider-tab-' + this.currentIndex + '\"]') as HTMLElement;\r\n if (tabElement && this.tabs) {\r\n this.renderer.setStyle(\r\n this.tabs.nativeElement,\r\n 'transform',\r\n 'translateX(50%) translateX(-' + (tabElement.offsetLeft + tabElement.offsetWidth / 2) + 'px)',\r\n );\r\n }\r\n }\r\n\r\n private handleMove(xUp: number, yUp: number): void {\r\n if (!this.xDown || !this.yDown) {\r\n return;\r\n }\r\n\r\n this.lastMove.x = xUp;\r\n this.lastMove.y = yUp;\r\n const xDiff = this.xDown - this.lastMove.x;\r\n const yDiff = this.yDown - this.lastMove.y;\r\n\r\n this.moveTabsToMouseOrTouchPosition(xDiff);\r\n this.moveSlidesToMouseOrTouchPosition(xDiff);\r\n }\r\n\r\n private handleMoveEnd(): void {\r\n if (!this.xDown || !this.yDown || !this.lastMove.x || !this.lastMove.y) {\r\n return;\r\n }\r\n\r\n const xDiff = this.xDown - this.lastMove.x;\r\n const yDiff = this.yDown - this.lastMove.y;\r\n\r\n // Enable slide animations so that the slide can visible move into place.\r\n this.enableAnimation();\r\n\r\n // Check most significant slide direction\r\n // if (Math.abs(xDiff) > Math.abs(yDiff)) {\r\n\r\n // Slide in x direction\r\n if (Math.abs(xDiff) > this.swipeThreshold) {\r\n\r\n if (xDiff > 0) { // left swipe\r\n this.next();\r\n\r\n } else { // right swipe\r\n this.previous();\r\n }\r\n\r\n } else { // Back to movement start position because threshold was not reached\r\n this.moveSlides();\r\n }\r\n\r\n // Slide in y direction\r\n // } else {\r\n // if (Math.abs(yDiff) > this.swipeThreshold) {\r\n // this.moveSlides();\r\n //\r\n // if (yDiff > 0) {\r\n // /* up swipe */\r\n // // ToDo ...\r\n // } else {\r\n // /* down swipe */\r\n // // ToDo ...\r\n // }\r\n // } else {\r\n // this.moveSlides();\r\n // }\r\n // }\r\n\r\n this.clear();\r\n }\r\n\r\n private clear(): void {\r\n this.xDown = null;\r\n this.yDown = null;\r\n this.lastMove.x = null;\r\n this.lastMove.y = null;\r\n }\r\n\r\n private disableAnimation(): void {\r\n this.animateTabs = false;\r\n for (const slide of this.slides) {\r\n slide.enableAnimation = false;\r\n }\r\n }\r\n\r\n private enableAnimation(): void {\r\n this.animateTabs = true;\r\n for (const slide of this.slides) {\r\n slide.enableAnimation = 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

{{slide.title}}

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

{{nextSlideTitle}}

\r\n
\r\n\r\n
0\" class=\"previous mo-slider-control\" (click)=\"previous()\">\r\n

{{previousSlideTitle}}

\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 {SliderComponent} from './slider.component';\r\nimport {SlideComponent} from './slide/slide.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [SliderComponent, SlideComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n SliderComponent,\r\n SlideComponent,\r\n ],\r\n})\r\nexport class SliderModule {\r\n}\r\n","import {EventEmitter, Injectable} from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ToastService {\r\n private _showToast: EventEmitter = new EventEmitter();\r\n\r\n constructor() {\r\n }\r\n\r\n /**\r\n * Event to show a toast.\r\n */\r\n public get showToast(): Observable {\r\n return this._showToast.asObservable();\r\n }\r\n\r\n /**\r\n * Shows a toast.\r\n *\r\n * @param text Text to display.\r\n * @param duration Duration in milli seconds. Default is 3000ms.\r\n */\r\n public show(text: string, duration: number = 3000): void {\r\n this._showToast.next({text, duration});\r\n }\r\n}\r\n\r\nexport interface ShowToastEvent {\r\n text: string;\r\n duration: number;\r\n}\r\n","import {Component, HostBinding, OnInit} from '@angular/core';\r\nimport {Subscription, timer} from 'rxjs';\r\n\r\n/**\r\n * Toast which shows a text for a certain time. Should be used with the ToastService.\r\n * In special cases you can use the toast component directly.\r\n */\r\n@Component({\r\n selector: 'mo-toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n})\r\nexport class ToastComponent implements OnInit {\r\n @HostBinding('class.visible')\r\n private visible: boolean = false;\r\n\r\n public text: string = '';\r\n\r\n private subscription: Subscription | null = null;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n /**\r\n * Shows the toast.\r\n *\r\n * @param text Text to display.\r\n * @param duration Duration in milli seconds.\r\n */\r\n public show(text: string, duration: number = 3000): void {\r\n this.clearSubscription();\r\n\r\n const numbers = timer(duration);\r\n this.text = text;\r\n this.visible = true;\r\n\r\n this.subscription = numbers.subscribe(x => {\r\n this.clearSubscription();\r\n this.visible = false;\r\n });\r\n }\r\n\r\n private clearSubscription(): void {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n this.subscription = null;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n

{{text}}

\r\n \r\n
\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {ToastComponent} from './toast.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [ToastComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [ToastComponent],\r\n})\r\nexport class ToastModule {\r\n}\r\n","import {Component, Host, HostBinding, Input, OnInit} from '@angular/core';\r\nimport {UiComponent} from '../lib/ui.component';\r\nimport {UiComponentColorType} from '../lib/ui-component-color.type';\r\nimport {UiComponentStyleType} from '../lib/ui-component-style-type';\r\n\r\n/**\r\n * Toolbar for custom usage. E.g. in side bars to place headline and close button.\r\n * Has different paddings for ios, android and web.\r\n */\r\n@Component({\r\n selector: 'mo-toolbar',\r\n templateUrl: './toolbar.component.html',\r\n styleUrls: ['./toolbar.component.scss'],\r\n})\r\nexport class ToolbarComponent extends UiComponent implements OnInit {\r\n @Input()\r\n @HostBinding('class.sticky')\r\n public sticky: boolean = false;\r\n\r\n /**\r\n * If true the toolbar would add some padding to be displayed beneath the devices status bar.\r\n * If false, the toolbar wouldn't add space on top. So it could be overlayed by the devices status bar (currently ios).\r\n * For usage inside of a mo-side-bar safeArea should be false because the side bar brings safe area padding with it.\r\n */\r\n @Input()\r\n @HostBinding('class.safe-area')\r\n public safeArea: boolean = false;\r\n\r\n @Input()\r\n public colorType: UiComponentColorType = UiComponentColorType.white;\r\n\r\n @Input()\r\n public styleType: UiComponentStyleType = UiComponentStyleType.filled;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\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 {ToolbarComponent} from './toolbar.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [ToolbarComponent],\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [ToolbarComponent],\r\n})\r\nexport class ToolbarModule {\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {AbstractControl, FormGroup, NgControl} from '@angular/forms';\r\n\r\n/**\r\n * Component to display validation errors in forms. Can be inserted into form elements e.g. the mo-input component.\r\n */\r\n@Component({\r\n selector: 'mo-validation-error',\r\n templateUrl: './validation-error.component.html',\r\n styleUrls: ['./validation-error.component.scss'],\r\n})\r\nexport class ValidationErrorComponent implements OnInit {\r\n @Input()\r\n public ngControl?: NgControl | FormGroup | AbstractControl;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public get maxLength(): Record {\r\n return {maxLength: this.ngControl?.errors?.maxlength?.requiredLength as string};\r\n }\r\n\r\n}\r\n","\r\n \r\n {{ 'b2b.web.validationError.text.requiredTrue' | moTranslate }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.required' | moTranslate }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.eMail' | moTranslate }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.maxLength' | moTranslate : maxLength }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.unequalPasswords' | moTranslate }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.unsecurePassword' | moTranslate }}\r\n \r\n\r\n \r\n {{ 'b2b.web.validationError.text.notANumber' | moTranslate }}\r\n \r\n\r\n \r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ValidationErrorComponent } from './validation-error.component';\r\nimport {CoreModule} from '../../core/core.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [ValidationErrorComponent],\r\n exports: [\r\n ValidationErrorComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n CoreModule,\r\n ],\r\n})\r\nexport class ValidationErrorModule { }\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import {enableProdMode} from '@angular/core';\r\nimport {platformBrowserDynamic} from '@angular/platform-browser-dynamic';\r\nimport {AppModule} from './app/app.module';\r\nimport {environment} from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":["RouterModule","LoginPageComponent","routesWithAuthorization","Policy","NotFoundPageComponent","LoggedInPageComponent","MaintenancePageComponent","routes","path","component","policy","Anonymous","loadChildren","then","m","FinishRegistrationModule","ResetPasswordModule","PrivacyModule","ImprintModule","ContactModule","Authenticated","requiredProgramId","CmsModule","children","StartModule","ShopModule","MyAccountModule","MarketingModule","VisualMerchandiseModule","PosMediaModule","UserAdminModule","FaqModule","ArticleGalleryModule","AppRoutingModule","forRoot","scrollPositionRestoration","imports","i1","exports","Subject","Style","takeUntil","AppComponent","router","apiService","toastService","platformService","statusBarService","nativeAppService","fileAccessTokenService","userSettingsService","translatorService","toast","_destroyed$","constructor","setBackgroundColor","setStyle","Light","init","ngOnInit","showToast","pipe","subscribe","event","show","text","duration","requestMaintenanceModeError$","navigate","ngOnDestroy","next","complete","i0","ɵɵdirectiveInject","Router","i2","ApiService","i3","ToastService","i4","PlatformService","i5","StatusBarService","i6","NativeAppService","i7","FileAccessTokenService","i8","UserSettingsService","i9","TranslatorService","selectors","viewQuery","AppComponent_Query","rf","ctx","ɵɵelement","BrowserModule","APP_INITIALIZER","ReactiveFormsModule","HttpClientModule","TopNavigationModule","SideBarModule","MenuModule","SearchModule","CoreModule","ChatModule","LoginModule","ButtonModule","ToastModule","VariousContentModule","NoteModule","FlexBoxModule","MyAccountMenuModule","ContentBoxModule","ConfigService","GridModule","ShoppingCartModule","ToolbarModule","TokenRefreshService","appInitializer","TokenStorageService","BackdropModule","OfflineNotificationModule","DxButtonModule","VersionNotificationModule","VersionService","StoreSelectionDialogModule","AppModule","bootstrap","provide","useFactory","multi","deps","declarations","throwError","HttpHeaders","resolvePath","catchError","http","tokenStorage","configService","versionService","useEndpoint2","_requestCancelled$","_requestMaintenanceModeError$","endpointUrl","configuration","endpointUrl2","getUrl","params","get","options","headers","getHeaders","error","handleHttpError","delete","post","body","put","requestCancelled$","asObservable","withCredentials","token","info","apiVersion","set","data","status","setAccessToken","setRefreshToken","ɵɵinject","HttpClient","factory","ɵfac","providedIn","paths","url","addQueryToUrl","pathParts","i","length","endsWith","slice","unshift","ABSOLUTE_PATTERN","test","join","joinParams","filter","value","usedParams","PLACEHOLDER_PATTERN","replace","_","optional","raw","name","trim","RangeError","JSON","stringify","result","encodeURIComponent","split","map","part","restParams","Object","entries","keys","indexOf","Array","from","buildQueryParam","key","isArray","item","itemKey","itemValue","Config","tokenStorageService","tokenRefreshService","Promise","_ref","_asyncToGenerator","resolve","editorStylingMode","window","sessionStorage","getItem","load","refreshToken","add","_x","apply","arguments","AuthGuardService","authorization","canActivate","route","state","authorize$","authorized","commands","extras","isAuthorized","queryParams","referrer","AuthorizationService","finalize","tap","AuthenticationService","api","refreshTokenService","login","request","username","password","response","accessToken","startRefreshTokenTimer","logout","switchMap","rightService","rights$","rights","token$","find","right","programId","isAllowed","undefined","RightService","canActivateChild","BehaviorSubject","_token$","getFileAccessToken","RefreshToken","expiresAt","values","parse","atob","Date","exp","isExpired","getTime","now","toString","Observable","of","observer","_rights","_endpointUrl","unsubscribe","hasRight","take","refreshTokenTimeout","hasLock","addEventListener","clearRefreshTokenLock","lock","localStorage","TOKEN_REFRESH_LOCK_KEY","tokenChanged$","stopRefreshTokenTimer","currentToken","timeout","setTimeout","isNativePlatform","setItem","clearTimeout","removeItem","isString","Token","Preferences","_tokenChanged$","_storedTokenChanged$","_refreshToken$","_this","readToken","REFRESH_TOKEN_KEY","ACCESS_TOKEN_KEY","getValue","refreshToken$","storedTokenChanged$","wasRead","currentData","writeToken","remove","userId","email","roles","role","Number","parseInt","sub","_configUrl","_configuration","config","toPromise","TranslatePipe","DatePipe","ArticleImgDirective","PrivateImgDirective","MoBypassSecurityTrustUrlPipe","format","formatDate","parseDate","de","en","fr","it","nl","es","tr","ru","el","pl","pt","memoizeOne","DateFormatterService","translator","formatOrType","date","language","isDateFormatType","getFormatTypes","getFormatOptions","locale","weekStartsOn","useAdditionalWeekYearTokens","useAdditionalDayOfYearTokens","defaults","short","long","shortDate","longDate","shortTime","longTime","dateFormatTypes","includes","parseISO","formatter","transform","pure","defaultLanguage","isValidLanguage","supportedLanguages","translation","subscription","placeholders","trans$","replaceTranslationPlaceholders","Translation","_value","_provider","_providerFactory","providerFactory","message","bind","_language$","detectBrowserLanguage","_messages$","Map","userSettings$","userSettings","messages","language$","messages$","createMessageProvider","lastMessage","__decorate","languages","navigator","iso2","getIso2","index","rePattern","match","substring","resolution","colorSpace","moArticleImg","srcAttr","ngAfterViewInit","loadImage","ngOnChanges","changes","fileAccessToken","hostVars","hostBindings","ArticleImgDirective_HostBindings","moPrivateImg","mediaEndpoint","PrivateImgDirective_HostBindings","PublicImgUrlService","_endpointPublicMedia","endpointPublicMedia","loginBackgroundImgUrl","registrationBackgroundImgUrl","restorePasswordBackgroundImgUrl","Keyboard","KeyboardService","_keyboard","hide","_this2","CssVariables","BreakpointService","cssVariableService","breakpointObserver","breakpointXs","breakpointSm","breakpointMd","breakpointLg","breakpointXl","getCssVariableValue","isMatched","observe","isXsScreen","isSmScreen","endValue","isMdScreen","isLgScreen","isXlScreen","isGreaterOrEqualXsScreen","isGreaterOrEqualSmScreen","isGreaterOrEqualMdScreen","isGreaterOrEqualLgScreen","isGreaterOrEqualXlScreen","CssVariableService","BreakpointObserver","variables","variableName","getComputedStyle","document","documentElement","getPropertyValue","setCssVariableValue","style","setProperty","ScrollbarService","_scrollbarsDisabled$","scrollbarsDisabled","scrollbarsDisabled$","disableAppScrollbars","disable","App","appRef","_app","_overlayHistory","getInfo","addListener","visible","tick","history","back","isActive","addToHistory","overlay","push","removeLastFromHistory","pop","ApplicationRef","Platform","Capacitor","_platform$","web","platform","platform$","setPlatform","getPlatform","android","iOS","html","getElementsByTagName","classList","isAndroid","isIOS","isWeb","StatusBar","_statusBar","e","color","setOverlaysWebView","_this3","StoreService","_endpoint","_cachedStores","readStores","excludeOnlineshops","disabled","readLocalOnlyStores","endpoint","_userSettings$","_refresh$","setUserSettings","updateUserSettings","getLanguages","fn","memoized","memoizedInput","memoizedOutput","input","sanitizer","bypassSecurityTrustUrl","DomSanitizer","phoneNumberPattern","isPhoneNumber","normalizeEmail","validateEmailCallback","reEmail","_http","_configService","_platformService","_webVersionUrl","_latestAppVersionEndpoint","_info$","info$","canUpdateVersion","appVersion","latestAppVersion","updateVersion","open","versionInfo","readVersionConfig","readLatestAppVersion","latestVersion","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","data_r6","title","ɵɵlistener","ContactFormComponent_div_74_mo_flex_box_4_Template_dx_button_onClick_3_listener","restoredCtx","ɵɵrestoreView","_r9","data_r7","$implicit","ctx_r8","ɵɵnextContext","ɵɵresetView","onPrefill","ɵɵproperty","ɵɵtemplate","ContactFormComponent_div_74_div_3_Template","ContactFormComponent_div_74_mo_flex_box_4_Template","accordionData_r3","ContactFormComponent","contactFormService","validationGroup","payload","subject","mail","customerId","accordionData$","getFAQ","sendMessage","preventDefault","sendContactForm","err","instance","reset","contactSubject","contactMessage","ContactFormService","ContactFormComponent_Query","ContactFormComponent_Template_form_submit_0_listener","$event","ContactFormComponent_Template_dx_text_box_valueChange_16_listener","ContactFormComponent_Template_dx_text_box_valueChange_27_listener","ContactFormComponent_Template_dx_text_box_valueChange_38_listener","ContactFormComponent_Template_dx_text_box_valueChange_51_listener","ContactFormComponent_Template_dx_text_area_valueChange_60_listener","ContactFormComponent_div_74_Template","ɵɵpureFunction0","_c1","_c2","ɵɵtextInterpolate1","_c3","ContactComponent","ContactRoutingModule","forChild","location","navigateBack","navigationId","getState","navigateByUrl","Location","decls","vars","consts","template","ContactComponent_Template","ContactComponent_Template_dx_button_onClick_2_listener","CommonModule","DxAccordionModule","DxNumberBoxModule","DxPopupModule","DxScrollViewModule","DxSelectBoxModule","DxTextAreaModule","DxTextBoxModule","DxValidationGroupModule","DxValidatorModule","PopupModule","MaintenanceService","readText","appIsInMaintenanceMode","maintenanceService","checkAppIsInMaintenanceMode","toastText","MaintenancePageComponent_Template","MaintenancePageComponent_Template_dx_button_onClick_6_listener","ɵɵpropertyInterpolate","buttonText","NotFoundPageComponent_Template","menu","destroyed$","routerState","snapshot","MenuService","LoggedInPageComponent_Template","LoggedInPageComponent_Template_mo_top_navigation_searchButtonClicked_0_listener","_r4","_r1","ɵɵreference","LoggedInPageComponent_Template_mo_top_navigation_shoppingCartButtonClicked_0_listener","_r3","LoggedInPageComponent_Template_mo_top_navigation_userButtonClicked_0_listener","_r0","LoggedInPageComponent_Template_dx_button_onClick_9_listener","LoggedInPageComponent_Template_mo_my_account_menu_itemSelected_10_listener","LoggedInPageComponent_Template_mo_side_bar_shown_11_listener","_r2","focus","LoggedInPageComponent_Template_mo_search_closeButtonClicked_13_listener","LoggedInPageComponent_Template_mo_shopping_cart_closeButtonClicked_17_listener","LoggedInPageComponent_Template_mo_side_bar_hidden_18_listener","RegistrationService","registrate","finishRegistration","RestorePasswordService","sendEMailToRestorePassword","eMail","ɵɵclassProp","currentIndex","auth","keyboardService","breakpointService","cd","sideBar","slider","intro","logoVisible","subscribeToTokenChanges","subscribeToDisplayChanges","detectChanges","form","onAuthenticated","errorText","matches","paginationType","enableControlArrows","enablePagination","queryParamMap","startsWith","ChangeDetectorRef","ActivatedRoute","LoginPageComponent_Query","LoginPageComponent_img_0_Template","LoginPageComponent_Template_mo_login_slide_submitted_8_listener","LoginPageComponent_Template_mo_registration_slide_showRegistrationFormButtonClicked_11_listener","LoginPageComponent_Template_mo_registration_form_closeButtonClicked_14_listener","LoginPageComponent_Template_mo_registration_form_goToLoginLinkClicked_14_listener","previous","LoginSlideComponent","RegistrationSlideComponent","RestorePasswordSlideComponent","TextInputModule","SliderModule","LoaderModule","ValidationErrorModule","RegistrationFormComponent","IntroModule","SelectModule","DxTagBoxModule","GlassCardModule","IntroComponent","reject","driftNumbersApart","switchColors","numbersLeft","querySelectorAll","numbersRight","setAttribute","background","getElementById","loader","backgroundColor","IntroComponent_Query","ɵɵnamespaceSVG","EventEmitter","publicImgUrlService","submitted","isNative","passwordIsVisible","formData","capacitorCheck","getMobileOperatingSystem","backgroundImgUrl","userAgent","vendor","MSStream","submit","outputs","LoginSlideComponent_Template","LoginSlideComponent_Template_form_submit_4_listener","LoginSlideComponent_Template_dx_text_box_valueChange_8_listener","LoginSlideComponent_Template_dx_text_box_valueChange_14_listener","LoginSlideComponent_Template_i_click_19_listener","LoginSlideComponent_mo_flex_box_34_Template","ɵɵclassMap","ɵɵpureFunction1","_c0","AccountRequestSalutation","registrationService","closeButtonClicked","goToLoginLinkClicked","eMailTextBox","phonePattern","lastname","firstname","salutation","phone","companyName","companyStreet","companyHouseNumber","companyZipcode","companyCity","companyCountry","comment","department","salutationItems","showSuccessMessage","setupSalutationItems","checkPhoneNumber","restData","id","female","male","diverse","notDefined","RegistrationFormComponent_Query","RegistrationFormComponent_Template_dx_button_onClick_2_listener","RegistrationFormComponent_Template_a_click_20_listener","RegistrationFormComponent_Template_form_submit_23_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_40_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_53_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_63_listener","RegistrationFormComponent_Template_dx_select_box_valueChange_75_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_86_listener","RegistrationFormComponent_Template_dx_text_area_valueChange_100_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_117_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_127_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_137_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_147_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_157_listener","RegistrationFormComponent_Template_dx_text_box_valueChange_167_listener","RegistrationFormComponent_Template_dx_text_area_valueChange_180_listener","_c4","_c5","_c6","showRegistrationFormButtonClicked","RegistrationSlideComponent_Template","RegistrationSlideComponent_Template_dx_button_onClick_7_listener","fb","restorePasswordService","showMessage","FormBuilder","RestorePasswordSlideComponent_Template","RestorePasswordSlideComponent_Template_form_submit_8_listener","RestorePasswordSlideComponent_Template_dx_text_box_valueChange_12_listener","MyAccountMenuComponent_li_9_Template_li_click_0_listener","_r5","item_r1","ctx_r4","handleItemClick","MyAccountMenuComponent_li_9_p_7_Template","ɵɵstyleMap","i_r2","active","ctx_r0","description","MyAccountMenuComponent","storeService","itemSelected","items","stores","currentStore","getMenuItems","subscribeToEvents","clearActiveItems","updateCurrentActiveStore","defaultMerchantId","forEach","itemTemp","storeTemp","inputs","MyAccountMenuComponent_Template","MyAccountMenuComponent_Template_mo_store_select_box_valueChanged_7_listener","MyAccountMenuComponent_li_9_Template","MyAccountMenuComponent_Template_li_click_10_listener","DropDownButtonModule","StoreSelectionBoxModule","FloatingChatButtonComponent","FloatingButtonModule","ChatComponent","ChatMessageComponent","isUserMessage","messageText","ChatMessageComponent_HostBindings","ChatMessageComponent_mo_note_2_Template","ChatComponent_Template","ChatComponent_Template_mo_button_buttonClick_1_listener","FloatingChatButtonComponent_mo_chat_window_1_Template_mo_chat_window_closeButtonClicked_0_listener","ctx_r1","FloatingChatButtonComponent_Template","FloatingChatButtonComponent_Template_mo_floating_button_click_0_listener","FloatingChatButtonComponent_mo_chat_window_1_Template","_visible","_visibilityChange","visibilityChange","MenuImgDirective","moMenuImg","menuMediaEndpoint","MenuImgDirective_HostBindings","MenuComponent_li_4_Template_li_click_0_listener","item_r3","handleMenuItemClick","MenuComponent_li_4_Template_li_mouseenter_0_listener","ctx_r6","hovered","currentHovering","MenuComponent_li_4_Template_li_mouseleave_0_listener","ctx_r7","MenuComponent_div_18_li_6_Template_li_click_0_listener","_r11","item_r9","ctx_r10","MenuComponent_div_18_Template_li_click_2_listener","_r13","ctx_r12","clearSelection","MenuComponent_div_18_li_6_Template","selectedItem","item_r14","ctx_r2","image","MenuComponent","menuService","menuItems","topLevel","closeMenu","MenuComponent_HostBindings","MenuComponent_li_4_Template","MenuComponent_Template_li_click_6_listener","MenuComponent_Template_li_click_10_listener","MenuComponent_Template_li_click_14_listener","MenuComponent_div_18_Template","MenuComponent_img_21_Template","Network","OfflineNotificationComponent","offline","handler","network","fallbackButtonText","fallbackMassage","connected","reload","OfflineNotificationComponent_Template","OfflineNotificationComponent_Template_mo_popup_confirmed_0_listener","SearchComponent","search","SearchComponent_Query","SearchComponent_Template_mo_button_buttonClick_5_listener","SearchComponent_div_6_Template","ShoppingCartComponent","cartItems","ShoppingCartComponent_Template","ShoppingCartComponent_Template_mo_button_buttonClick_2_listener","ShoppingCartComponent_h3_3_Template","data_r2","name2","StoreSelectBoxComponent_div_1_mo_flex_box_5_span_1_Template","ɵɵtextInterpolate4","street","zipCode","city","countryIso2","StoreSelectBoxComponent_div_1_mo_note_1_Template","StoreSelectBoxComponent_div_1_mo_flex_box_5_Template","placeholder","data_r9","StoreSelectBoxComponent_div_2_mo_note_2_Template","StoreSelectBoxComponent_div_2_span_5_Template","StoreSelectBoxComponent","showClearButton","valueChanged","_onValueChanged","StoreSelectBoxComponent_Template","StoreSelectBoxComponent_Template_dx_select_box_onValueChanged_0_listener","StoreSelectBoxComponent_div_1_Template","StoreSelectBoxComponent_div_2_Template","StoreSelectionDialogComponent","_storeService","_toastService","_settingsService","_translatorService","selectedStore","checkSettingsAndShowDialog","store","StoreSelectionDialogComponent_Template","StoreSelectionDialogComponent_Template_mo_popup_confirmed_0_listener","StoreSelectionDialogComponent_Template_mo_store_select_box_valueChanged_11_listener","TopNavigationService","_invert","_backButtonVisible$","invert","backButtonVisible","backButtonVisible$","showBackButton","TopNavigationComponent_mo_flex_box_2_Template_dx_button_onClick_1_listener","toggleMenu","ɵɵpropertyInterpolate1","menuIsVisible","TopNavigationComponent_dx_button_3_Template_dx_button_onClick_0_listener","_r7","TopNavigationComponent_mo_flex_box_4_Template_dx_button_onClick_1_listener","userButtonClicked","TopNavigationComponent_mo_flex_box_5_dx_button_1_Template_dx_button_onClick_0_listener","scrollTop","TopNavigationComponent_mo_flex_box_5_dx_button_2_Template_dx_button_onClick_0_listener","_r15","ctx_r14","TopNavigationComponent_mo_flex_box_5_dx_button_1_Template","TopNavigationComponent_mo_flex_box_5_dx_button_2_Template","ctx_r3","xsScreen","TopNavigationComponent","topNavigationService","searchButtonClicked","shoppingCartButtonClicked","contactButtonClicked","_shrunkenTopNavigationClass","_expandedTopNavigationClass","_scrolledTop","lastScrollTop","settings","icon","onScroll","subscribeToBreakpointChange","scrollTo","top","behavior","onMenuItemClick","itemData","scrollTopTemp","TopNavigationComponent_HostBindings","ɵɵresolveWindow","TopNavigationComponent_mo_flex_box_2_Template","TopNavigationComponent_dx_button_3_Template","TopNavigationComponent_mo_flex_box_4_Template","TopNavigationComponent_mo_flex_box_5_Template","DxMenuModule","VariousContentComponent","widthBackground","ngAfterContentChecked","onResize","element","getBoundingClientRect","x","width","VariousContentComponent_HostBindings","ɵɵprojection","VersionNotificationComponent","_versionService","openAppStore","VersionNotificationComponent_Template","VersionNotificationComponent_Template_mo_popup_confirmed_0_listener","BackdropComponent","BackdropComponent_HostBindings","UiComponent","ButtonComponent","type","noPadding","buttonClick","isIconButton","t","ButtonComponent_HostBindings","ButtonComponent_Template_button_click_0_listener","ButtonComponent_div_1_Template","ContentBoxComponent","ngContentSelectors","ContentBoxComponent_Template","noop","ValidationErrorComponent","ɵɵclassMapInterpolate1","DropDownButtonComponent","ngControl","onChange","onTouched","keyExpr","displayExpr","multiSelect","itemTemplate","buttonClicked","itemMenuVisible","selectButton","validationError","valueAccessor","ngAfterContentInit","invalid","dirty","touched","writeValue","obj","registerOnChange","registerOnTouched","setDisabledState","isDisabled","handleSelectButtonClick","select","findIndex","splice","onWindowClick","target","nativeElement","NgControl","contentQueries","DropDownButtonComponent_ContentQueries","dirIndex","DropDownButtonComponent_Template_button_click_0_listener","DropDownButtonComponent_Template_button_blur_0_listener","DropDownButtonComponent_i_2_Template","DropDownButtonComponent_Template_mo_select_menu_itemSelected_5_listener","ScrollingModule","SelectMenuModule","FlexBoxComponent","alignItems","justifyContent","flexWrap","flexDirection","height","gap","FlexBoxComponent_HostBindings","FloatingButtonComponent","FloatingButtonComponent_Template","GlassCardComponent","maxWidth","GlassCardComponent_HostBindings","GridColComponent","cols","colDefinition","_cols","rowStart","rowEnd","GridColComponent_HostBindings","GridComponent","gridRowGap","gridColumnGap","gridTemplateColumns","GridComponent_HostBindings","TextInputComponent_i_4_Template_i_click_0_listener","clear","enableClearButton","TextInputComponent","display","label","readOnly","inputElement","labelUp","hasFocus","TextInputComponent_ContentQueries","TextInputComponent_Template_input_input_0_listener","TextInputComponent_Template_input_blur_0_listener","TextInputComponent_Template_input_focusin_0_listener","TextInputComponent_Template_input_focusout_0_listener","TextInputComponent_i_4_Template","TextInputComponent_ng_content_5_Template","errors","required","UiComponentColorType","black","white","red","gray","lightGray","UiComponentStyleType","filled","outline","colorType","styleType","blackColor","whiteColor","redColor","grayColor","lightGrayColor","styleTypeFilled","styleTypeOutline","styleTypeText","UiComponent_HostBindings","LoaderComponent","_width","LoaderComponent_HostBindings","NoteComponent","NoteComponent_Template","PopupInternalService","_visible$","_confirm$","_cancel$","visible$","confirm$","cancel$","confirm","cancel","PopupBodyComponent","PopupBodyComponent_Template","PopupFooterComponent_dx_button_1_Template_dx_button_onClick_0_listener","flex","cancelButtonTextKey","disableCancelButton","PopupFooterComponent_dx_button_2_Template_dx_button_onClick_0_listener","confirmButtonTextKey","disableConfirmButton","PopupFooterComponent","popupInternalService","enableConfirmButton","enableCancelButton","PopupFooterComponent_Template","PopupFooterComponent_dx_button_1_Template","PopupFooterComponent_dx_button_2_Template","PopupHeaderComponent_dx_button_4_Template_dx_button_onClick_0_listener","disableCloseButton","PopupHeaderComponent","titleTextKey","enableCloseButton","PopupHeaderComponent_Template","PopupHeaderComponent_dx_button_4_Template","PopupComponent","scrollbarService","minWidth","confirmed","cancelled","_registeredInHistory","close","PopupComponent_HostBindings","PopupComponent_Template","ɵɵpureFunction3","ɵɵelementContainerStart","ɵɵelementContainerEnd","ɵɵelementContainer","SelectMenuComponent_div_0_div_2_ng_container_2_ng_container_1_Template","ctx_r5","SelectMenuComponent_div_0_div_2_Template_div_click_0_listener","_r10","ctx_r9","handleItemSelection","SelectMenuComponent_div_0_div_2_ng_container_1_Template","SelectMenuComponent_div_0_div_2_ng_container_2_Template","SelectMenuComponent_div_0_div_2_Template","item_r12","ctx_r13","SelectMenuComponent_div_1_div_4_ng_container_2_ng_container_1_Template","SelectMenuComponent_div_1_div_4_Template_div_click_0_listener","_r19","ctx_r18","SelectMenuComponent_div_1_div_4_ng_container_1_Template","SelectMenuComponent_div_1_div_4_ng_container_2_Template","ctx_r11","SelectMenuComponent_div_1_Template_i_click_2_listener","_r21","ctx_r20","SelectMenuComponent_div_1_div_4_Template","SelectMenuComponent","_hasDisabledScrollbars","disableScrollbars","enableScrollbars","stopPropagation","SelectMenuComponent_Template","SelectMenuComponent_div_0_Template","SelectMenuComponent_div_1_Template","SelectComponent","displayValue","SelectComponent_ContentQueries","SelectComponent_Template_input_click_0_listener","SelectComponent_Template_input_blur_0_listener","SelectComponent_Template_input_focusin_0_listener","SelectComponent_Template_input_focusout_0_listener","SelectComponent_Template_i_click_4_listener","SelectComponent_Template_mo_select_menu_itemSelected_6_listener","SideBarComponent","eRef","hidden","shown","position","fullWidth","darkBackground","safeAreaEnabled","positionLeft","positionRight","positionTop","positionBottom","onClick","ElementRef","SideBarComponent_HostBindings","SlideComponent","elementRef","enableAnimation","SlideComponent_HostBindings","startWith","SliderComponent_ng_container_0_div_2_Template_div_click_0_listener","_r8","i_r6","slideTo","SliderComponent_ng_container_0_div_5_Template_div_click_0_listener","_r12","i_r10","ɵɵattribute","slide_r9","SliderComponent_ng_container_0_div_2_Template","SliderComponent_ng_container_0_div_5_Template","slides","animateTabs","SliderComponent_ng_container_1_div_1_Template_div_click_0_listener","_r16","ctx_r15","nextSlideTitle","SliderComponent_ng_container_1_div_2_Template_div_click_0_listener","_r18","ctx_r17","previousSlideTitle","SliderComponent_ng_container_1_div_1_Template","SliderComponent_ng_container_1_div_2_Template","SliderComponent","renderer","swipeThreshold","bubblePaginationVisible","tabPaginationVisible","tabs","xDown","yDown","lastMove","y","changesSubscription","initSlides","checkCurrentIndex","moveSlides","handleMouseStart","evt","clientX","clientY","disableAnimation","handleMouseMove","handleMove","handleMouseUp","handleMoveEnd","handleTouchStart","firstTouch","touches","handleTouchMove","handleTouchEnd","toArray","left","slide","moveSlidesToMouseOrTouchPosition","xDiff","moveTabsToMouseOrTouchPosition","tabElement","querySelector","offsetLeft","offsetWidth","moveTabs","xUp","yUp","yDiff","Math","abs","Renderer2","SliderComponent_ContentQueries","SliderComponent_mousemove_HostBindingHandler","SliderComponent_mouseup_HostBindingHandler","SliderComponent_touchstart_HostBindingHandler","SliderComponent_touchmove_HostBindingHandler","SliderComponent_touchend_HostBindingHandler","SliderComponent_ng_container_0_Template","SliderComponent_ng_container_1_Template","_showToast","timer","ToastComponent","clearSubscription","numbers","ToastComponent_HostBindings","ToastComponent_p_1_Template","ToolbarComponent","sticky","safeArea","ToolbarComponent_HostBindings","ɵɵpipeBind2","maxLength","ValidationErrorComponent_ng_container_0_span_1_Template","ValidationErrorComponent_ng_container_0_span_2_Template","ValidationErrorComponent_ng_container_0_span_3_Template","ValidationErrorComponent_ng_container_0_span_4_Template","ValidationErrorComponent_ng_container_0_span_5_Template","ValidationErrorComponent_ng_container_0_span_6_Template","ValidationErrorComponent_ng_container_0_span_7_Template","requiredTrue","maxlength","unequalPassword","unsecurePassword","notANumber","requiredLength","ValidationErrorComponent_Template","ValidationErrorComponent_ng_container_0_Template","environment","production","enableProdMode","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","catch","console"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}