{ "version": 3, "sources": ["libs/business-nav/src/lib/modals/location-switcher-modal/tab/tab.service.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/location.service.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/location-switcher-modal.component.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/location-switcher-modal.component.html", "libs/conversation/button/src/button-send-message/button-send-message.component.ts", "libs/conversation/button/src/button-send-message/button-send-message.component.html", "libs/conversation/button/src/button.module.ts", "libs/conversation/button/public_api.ts", "libs/conversation/button/index.ts", "libs/galaxy/list/index.ts", "libs/galaxy/navigation-toolbar/src/navigation-toolbar.component.ts", "libs/galaxy/navigation-toolbar/src/navigation-toolbar.component.html", "libs/galaxy/navigation-toolbar/src/navigation-toolbar.module.ts", "libs/galaxy/navigation-toolbar/public_api.ts", "libs/galaxy/navigation-toolbar/index.ts", "libs/business-nav/src/lib/assets/i18n/en_devel.json", "libs/business-nav/src/lib/active-link.service.ts", "libs/business-nav/src/lib/modals/user-required/user-required.modal.component.ts", "libs/business-nav/src/lib/modals/user-required/user-required.modal.component.html", "libs/business-nav/src/lib/core-components/chip/chip.component.ts", "libs/business-nav/src/lib/core-components/chip/chip.component.html", "libs/business-nav/src/lib/core-components/icon/icon.component.ts", "libs/business-nav/src/lib/core-components/icon/icon.component.html", "libs/business-nav/src/lib/core-components/nav-link/nav-link.component.ts", "libs/business-nav/src/lib/core-components/nav-link/nav-link.component.html", "libs/business-nav/src/lib/core-components/tooltip/tooltip.ts", "libs/business-nav/src/lib/core-components/tooltip/tooltip.html", "libs/business-nav/src/lib/core-components/tooltip/tooltip-module.ts", "libs/business-nav/src/lib/custom-url-serializer.ts", "libs/business-nav/src/lib/core-components/sidebar/sidebar.service.ts", "libs/business-nav/src/lib/location-selector/location-selector.component.ts", "libs/business-nav/src/lib/location-selector/location-selector.component.html", "libs/business-nav/src/lib/modals/location-switcher-modal/location-list/location-list-item/location-list-item.component.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/location-list/location-list-item/location-list-item.component.html", "libs/business-nav/src/lib/modals/location-switcher-modal/location-list/location-list.component.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/location-list/location-list.component.html", "libs/business-nav/src/lib/modals/location-switcher-modal/tab/tab.component.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/tab/tab.component.html", "libs/business-nav/src/lib/modals/location-switcher-modal/tab-header/tab-header.component.ts", "libs/business-nav/src/lib/modals/location-switcher-modal/tab-header/tab-header.component.html", "libs/business-nav/src/lib/modals/sales-info/meeting-booking-url/meeting-booking-url.component.ts", "libs/business-nav/src/lib/modals/sales-info/meeting-booking-url/meeting-booking-url.component.html", "libs/business-nav/src/lib/modals/sales-info/sales-info.modal.component.ts", "libs/business-nav/src/lib/modals/sales-info/sales-info.modal.component.html", "libs/business-nav/src/lib/pins.service.ts", "libs/business-nav/src/lib/navigation/navigation.component.ts", "libs/business-nav/src/lib/navigation/navigation.component.html", "libs/business-nav/src/lib/business-nav.module.ts", "libs/business-nav/src/lib/core-components/nav-tabs-container/index.ts", "libs/business-nav/src/lib/core-components/nav-tabs/nav-tabs.component.ts", "libs/business-nav/src/lib/core-components/nav-tabs/nav-tabs.component.html", "libs/business-nav/src/lib/core-components/page-sublinks/page-sublinks.ts", "libs/business-nav/src/lib/location-switcher/location-switcher.component.ts", "libs/business-nav/src/lib/location-switcher/location-switcher.component.html", "libs/business-nav/src/lib/core-components/nav-tabs/index.ts", "libs/business-nav/src/lib/core-components/page-sublinks/index.ts", "libs/business-nav/src/lib/index.ts", "libs/business-nav/src/public_api.ts", "libs/business-nav/src/index.ts"], "sourcesContent": ["import { ElementRef, Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { delay, filter, map, shareReplay } from 'rxjs/operators';\nimport { LocationMode } from '../location-mode';\n\nexport interface Tab {\n id: string;\n elem: ElementRef;\n mode: LocationMode;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class BusinessNavLocationTabService {\n private selectedTab$$: BehaviorSubject = new BehaviorSubject(null);\n private selectedTab$: Observable = this.selectedTab$$.asObservable().pipe(delay(0)); // delay 0 for the ink bar to be the right width\n public selectedTabElement$: Observable;\n public selectedTabId$: Observable;\n public selectedTabMode$: Observable;\n\n private tabs: Tab[] = [];\n\n constructor() {\n this.selectedTabId$ = this.selectedTab$.pipe(\n map((tab: Tab) => (tab ? tab.id : '')),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n this.selectedTabElement$ = this.selectedTab$.pipe(\n filter((tab: Tab) => tab !== null),\n map((tab: Tab) => tab.elem),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n this.selectedTabMode$ = this.selectedTab$.pipe(\n map((tab: Tab) => (tab ? tab.mode : 'both')),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n }\n\n private getTabById(id: string): Tab {\n return this.tabs.find((tab: Tab) => tab.id === id);\n }\n\n public selectTab(tabId: string): void {\n const tab = this.getTabById(tabId);\n if (!tab) {\n console.log('Could not select tab, was it registered?');\n return;\n }\n this.selectedTab$$.next(tab);\n }\n\n public registerTabIndex(tab: Tab): void {\n this.tabs.push(tab);\n }\n\n public clear(): void {\n this.tabs = [];\n this.selectedTab$$.next(null);\n }\n}\n", "import { Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { AtlasApiService, ListLocationsRequestInterface } from '@vendasta/atlas';\nimport { Scrollable } from '@vendasta/rx-utils';\nimport { BehaviorSubject, combineLatest } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, filter, map, shareReplay, startWith } from 'rxjs/operators';\nimport { BusinessNavConfigService } from '../../config.service';\nimport { BusinessNavLocationTabService } from './tab/tab.service';\n\nexport const LOCATIONS_PAGE_SIZE = 25;\n\n@Injectable({ providedIn: 'root' })\nexport class BusinessNavLocationService {\n private query$$: BehaviorSubject = new BehaviorSubject(null);\n\n public readonly scrollableLocations = new Scrollable(\n combineLatest([\n this.query$$.pipe(distinctUntilChanged(), debounceTime(500)),\n this.configService.partnerId$,\n this.tabService.selectedTabMode$,\n ]).pipe(map(([query, partnerId, mode]) => ({ query, partnerId, mode }))),\n ({ query, partnerId, mode }, cursor) => {\n const req: ListLocationsRequestInterface = {\n search: query,\n cursor: cursor as string,\n pageSize: LOCATIONS_PAGE_SIZE,\n partnerId: partnerId,\n includeAccountGroups: true,\n includeBrands: true,\n };\n switch (mode) {\n case 'single': {\n req.includeBrands = false;\n break;\n }\n case 'brands': {\n req.includeAccountGroups = false;\n break;\n }\n }\n return this.apiService.listLocations(req).pipe(\n map((resp) => {\n return {\n cursor: resp.cursor ?? null,\n hasMore: resp.hasMore ?? false,\n items: resp.locations,\n };\n }),\n );\n },\n );\n\n readonly activePath$ = this.router.events.pipe(\n filter((e) => e instanceof NavigationEnd),\n startWith(this.router.url),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n constructor(\n private tabService: BusinessNavLocationTabService,\n private router: Router,\n private apiService: AtlasApiService,\n private configService: BusinessNavConfigService,\n ) {}\n\n public loadMore(): void {\n this.scrollableLocations.loadMore();\n }\n\n public setQuery(input: string): void {\n this.query$$.next(input);\n }\n}\n", "import { AfterViewInit, Component, ElementRef, inject, OnInit, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormControl } from '@angular/forms';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { Capacitor } from '@capacitor/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { UserViewType } from '@vendasta/atlas';\nimport { combineLatest, Observable } from 'rxjs';\nimport { map, startWith, switchMap } from 'rxjs/operators';\nimport { BusinessNavDataService } from '../../data.service';\nimport { BusinessNavLocationService } from './location.service';\nimport { BusinessNavLocationTabService } from './tab/tab.service';\n\n@Component({\n selector: 'bc-location-switcher-modal',\n templateUrl: './location-switcher-modal.component.html',\n styleUrls: ['./location-switcher-modal.component.scss'],\n standalone: false,\n})\nexport class LocationSwitcherModalComponent implements OnInit, AfterViewInit {\n dialogRef = inject(MatDialogRef);\n\n @ViewChild('search') private readonly searchElement: ElementRef;\n\n tabElemSelected$: Observable;\n\n allTabText$: Observable = this.t.stream('NAVIGATION.TABS.ALL', 'All');\n accountGroupTabText$: Observable = this.t.stream('NAVIGATION.TABS.LOCATIONS', 'Locations');\n brandTabText$: Observable = this.t.stream('NAVIGATION.TABS.GROUPS', 'Groups');\n userViewType$: Observable;\n infoText$: Observable;\n currentTabText$: Observable;\n viewType = UserViewType;\n\n readonly isNativeApp = Capacitor.isNativePlatform();\n\n public locations$ = this.locationsService.scrollableLocations.items$;\n protected readonly isEmptyResult$: Observable = this.locationsService.scrollableLocations.state$.pipe(\n map((value) => value.empty),\n );\n protected readonly hasQueryText$: Observable = this.locationsService.scrollableLocations.state$.pipe(\n map((value) => !value.criteria.query),\n );\n public loading$ = this.locationsService.scrollableLocations.loading$;\n protected readonly searchControl = new FormControl('');\n\n constructor(\n private tabService: BusinessNavLocationTabService,\n private t: TranslateService,\n private locationsService: BusinessNavLocationService,\n private dataService: BusinessNavDataService,\n ) {\n this.tabService.clear();\n this.searchControl.valueChanges.pipe(takeUntilDestroyed()).subscribe((text) => this.textChanged(text));\n }\n\n ngOnInit(): void {\n this.userViewType$ = this.dataService.userViewType$.pipe(startWith(UserViewType.USER_VIEW_TYPE_SMB));\n\n this.tabElemSelected$ = this.tabService.selectedTabElement$;\n\n this.infoText$ = combineLatest([this.userViewType$, this.dataService.defaultLocation$]).pipe(\n map(([userViewType, defaultLocation]) => {\n if (!(defaultLocation?.accountGroupId || defaultLocation?.groupId)) {\n return 'SWITCH_LOCATION_MODAL.SELECT_DEFAULT';\n }\n if (userViewType === this.viewType.USER_VIEW_TYPE_ADMIN) {\n return 'SWITCH_LOCATION_MODAL.ADMIN_VIEW';\n }\n return;\n }),\n );\n\n this.currentTabText$ = this.tabService.selectedTabMode$.pipe(\n switchMap((tabMode) => {\n switch (tabMode) {\n case 'both':\n return this.t.stream('SWITCH_LOCATION_MODAL.EMPTY_STATES.ALL_TAB_NAME');\n case 'single':\n return this.accountGroupTabText$;\n case 'brands':\n return this.brandTabText$;\n }\n }),\n );\n }\n\n ngAfterViewInit(): void {\n this.searchElement.nativeElement.focus();\n }\n\n listScroll(): void {\n this.locationsService.loadMore();\n }\n\n textChanged(text: string): void {\n this.locationsService.setQuery(text);\n }\n\n close(): void {\n this.dialogRef.close();\n }\n}\n", "\n {{ 'SWITCH_LOCATION_MODAL.SELECT_LOCATION' | translate }}\n \n @if (infoText$ | async; as infoText) {\n {{ infoText | translate }}\n }\n \n {{ 'SWITCH_LOCATION_MODAL.SEARCH' | translate }}\n \n \n @if (!isNativeApp) {\n \n \n \n \n \n }\n @if ((locations$ | async)?.length > 0 || (loading$ | async)) {\n \n @if ((locations$ | async)?.length > 0) {\n \n }\n @if (loading$ | async) {\n \n }\n }\n\n @if (isEmptyResult$ | async) {\n
\n @if (hasQueryText$ | async) {\n \n \n {{ 'SWITCH_LOCATION_MODAL.NO_SEARCH_RESULT.TITLE' | translate }}\n \n
\n {{ 'SWITCH_LOCATION_MODAL.NO_SEARCH_RESULT.MESSAGE' | translate }}\n
\n
\n } @else {\n \n \n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.TITLE' | translate }}\n {{ currentTabText$ | async | translate }}.\n \n
\n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.MESSAGE' | translate }}\n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.CONTACT' | translate }}\n
\n
\n }\n
\n }\n
\n
\n", "import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, inject } from '@angular/core';\nimport { ConversationChannel, Participant } from '@vendasta/conversation';\nimport { BehaviorSubject } from 'rxjs';\nimport { InboxNavigationService } from '../../../core/src/lib/inbox-navigation.service';\nimport { SubjectParticipant } from '../../../core/src/lib/interface/conversation.interface';\n\ninterface SendMessageButtonConfig {\n currentParticipant?: Participant;\n subjectParticipants: SubjectParticipant[];\n channel: ConversationChannel;\n prefilledMessage?: string;\n}\n@Component({\n selector: 'inbox-button-send-message',\n templateUrl: './button-send-message.component.html',\n styleUrls: ['./button-send-message.component.scss'],\n standalone: false,\n})\nexport class ButtonSendMessageComponent {\n private readonly inboxNav = inject(InboxNavigationService);\n\n @Input() config: SendMessageButtonConfig;\n @Input() type: 'primary' | 'secondary' | 'alternative' | 'link' | 'icon' | 'menu' | 'text' = 'primary';\n @Input() primaryIcon?: boolean;\n @Output() closeModal = new EventEmitter();\n @ViewChild('content', { read: ElementRef, static: false }) content: ElementRef;\n\n private creatingConversation$$ = new BehaviorSubject(false);\n creatingConversation$ = this.creatingConversation$$.asObservable();\n\n sendMessage(): void {\n this.inboxNav.gotoConversation(\n this.config?.subjectParticipants,\n this.config?.currentParticipant,\n this.config?.channel,\n this.config?.prefilledMessage,\n );\n this.closeModal.emit();\n }\n}\n", "\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n forum\n\n\n\n
\n forum\n \n \n \n \n \n {{ 'INBOX.CHAT.SEND_MESSAGE' | translate }}\n \n \n
\n
\n", "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyButtonLoadingIndicatorModule } from '@vendasta/galaxy/button-loading-indicator';\nimport { TranslationModule } from '../../ui/src/translation-module';\nimport { ButtonSendMessageComponent } from './button-send-message/button-send-message.component';\n\n@NgModule({\n declarations: [ButtonSendMessageComponent],\n imports: [\n CommonModule,\n TranslateModule,\n MatIconModule,\n MatButtonModule,\n TranslationModule,\n MatTooltipModule,\n MatMenuModule,\n GalaxyButtonLoadingIndicatorModule,\n ],\n exports: [ButtonSendMessageComponent],\n})\nexport class InboxButtonModule {}\n", "export * from './src/button.module';\n", "// Export things like public API, and interfaces from here.\nexport * from './public_api';\n", "export * from './src';\n", "import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';\nimport { CommonModule } from '@angular/common';\nimport {\n Component,\n Directive,\n HostBinding,\n ViewEncapsulation,\n booleanAttribute,\n effect,\n inject,\n input,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { map } from 'rxjs';\n\n@Directive({\n standalone: true,\n host: { class: 'glxy-navigation-toolbar-left' },\n selector: '[glxyNavigationToolbarLeft], glxy-navigation-toolbar-left',\n})\nexport class TooolbarLeftDirective {}\n\n@Directive({\n standalone: true,\n host: { class: 'glxy-navigation-toolbar-right' },\n selector: '[glxyNavigationToolbarRight], glxy-navigation-toolbar-right',\n})\nexport class ToolbarRightDirective {}\n\n@Component({\n selector: 'glxy-navigation-toolbar',\n imports: [CommonModule, MatToolbarModule, MatButtonModule, MatIconModule],\n templateUrl: './navigation-toolbar.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrl: './navigation-toolbar.component.scss',\n})\nexport class NavigationToolbarComponent {\n @HostBinding('class') class = 'glxy-navigation-toolbar';\n @HostBinding('class.glxy-navigation-toolbar-is-mobile') mobileClass = false;\n\n private readonly isMobile = toSignal(\n inject(BreakpointObserver)\n .observe(Breakpoints.Handset)\n .pipe(map((result) => result.matches)),\n { initialValue: false },\n );\n\n menuToggleClicked = output();\n hideMenuToggle = input(false, { transform: booleanAttribute });\n\n constructor() {\n effect(() => {\n this.mobileClass = this.isMobile() || false;\n });\n }\n\n toggleMenu() {\n this.menuToggleClicked.emit();\n }\n}\n", "@if (hideMenuToggle() === false) {\n \n}\n\n
\n\n", "import { NgModule } from '@angular/core';\nimport {\n NavigationToolbarComponent,\n ToolbarRightDirective,\n TooolbarLeftDirective,\n} from './navigation-toolbar.component';\n\nexport { NavigationToolbarComponent } from './navigation-toolbar.component';\n\nexport const MODULE_IMPORTS_AND_EXPORTS = [NavigationToolbarComponent, ToolbarRightDirective, TooolbarLeftDirective];\n\n@NgModule({\n imports: MODULE_IMPORTS_AND_EXPORTS,\n exports: MODULE_IMPORTS_AND_EXPORTS,\n})\nexport class GalaxyNavigationToolbarModule {}\n", "export * from './src/navigation-toolbar.module';\n", "// Export things like public API, and interfaces from here.\nexport * from './public_api';\n", "{\n \"MENU_TOGGLE\": \"Menu\",\n \"NAVIGATION\": {\n \"TABS\": {\n \"GET_STARTED\": \"Get Started\",\n \"HOME\": \"Home\",\n \"FULFILLMENT\": \"Projects\",\n \"DASHBOARD\": \"Dashboard\",\n \"RECENT_ACTIVITY\": \"Recent Activity\",\n \"EXECUTIVE_REPORT\": \"Executive Report\",\n \"MULTI_LOCATION_REPORT\": \"Executive Report\",\n \"RECOMMENDATIONS\": \"Recommendations\",\n \"MY_PRODUCTS\": \"My Products\",\n \"STORE\": \"Store\",\n \"CUSTOMER_LIST\": \"Customers\",\n \"GUIDES\": \"Guides\",\n \"ALL\": \"All\",\n \"BRANDS\": \"Groups\",\n \"GROUPS\": \"Groups\",\n \"LOCATIONS\": \"Locations\",\n \"FILES\": \"Files\",\n \"SETTINGS\": \"Settings\",\n \"BUSINESS_PROFILE\": \"Business Profile\",\n \"INVITE_USERS\": \"Invite Users\",\n \"USER_PROFILE\": \"User Profile\",\n \"NOTIFICATION_SETTINGS\": \"Notification Settings\",\n \"BILLING_SETTINGS\": \"Billing Settings\",\n \"INVOICES\": \"Invoices\",\n \"MANAGE_RECIPIENTS\": \"Manage Recipients\",\n \"SOCIAL_CONNECTIONS\": \"Connections\",\n \"MY_LISTING\": \"My Listing\",\n \"MEETING_SCHEDULER\": \"My Meetings\",\n \"INBOX\": \"Inbox Messages\",\n \"ORDERS\": \"Orders\",\n \"EMAIL_HISTORY\": \"Email History\",\n \"EMAIL_CONFIGURATION\": \"Email configuration\",\n \"MANAGE_REVIEWS\": \"Manage Reviews\",\n \"REVIEWS\": \"Reviews\",\n \"CRM\": {\n \"CRM\": \"CRM\",\n \"COMPANY\": \"Companies\",\n \"CONTACT\": \"Contacts\",\n \"SALES_TASKS\": \"Tasks\",\n \"OPPORTUNITIES\": \"Opportunities\",\n \"ACTIVITY_FEED\": \"Activity feed\"\n },\n \"PAYMENTS\": {\n \"PAYMENTS\": \"Payments\",\n \"INVOICES\": \"Invoices\",\n \"PAYOUTS\": \"Payouts\"\n },\n \"LEADERBOARD\": \"Leaderboard\",\n \"DYNAMIC_LISTS\": \"Lists\",\n \"LEAD_SCORING\": \"Score\",\n \"LEAD_SCORING_DESCRIPTION\": \"Configure scoring rules based on behavioural and fit attributes\",\n \"CUSTOM_FORMS\": \"Forms\",\n \"INBOX_SETTINGS\": \"Inbox settings\",\n \"INBOX_SETTINGS_DESCRIPTION\": \"Connect and manage Inbox channels, set up AI responders, and manage message templates\",\n \"AI_KNOWLEDGE_SETTINGS\": \"AI knowledge base\",\n \"AI_KNOWLEDGE_SETTINGS_DESCRIPTION\": \"Manage a central library of knowledge to utilize across AI features\",\n \"AI_ASSISTANTS\": \"AI workforce\",\n \"AI\": \"AI\",\n \"AI_ASSISTANTS_SETTINGS_DESCRIPTION\": \"Create, configure, and assign AI bots to help your business\",\n \"WEBCHAT_CONFIGURATION\": \"Web Chat configuration\",\n \"CAMPAIGNS\": \"Campaigns\",\n \"ALL_CAMPAIGNS\": \"All campaigns\",\n \"EMAIL_TEMPLATES\": \"Email templates\",\n \"AUTOMATIONS\": \"Automations\",\n \"ADMINISTRATION\": \"Administration\",\n \"FIELD_MANAGEMENT_SETTINGS\": \"CRM fields\",\n \"FIELD_MANAGEMENT_SETTINGS_DESCRIPTION\": \"Capture and store information on CRM objects such as contacts and companies\"\n },\n \"PINNED_PRODUCTS\": \"Products\",\n \"MY_BUSINESS\": \"My Business\",\n \"MENU\": {\n \"EDIT_PROFILE\": \"Edit Profile\",\n \"INVITE_USERS\": \"Invite Users\",\n \"SIGN_OUT\": \"Sign Out\",\n \"SMB_INVITE\": \"Invite a Business\",\n \"STOP_IMPERSONATING\": \"Stop Impersonating\"\n }\n },\n \"NAV\": {\n \"PRO_CHIP\": \"Pro\"\n },\n \"COMMON\": {\n \"BETA\": \"Beta\",\n \"KEYBOARD\": {\n \"SHIFT\": \"Shift\",\n \"ESC\": \"Esc\"\n },\n \"ACTION_LABELS\": {\n \"CANCEL\": \"Cancel\",\n \"SEND\": \"Send\",\n \"CONTACT_US\": \"Contact Us\"\n },\n \"RESULT\": {\n \"SUCCESS\": \"Success\",\n \"FAILURE\": \"Something went wrong, please try again\",\n \"CANNOT_BE_IMPERSONATED\": \"You cannot send a message because you are an Admin\"\n },\n \"CONTACT_SALESPERSON\": \"Contact {{ salesPersonName }}\",\n \"POWERED_BY\": \"Powered by\",\n \"BOOK_A_MEETING\": \"Book a meeting\"\n },\n \"SWITCH_LOCATION_MODAL\": {\n \"ADMIN_VIEW\": \"You are an admin, so you may see accounts not available to all users.\",\n \"DEFAULT\": \"DEFAULT\",\n \"SELECT_LOCATION\": \"Select Location\",\n \"SELECT_DEFAULT\": \"Select the account you'd like to view. You can skip this step in the future by setting an account as your default.\",\n \"MAKE_DEFAULT\": \"Make Default\",\n \"NO_LOCATIONS\": \"No Locations For:\",\n \"TO_SELECT\": \"to Select\",\n \"TO_NAVIGATE\": \"to Navigate\",\n \"TO_CHANGE_TABS\": \"to Change Tabs\",\n \"TO_CLOSE\": \"to Close\",\n \"TO_OPEN\": \"to Open\",\n \"EMPTY_STATES\": {\n \"TITLE\": \"You don\u2019t have access to any\",\n \"MESSAGE\": \"To view insights, use products, and take your business to the next level, you\u2019ll first need access to a location or group.\",\n \"ALL_TAB_NAME\": \"Locations or Groups\",\n \"CONTACT\": \"Contact your administrator to grant you access.\"\n },\n \"SEARCH\": \"Search location name or address\",\n \"NO_SEARCH_RESULT\": {\n \"TITLE\": \"No results found\",\n \"MESSAGE\": \"Try adjusting your search terms to find what you\u2019re looking for.\"\n }\n },\n \"REQUEST_ASSISTANCE_MODAL\": {\n \"COMPOSE_MESSAGE\": \"Compose Message\"\n },\n \"USER_REQUIRED_MODAL\": {\n \"TITLE\": \"Account access required\",\n \"DESCRIPTION\": \"Only users belonging to this customer\u2019s account can access this product.\"\n },\n \"PERFORMANCE\": {\n \"MULTI_LOCATION\": {\n \"PAGE_TITLES\": {\n \"ADVERTISING\": \"Advertising\",\n \"DASHBOARD\": \"Dashboard\",\n \"DATA_EXPORT\": \"Data Exporter\",\n \"GOOGLE_MY_BUSINESS\": \"Google Business Profile\",\n \"GOOGLE_Q_AND_A\": \"Google Q&A\",\n \"INSIGHTS\": \"Insights\",\n \"LISTINGS\": \"Listings\",\n \"MANAGE_LISTINGS\": \"Manage Listings\",\n \"MANAGE_POSTS\": \"Manage Posts\",\n \"MANAGE_REVIEWS\": \"Manage Reviews\",\n \"MANAGE\": \"Manage\",\n \"OVERVIEW\": \"Overview\",\n \"REPUTATION\": \"Reputation\",\n \"REVIEWS\": \"Reviews\",\n \"SENTIMENT_ANALYSIS\": \"Sentiment Analysis\",\n \"SOCIAL\": \"Social\",\n \"CONTACTS\": \"Contacts\",\n \"TASKS\": \"Tasks\"\n }\n }\n },\n \"SM_NAV\": {\n \"SOCIAL\": \"Social\",\n \"OVERVIEW\": \"Overview\",\n \"MY_POSTS\": \"My Posts\",\n \"RECENT_POSTS\": \"Recent Posts\",\n \"SCHEDULED_POSTS\": \"Scheduled Posts\",\n \"CALENDAR\": \"Calendar\",\n \"DRAFTS\": \"Drafts\",\n \"TEMPLATES\": \"Templates\",\n \"CUSTOMER_POSTS\": \"Customer Posts\",\n \"LEADS\": \"Leads\",\n \"CONTENT\": \"Content\",\n \"ANALYTICS\": \"Analytics\",\n \"INSIGHTS\": \"Insights\",\n \"ANALYTICS_OVERVIEW\": \"Overview\",\n \"LINK_PERFORMANCE\": \"Link Performance\",\n \"FACEBOOK_INSIGHTS\": \"Facebook Insights\",\n \"POST_PERFORMANCE\": \"Post Performance\",\n \"SETTINGS\": \"Settings\",\n \"CONNECT_ACCOUNTS\": \"Connect Accounts\",\n \"LEAD_SEARCHES\": \"Lead Searches\",\n \"LEAD_RESPONSES\": \"Lead Responses\",\n \"INTERESTING_CONTENT\": \"Interesting Content\"\n },\n \"RM_NAV\": {\n \"REPUTATION\": \"Reputation\",\n \"OVERVIEW\": \"Overview\",\n \"REVIEWS\": \"Reviews\",\n \"REVIEWS_MANAGE\": \"Manage Reviews\",\n \"REVIEWS_WIDGET\": \"Review Display Widget\",\n \"LISTINGS\": \"Listings\",\n \"LISTINGS_PRIMARY\": \"Primary Listings\",\n \"LISTINGS_CITATIONS\": \"Citations\",\n \"STATISTICS\": \"Statistics\",\n \"COMPETITION\": \"Competition\",\n \"MENTIONS\": \"Mentions\",\n \"MENTIONS_MONITOR\": \"Monitor Mentions\",\n \"MENTIONS_TIMELINE\": \"Mentions Timeline\",\n \"SOCIAL\": \"Social\",\n \"SOCIAL_MONITORING\": \"Social Monitoring\",\n \"SOCIAL_EMPLOYEE_MONITORING\": \"Employee Monitoring\",\n \"SOCIAL_STATISTICS\": \"Social Statistics\",\n \"REPORTS\": \"Reports\",\n \"SETTINGS\": \"Settings\",\n \"SETTINGS_CONNECT_ACCOUNTS\": \"Connect Accounts\",\n \"SETTINGS_REVIEW_WIDGET\": \"Review Widget\",\n \"SETTINGS_LISTINGS\": \"Listings\",\n \"SETTINGS_COMPETITION\": \"Competition\",\n \"SETTINGS_MENTIONS\": \"Mentions\",\n \"SETTINGS_REPORTS\": \"Reports\",\n \"SETTINGS_RESPONSE_TEMPLATES\": \"Response Templates\"\n },\n \"CV_NAV\": {\n \"CUSTOMER_VOICE\": \"Customer Voice\",\n \"OVERVIEW\": \"Overview\",\n \"CUSTOMERS\": \"Customers\",\n \"Templates\": \"Templates\",\n \"WIDGET\": \"Widget\",\n \"SETTINGS\": \"Settings\",\n \"REVIEW_PAGE_URLS\": \"Review Page URLs\",\n \"CONFIRMATION_MESSAGES\": \"Confirmation Messages\",\n \"PREFERRED_REVIEW_SITES\": \"Preferred Review Sites\"\n }\n}\n", "import { Injectable, inject, signal } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { SideNavigationLink } from '@vendasta/atlas';\nimport { filter, firstValueFrom } from 'rxjs';\nimport { BusinessNavDataService } from './data.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ActiveLinkService {\n private readonly links$ = inject(BusinessNavDataService).navigationLinks$;\n private _activeItem = signal>({ navigationId: 'unset', path: '' });\n\n constructor(private readonly router: Router) {\n this.refreshActiveItem();\n\n this.router.events.pipe(filter((e) => e instanceof NavigationEnd)).subscribe((e: NavigationEnd) => {\n const activePath = this.getActivePath(e.url);\n if (this._activeItem().navigationId === 'unset' || !activePath.includes(this._activeItem().path)) {\n this.refreshActiveItem(activePath);\n }\n });\n }\n\n get activeItem() {\n return this._activeItem.asReadonly();\n }\n\n public readonly setActiveItem = (item: SideNavigationLink) => {\n this._activeItem.set(item);\n };\n\n public async refreshActiveItem(activePath?: string) {\n activePath = activePath || this.getActivePath(this.router.url);\n const links = await firstValueFrom(this.links$);\n const activeItem = links.find((l) => activePath.includes(l.path));\n if (activeItem) this.setActiveItem(activeItem);\n }\n\n private getActivePath(url: string) {\n return decodeURI(`/${this.router.parseUrl(url).root.children.primary.toString()}`);\n }\n}\n", "import { Component } from '@angular/core';\n\n@Component({\n selector: 'bc-user-required-modal',\n templateUrl: './user-required.modal.component.html',\n styleUrls: ['./user-required.scss'],\n standalone: false,\n})\nexport class UserRequiredModalComponent {}\n", "\n \n {{ 'USER_REQUIRED_MODAL.TITLE' | translate }}\n \n \n

{{ 'USER_REQUIRED_MODAL.DESCRIPTION' | translate }}

\n
\n
\n", "import { Component, input } from '@angular/core';\nimport { GalaxyBadgeModule } from '@vendasta/galaxy/badge';\n\ninterface ChipValue {\n label: string;\n type: 'default' | 'nav' | 'beta';\n}\n\n@Component({\n selector: 'bc-chip',\n templateUrl: './chip.component.html',\n styleUrls: ['./chip.component.scss'],\n imports: [GalaxyBadgeModule],\n})\nexport class BusinessNavChipComponent {\n readonly value = input.required();\n}\n", "@let type = value().type;\n@let label = value().label;\n\n@switch (type) {\n @case ('default') {\n {{ label }}\n }\n @case ('nav') {\n {{ label }}\n }\n @case ('beta') {\n {{ label }}\n }\n}\n", "import { IMAGE_LOADER, ImageLoaderConfig, NgOptimizedImage } from '@angular/common';\nimport { Component, Input, OnInit } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\n@Component({\n selector: 'bc-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n imports: [MatIconModule, NgOptimizedImage],\n providers: [\n {\n provide: IMAGE_LOADER,\n useValue: (config: ImageLoaderConfig) => {\n if (config.src.startsWith('https://lh3.googleusercontent.com/')) {\n return `${config.src}=w${config.width}-c`; // https://developers.google.com/people/image-sizing\n }\n return config.src;\n },\n },\n ],\n})\nexport class IconComponent implements OnInit {\n @Input() matIcon: string;\n @Input() logoUrl: string;\n @Input() productName: string;\n iconType: string;\n\n ngOnInit(): void {\n if (this.matIcon) {\n if (this.matIcon.endsWith('_outlined')) {\n this.iconType = 'matIcon_outlined';\n } else {\n this.iconType = 'matIcon';\n }\n } else if (this.logoUrl) {\n this.iconType = 'logoUrl';\n } else if (this.productName && !this.matIcon && !this.logoUrl) {\n this.iconType = 'generated';\n }\n }\n\n public getAbbreviationForName(): string {\n const defaultAbbreviation = 'U';\n if (this.productName) {\n const names = this.productName.split(' ');\n return names.length > 1 ? names[0][0] + names[1][0] : names[0][0];\n }\n return defaultAbbreviation;\n }\n\n getIconColorForName(): string {\n const COLOR_CODES = [\n '#EF5350',\n '#42A5F5',\n '#66BB6A',\n '#FFA726',\n '#AB47BC',\n '#FFCA28',\n '#EC407A',\n '#26C6DA',\n '#FF7B57',\n ];\n let nameSum = 0;\n const defaultColor = '#808080';\n if (!this.productName) {\n return defaultColor;\n }\n for (let i = 0; i < this.productName.length; i++) {\n nameSum += this.productName[i].charCodeAt(0);\n }\n const index = nameSum % COLOR_CODES.length;\n\n return COLOR_CODES[index];\n }\n}\n", "@switch (iconType) {\n @case ('matIcon_outlined') {\n \n }\n @case ('matIcon') {\n {{ matIcon }}\n }\n @case ('logoUrl') {\n
\n \"productIcon\"\n
\n }\n @case ('generated') {\n
\n @if (!!productName && !logoUrl) {\n {{ getAbbreviationForName() }}\n }\n
\n }\n @default {\n
\n }\n}\n", "import { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { Component, computed, inject, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { ModalService } from '@galaxy/atlas';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { SideNavigationLink } from '@vendasta/atlas';\nimport { GalaxyListModule } from '@vendasta/galaxy/list';\nimport { ActiveLinkService } from '../../active-link.service';\nimport { BusinessNavConfigService } from '../../config.service';\nimport { UserRequiredModalComponent } from '../../modals/user-required/user-required.modal.component';\nimport { BusinessNavChipComponent } from '../chip/chip.component';\nimport { IconComponent } from '../icon/icon.component';\nimport { MatIconModule } from '@angular/material/icon';\n\n@Component({\n selector: 'bc-nav-link',\n templateUrl: './nav-link.component.html',\n styleUrls: ['./nav-link.component.scss'],\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n GalaxyListModule,\n RouterLink,\n BusinessNavChipComponent,\n IconComponent,\n TranslateModule,\n MatIconModule,\n ],\n})\nexport class NavLinkComponent {\n private modalService = inject(ModalService);\n protected readonly activeLinkService = inject(ActiveLinkService);\n\n protected serviceProviderId$ = inject(BusinessNavConfigService).serviceProviderId$;\n protected item = input();\n protected isActiveLink = computed(\n () => this.activeLinkService.activeItem().navigationId === this.item().navigationId,\n );\n\n protected showUserRequiredModal() {\n this.activeLinkService.setActiveItem(this.item());\n this.modalService.openInformational(UserRequiredModalComponent);\n }\n}\n", "\n \n @if (item().showIcon) {\n \n }\n {{ item().translationId || item().label | translate }}\n @if (item().chipContent) {\n \n }\n @if (item().external) {\n open_in_new\n }\n \n\n\n@if (item().userRequired) {\n \n \n \n} @else if (item().serviceProviderId === (serviceProviderId$ | async)) {\n \n \n \n} @else {\n \n \n \n}\n", "/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Forked code, allows for usage within our Angular elements without\n * dependency on @angular/material\n */\nimport { AnimationEvent } from '@angular/animations';\nimport { AriaDescriber, FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';\nimport { BreakpointObserver, Breakpoints, BreakpointState } from '@angular/cdk/layout';\nimport {\n FlexibleConnectedPositionStrategy,\n HorizontalConnectionPos,\n OriginConnectionPosition,\n Overlay,\n OverlayConnectionPosition,\n OverlayRef,\n ScrollStrategy,\n VerticalConnectionPos,\n} from '@angular/cdk/overlay';\nimport { normalizePassiveListenerOptions, Platform } from '@angular/cdk/platform';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ScrollDispatcher } from '@angular/cdk/scrolling';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Optional,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { matTooltipAnimations } from './tooltip-animations';\n\n/** Possible positions for a tooltip. */\nexport type TooltipPosition = 'left' | 'right' | 'above' | 'below' | 'before' | 'after';\n\n/**\n * Options for how the tooltip trigger should handle touch gestures.\n * See `MatTooltipDirective.touchGestures` for more information.\n */\nexport type TooltipTouchGestures = 'auto' | 'on' | 'off';\n\n/** Possible visibility states of a tooltip. */\nexport type TooltipVisibility = 'initial' | 'visible' | 'hidden';\n\n/** Time in ms to throttle repositioning after scroll events. */\nexport const SCROLL_THROTTLE_MS = 20;\n\n/** CSS class that will be attached to the overlay panel. */\nexport const TOOLTIP_PANEL_CLASS = 'atlas_navbar--tooltip-panel';\n\n/** Options used to bind passive event listeners. */\nconst passiveListenerOptions = normalizePassiveListenerOptions({ passive: true });\n\n/**\n * Time between the user putting the pointer on a tooltip\n * trigger and the long press event being fired.\n */\nconst LONGPRESS_DELAY = 500;\n\n/**\n * Creates an error to be thrown if the user supplied an invalid tooltip position.\n * @docs-private\n */\nexport function getMatTooltipInvalidPositionError(position: string): Error {\n return Error(`Tooltip position \"${position}\" is invalid.`);\n}\n\n/** Injection token that determines the scroll handling while a tooltip is visible. */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>(\n 'atlas_navbar--tooltip-scroll-strategy',\n);\n\n/** @docs-private */\nexport function MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({ scrollThrottle: SCROLL_THROTTLE_MS });\n}\n\n/** @docs-private */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: MAT_TOOLTIP_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY,\n};\n\n/** Default `bcTooltip` options that can be overridden. */\nexport interface MatTooltipDefaultOptions {\n showDelay: number;\n hideDelay: number;\n touchendHideDelay: number;\n touchGestures?: TooltipTouchGestures;\n position?: TooltipPosition;\n}\n\n/** Injection token to be used to override the default options for `bcTooltip`. */\nexport const MAT_TOOLTIP_DEFAULT_OPTIONS = new InjectionToken(\n 'atlas_navbar--tooltip-default-options',\n {\n providedIn: 'root',\n factory: MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY,\n },\n);\n\n/** @docs-private */\nexport function MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY(): MatTooltipDefaultOptions {\n return {\n showDelay: 0,\n hideDelay: 0,\n touchendHideDelay: 1500,\n };\n}\n\n/**\n * Directive that attaches a material design tooltip to the host element. Animates the showing and\n * hiding of a tooltip provided position (defaults to below the element).\n *\n * https://material.io/design/components/tooltips.html\n */\n@Directive({\n selector: '[bcTooltip]',\n exportAs: 'bcTooltip',\n standalone: false,\n})\nexport class MatTooltipDirective implements OnDestroy, OnInit {\n _overlayRef: OverlayRef | null;\n _tooltipInstance: TooltipComponent | null;\n\n private _portal: ComponentPortal;\n private _position: TooltipPosition = 'below';\n private _disabled = false;\n private _tooltipClass: string | string[] | Set | { [key: string]: any };\n private _scrollStrategy: () => ScrollStrategy;\n\n /** Allows the user to define the position of the tooltip relative to the parent element */\n @Input('atlasTooltipPosition')\n get position(): TooltipPosition {\n return this._position;\n }\n set position(value: TooltipPosition) {\n if (value !== this._position) {\n this._position = value;\n\n if (this._overlayRef) {\n this._updatePosition();\n\n if (this._tooltipInstance) {\n this._tooltipInstance.show(0);\n }\n\n this._overlayRef.updatePosition();\n }\n }\n }\n\n /** Disables the display of the tooltip. */\n @Input('atlasTooltipDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n // tslint:disable-next-line: typedef\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n // If tooltip is disabled, hide immediately.\n if (this._disabled) {\n this.hide(0);\n }\n }\n\n /** The default delay in ms before showing the tooltip after show is called */\n @Input() showDelay = this._defaultOptions.showDelay;\n\n /** The default delay in ms before hiding the tooltip after hide is called */\n @Input() hideDelay = this._defaultOptions.hideDelay;\n\n /**\n * How touch gestures should be handled by the tooltip. On touch devices the tooltip directive\n * uses a long press gesture to show and hide, however it can conflict with the native browser\n * gestures. To work around the conflict, Angular Material disables native gestures on the\n * trigger, but that might not be desirable on particular elements (e.g. inputs and draggable\n * elements). The different values for this option configure the touch event handling as follows:\n * - `auto` - Enables touch gestures for all elements, but tries to avoid conflicts with native\n * browser gestures on particular elements. In particular, it allows text selection on inputs\n * and textareas, and preserves the native browser dragging on elements marked as `draggable`.\n * - `on` - Enables touch gestures for all elements and disables native\n * browser gestures with no exceptions.\n * - `off` - Disables touch gestures. Note that this will prevent the tooltip from\n * showing on touch devices.\n */\n @Input() touchGestures: TooltipTouchGestures = 'auto';\n\n /** The message to be displayed in the tooltip */\n @Input('bcTooltip')\n get message(): string {\n return this._message;\n }\n set message(value: string) {\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this._message);\n\n // If the message is not a string (e.g. number), convert it to a string and trim it.\n this._message = value != null ? `${value}`.trim() : '';\n\n if (!this._message && this._isTooltipVisible()) {\n this.hide(0);\n } else {\n this._updateTooltipMessage();\n this._ngZone.runOutsideAngular(() => {\n // The `AriaDescriber` has some functionality that avoids adding a description if it's the\n // same as the `aria-label` of an element, however we can't know whether the tooltip trigger\n // has a data-bound `aria-label` or when it'll be set for the first time. We can avoid the\n // issue by deferring the description by a tick so Angular has time to set the `aria-label`.\n Promise.resolve().then(() => {\n this._ariaDescriber.describe(this._elementRef.nativeElement, this.message);\n });\n });\n }\n }\n private _message = '';\n\n /** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */\n @Input('atlasTooltipClass')\n get tooltipClass(): string | string[] | Set | { [key: string]: any } {\n return this._tooltipClass;\n }\n set tooltipClass(value: string | string[] | Set | { [key: string]: any }) {\n this._tooltipClass = value;\n if (this._tooltipInstance) {\n this._setTooltipClass(this._tooltipClass);\n }\n }\n\n /** Manually-bound passive event listeners. */\n private _passiveListeners = new Map();\n\n /** Timer started at the last `touchstart` event. */\n private _touchstartTimeout = 0;\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed = new Subject();\n\n constructor(\n private _overlay: Overlay,\n private _elementRef: ElementRef,\n private _scrollDispatcher: ScrollDispatcher,\n private _viewContainerRef: ViewContainerRef,\n private _ngZone: NgZone,\n private _platform: Platform,\n private _ariaDescriber: AriaDescriber,\n private _focusMonitor: FocusMonitor,\n @Inject(MAT_TOOLTIP_SCROLL_STRATEGY) scrollStrategy: any,\n @Optional() private _dir: Directionality,\n @Optional()\n @Inject(MAT_TOOLTIP_DEFAULT_OPTIONS)\n private _defaultOptions: MatTooltipDefaultOptions,\n /**\n * @deprecated _hammerLoader parameter to be removed.\n * @breaking-change 9.0.0\n */\n // Note that we need to give Angular something to inject here so it doesn't throw.\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n @Inject(ElementRef) _hammerLoader?: any,\n ) {\n this._scrollStrategy = scrollStrategy;\n\n if (_defaultOptions) {\n if (_defaultOptions.position) {\n this.position = _defaultOptions.position;\n }\n\n if (_defaultOptions.touchGestures) {\n this.touchGestures = _defaultOptions.touchGestures;\n }\n }\n\n _focusMonitor\n .monitor(_elementRef)\n .pipe(takeUntil(this._destroyed))\n .subscribe((origin) => {\n // Note that the focus monitor runs outside the Angular zone.\n if (!origin) {\n _ngZone.run(() => this.hide(0));\n } else if (origin === 'keyboard') {\n _ngZone.run(() => this.show());\n }\n });\n\n _ngZone.runOutsideAngular(() => {\n _elementRef.nativeElement.addEventListener('keydown', this._handleKeydown);\n });\n }\n\n /**\n * Setup styling-specific things\n */\n ngOnInit(): void {\n // This needs to happen in `ngOnInit` so the initial values for all inputs have been set.\n this._setupPointerEvents();\n }\n\n /**\n * Dispose the tooltip when destroyed.\n */\n ngOnDestroy(): void {\n const nativeElement = this._elementRef.nativeElement;\n\n window.clearTimeout(this._touchstartTimeout);\n\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._tooltipInstance = null;\n }\n\n // Clean up the event listeners set in the constructor\n nativeElement.removeEventListener('keydown', this._handleKeydown);\n this._passiveListeners.forEach((listener, event) => {\n nativeElement.removeEventListener(event, listener, passiveListenerOptions);\n });\n this._passiveListeners.clear();\n\n this._destroyed.next();\n this._destroyed.complete();\n\n this._ariaDescriber.removeDescription(nativeElement, this.message);\n this._focusMonitor.stopMonitoring(nativeElement);\n }\n\n /** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */\n show(delay: number = this.showDelay): void {\n if (\n this.disabled ||\n !this.message ||\n (this._isTooltipVisible() &&\n !!this._tooltipInstance &&\n !this._tooltipInstance._showTimeoutId &&\n !this._tooltipInstance._hideTimeoutId)\n ) {\n return;\n }\n\n const overlayRef = this._createOverlay();\n\n this._detach();\n this._portal = this._portal || new ComponentPortal(TooltipComponent, this._viewContainerRef);\n this._tooltipInstance = overlayRef.attach(this._portal).instance;\n this._tooltipInstance\n .afterHidden()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n this._setTooltipClass(this._tooltipClass);\n this._updateTooltipMessage();\n this._tooltipInstance.show(delay);\n }\n\n /** Hides the tooltip after the delay in ms, defaults to tooltip-delay-hide or 0ms if no input */\n hide(delay: number = this.hideDelay): void {\n if (this._tooltipInstance) {\n this._tooltipInstance.hide(delay);\n }\n }\n\n /** Shows/hides the tooltip */\n toggle(): void {\n this._isTooltipVisible() ? this.hide() : this.show();\n }\n\n /** Returns true if the tooltip is currently visible to the user */\n _isTooltipVisible(): boolean {\n return !!this._tooltipInstance && this._tooltipInstance.isVisible();\n }\n\n /** Handles the keydown events on the host element. */\n private _handleKeydown = (e: KeyboardEvent) => {\n if (this._isTooltipVisible() && e.keyCode === ESCAPE && !hasModifierKey(e)) {\n e.preventDefault();\n e.stopPropagation();\n this._ngZone.run(() => this.hide(0));\n }\n };\n\n /** Create the overlay config and position strategy */\n private _createOverlay(): OverlayRef {\n if (this._overlayRef) {\n return this._overlayRef;\n }\n\n const scrollableAncestors = this._scrollDispatcher.getAncestorScrollContainers(this._elementRef);\n\n // Create connected position strategy that listens for scroll events to reposition.\n const strategy = this._overlay\n .position()\n .flexibleConnectedTo(this._elementRef)\n .withTransformOriginOn('.atlas_navbar--tooltip')\n .withFlexibleDimensions(false)\n .withViewportMargin(8)\n .withScrollableContainers(scrollableAncestors);\n\n strategy.positionChanges.pipe(takeUntil(this._destroyed)).subscribe((change) => {\n if (this._tooltipInstance) {\n if (change.scrollableViewProperties.isOverlayClipped && this._tooltipInstance.isVisible()) {\n // After position changes occur and the overlay is clipped by\n // a parent scrollable then close the tooltip.\n this._ngZone.run(() => this.hide(0));\n }\n }\n });\n\n this._overlayRef = this._overlay.create({\n direction: this._dir,\n positionStrategy: strategy,\n panelClass: TOOLTIP_PANEL_CLASS,\n scrollStrategy: this._scrollStrategy(),\n });\n\n this._updatePosition();\n\n this._overlayRef\n .detachments()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n\n return this._overlayRef;\n }\n\n /** Detaches the currently-attached tooltip. */\n private _detach(): void {\n if (this._overlayRef && this._overlayRef.hasAttached()) {\n this._overlayRef.detach();\n }\n\n this._tooltipInstance = null;\n }\n\n /** Updates the position of the current tooltip. */\n private _updatePosition(): void {\n if (!this._overlayRef) {\n return;\n }\n const position = this._overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n const origin = this._getOrigin();\n const overlay = this._getOverlayPosition();\n\n position.withPositions([\n { ...origin.main, ...overlay.main },\n { ...origin.fallback, ...overlay.fallback },\n ]);\n }\n\n /**\n * Returns the origin position and a fallback position based on the user's position preference.\n * The fallback position is the inverse of the origin (e.g. `'below' -> 'above'`).\n */\n _getOrigin(): { main: OriginConnectionPosition; fallback: OriginConnectionPosition } {\n const isLtr = !this._dir || this._dir.value === 'ltr';\n const position = this.position;\n let originPosition: OriginConnectionPosition;\n\n if (position === 'above' || position === 'below') {\n originPosition = { originX: 'center', originY: position === 'above' ? 'top' : 'bottom' };\n } else if (position === 'before' || (position === 'left' && isLtr) || (position === 'right' && !isLtr)) {\n originPosition = { originX: 'start', originY: 'center' };\n } else if (position === 'after' || (position === 'right' && isLtr) || (position === 'left' && !isLtr)) {\n originPosition = { originX: 'end', originY: 'center' };\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const { x, y } = this._invertPosition(originPosition.originX, originPosition.originY);\n\n return {\n main: originPosition,\n fallback: { originX: x, originY: y },\n };\n }\n\n /** Returns the overlay position and a fallback position based on the user's preference */\n _getOverlayPosition(): { main: OverlayConnectionPosition; fallback: OverlayConnectionPosition } {\n const isLtr = !this._dir || this._dir.value === 'ltr';\n const position = this.position;\n let overlayPosition: OverlayConnectionPosition;\n\n if (position === 'above') {\n overlayPosition = { overlayX: 'center', overlayY: 'bottom' };\n } else if (position === 'below') {\n overlayPosition = { overlayX: 'center', overlayY: 'top' };\n } else if (position === 'before' || (position === 'left' && isLtr) || (position === 'right' && !isLtr)) {\n overlayPosition = { overlayX: 'end', overlayY: 'center' };\n } else if (position === 'after' || (position === 'right' && isLtr) || (position === 'left' && !isLtr)) {\n overlayPosition = { overlayX: 'start', overlayY: 'center' };\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const { x, y } = this._invertPosition(overlayPosition.overlayX, overlayPosition.overlayY);\n\n return {\n main: overlayPosition,\n fallback: { overlayX: x, overlayY: y },\n };\n }\n\n /** Updates the tooltip message and repositions the overlay according to the new message length */\n private _updateTooltipMessage(): void {\n // Must wait for the message to be painted to the tooltip so that the overlay can properly\n // calculate the correct positioning based on the size of the text.\n if (this._tooltipInstance) {\n this._tooltipInstance.message = this.message;\n this._tooltipInstance._markForCheck();\n\n this._ngZone.onMicrotaskEmpty\n .asObservable()\n .pipe(take(1), takeUntil(this._destroyed))\n .subscribe(() => {\n if (this._tooltipInstance) {\n if (this._overlayRef) {\n this._overlayRef.updatePosition();\n }\n }\n });\n }\n }\n\n /** Updates the tooltip class */\n private _setTooltipClass(tooltipClass: string | string[] | Set | { [key: string]: any }): void {\n if (this._tooltipInstance) {\n this._tooltipInstance.tooltipClass = tooltipClass;\n this._tooltipInstance._markForCheck();\n }\n }\n\n /** Inverts an overlay position. */\n private _invertPosition(x: HorizontalConnectionPos, y: VerticalConnectionPos): any {\n if (this.position === 'above' || this.position === 'below') {\n if (y === 'top') {\n y = 'bottom';\n } else if (y === 'bottom') {\n y = 'top';\n }\n } else {\n if (x === 'end') {\n x = 'start';\n } else if (x === 'start') {\n x = 'end';\n }\n }\n\n return { x, y };\n }\n\n /** Binds the pointer events to the tooltip trigger. */\n private _setupPointerEvents(): void {\n // The mouse events shouldn't be bound on mobile devices, because they can prevent the\n // first tap from firing its click event or can cause the tooltip to open for clicks.\n if (!this._platform.IOS && !this._platform.ANDROID) {\n this._passiveListeners.set('mouseenter', () => this.show()).set('mouseleave', () => this.hide());\n } else if (this.touchGestures !== 'off') {\n this._disableNativeGesturesIfNecessary();\n const touchendListener = () => {\n window.clearTimeout(this._touchstartTimeout);\n this.hide(this._defaultOptions.touchendHideDelay);\n };\n\n this._passiveListeners\n .set('touchend', touchendListener)\n .set('touchcancel', touchendListener)\n .set('touchstart', () => {\n // Note that it's important that we don't `preventDefault` here,\n // because it can prevent click events from firing on the element.\n window.clearTimeout(this._touchstartTimeout);\n this._touchstartTimeout = window.setTimeout(() => this.show(), LONGPRESS_DELAY);\n });\n }\n\n this._passiveListeners.forEach((listener, event) => {\n this._elementRef.nativeElement.addEventListener(event, listener, passiveListenerOptions);\n });\n }\n\n /** Disables the native browser gestures, based on how the tooltip has been configured. */\n private _disableNativeGesturesIfNecessary(): void {\n const element = this._elementRef.nativeElement;\n const style = element.style;\n const gestures = this.touchGestures;\n\n if (gestures !== 'off') {\n // If gestures are set to `auto`, we don't disable text selection on inputs and\n // textareas, because it prevents the user from typing into them on iOS Safari.\n if (gestures === 'on' || (element.nodeName !== 'INPUT' && element.nodeName !== 'TEXTAREA')) {\n style.userSelect = style.webkitUserSelect = (style as any).MozUserSelect = 'none';\n }\n\n // If we have `auto` gestures and the element uses native HTML dragging,\n // we don't set `-webkit-user-drag` because it prevents the native behavior.\n if (gestures === 'on' || !element.draggable) {\n (style as any).webkitUserDrag = 'none';\n }\n\n style.touchAction = 'none';\n }\n }\n}\n\n/**\n * Internal component that wraps the tooltip's content.\n * @docs-private\n */\n@Component({\n selector: 'bc-tooltip-component',\n templateUrl: 'tooltip.html',\n styleUrls: ['tooltip.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [matTooltipAnimations.tooltipState],\n host: {\n // Forces the element to have a layout in IE and Edge. This fixes issues where the element\n // won't be rendered if the animations are disabled or there is no web animations polyfill.\n '[style.zoom]': '_visibility === \"visible\" ? 1 : null',\n '(body:click)': 'this._handleBodyInteraction()',\n 'aria-hidden': 'true',\n },\n standalone: false,\n /* tslint:enable:no-host-metadata-property */\n})\nexport class TooltipComponent implements OnDestroy {\n /** Message to display in the tooltip */\n message: string;\n\n /** Classes to be added to the tooltip. Supports the same syntax as `ngClass`. */\n tooltipClass: string | string[] | Set | { [key: string]: any };\n\n /** The timeout ID of any current timer set to show the tooltip */\n _showTimeoutId = 0;\n\n /** The timeout ID of any current timer set to hide the tooltip */\n _hideTimeoutId = 0;\n\n /** Property watched by the animation framework to show or hide the tooltip */\n _visibility: TooltipVisibility = 'initial';\n\n /** Whether interactions on the page should close the tooltip */\n private _closeOnInteraction = false;\n\n /** Subject for notifying that the tooltip has been hidden from the view */\n private readonly _onHide: Subject = new Subject();\n\n /** Stream that emits whether the user has a handset-sized display. */\n _isHandset: Observable = this._breakpointObserver.observe(Breakpoints.Handset);\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n private _breakpointObserver: BreakpointObserver,\n ) {}\n\n /**\n * Shows the tooltip with an animation originating from the provided origin\n * @param delay Amount of milliseconds to the delay showing the tooltip.\n */\n show(delay: number): void {\n // Cancel the delayed hide if it is scheduled\n if (this._hideTimeoutId) {\n window.clearTimeout(this._hideTimeoutId);\n this._hideTimeoutId = null;\n }\n\n // Body interactions should cancel the tooltip if there is a delay in showing.\n this._closeOnInteraction = true;\n this._showTimeoutId = window.setTimeout(() => {\n this._visibility = 'visible';\n this._showTimeoutId = null;\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /**\n * Begins the animation to hide the tooltip after the provided delay in ms.\n * @param delay Amount of milliseconds to delay showing the tooltip.\n */\n hide(delay: number): void {\n // Cancel the delayed show if it is scheduled\n if (this._showTimeoutId) {\n window.clearTimeout(this._showTimeoutId);\n this._showTimeoutId = null;\n }\n\n this._hideTimeoutId = window.setTimeout(() => {\n this._visibility = 'hidden';\n this._hideTimeoutId = null;\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /** Returns an observable that notifies when the tooltip has been hidden from view. */\n afterHidden(): Observable {\n return this._onHide.asObservable();\n }\n\n /** Whether the tooltip is being displayed. */\n isVisible(): boolean {\n return this._visibility === 'visible';\n }\n\n ngOnDestroy(): void {\n this._onHide.complete();\n }\n\n _animationStart(): void {\n this._closeOnInteraction = false;\n }\n\n _animationDone(event: AnimationEvent): void {\n const toState = event.toState as TooltipVisibility;\n\n if (toState === 'hidden' && !this.isVisible()) {\n this._onHide.next();\n }\n\n if (toState === 'visible' || toState === 'hidden') {\n this._closeOnInteraction = true;\n }\n }\n\n /**\n * Interactions on the HTML body should close the tooltip immediately as defined in the\n * material design spec.\n * https://material.io/design/components/tooltips.html#behavior\n */\n _handleBodyInteraction(): void {\n if (this._closeOnInteraction) {\n this.hide(0);\n }\n }\n\n /**\n * Marks that the tooltip needs to be checked in the next change detection run.\n * Mainly used for rendering the initial text before positioning a tooltip, which\n * can be problematic in components with OnPush change detection.\n */\n _markForCheck(): void {\n this._changeDetectorRef.markForCheck();\n }\n}\n", "\n {{message}}\n\n", "/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Forked code, allows for usage within our Angular elements without\n * dependency on @angular/material\n */\n\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport {\n MatTooltipDirective as AtlasTooltipDirective,\n TooltipComponent as AtlasTooltipComponent,\n MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER as ATLAS_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\n} from './tooltip';\n\n@NgModule({\n imports: [A11yModule, CommonModule, OverlayModule],\n exports: [AtlasTooltipDirective, AtlasTooltipComponent],\n declarations: [AtlasTooltipDirective, AtlasTooltipComponent],\n providers: [ATLAS_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER],\n})\nexport class AtlasTooltipModule {}\n", "import { DefaultUrlSerializer, UrlSerializer, UrlTree } from '@angular/router';\nimport { Injectable } from '@angular/core';\n\n// Handle brand paths that contain a url encoded `/`\n@Injectable({ providedIn: 'root' })\nexport class CustomUrlSerializer implements UrlSerializer {\n private _defaultUrlSerializer: DefaultUrlSerializer = new DefaultUrlSerializer();\n\n parse(url: any): UrlTree {\n url = url.replace('%252F', '%2F');\n return this._defaultUrlSerializer.parse(url);\n }\n\n serialize(tree: UrlTree): any {\n return this._defaultUrlSerializer.serialize(tree).replace('%252F', '%2F');\n }\n}\n", "import { Injectable } from '@angular/core';\nimport { BehaviorSubject, combineLatest, Observable } from 'rxjs';\nimport { distinctUntilChanged, map, shareReplay } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SidebarService {\n private readonly disabled$$: BehaviorSubject = new BehaviorSubject(false);\n readonly disabled$: Observable = this.disabled$$.asObservable().pipe(map((disabled) => disabled));\n\n private readonly forceShowMenuToggle$$: BehaviorSubject = new BehaviorSubject(false);\n readonly forceShowMenuToggle$: Observable = this.forceShowMenuToggle$$.asObservable();\n\n readonly showMenuToggle$: Observable = combineLatest([this.disabled$, this.forceShowMenuToggle$]).pipe(\n map(([isDisabled, forceShowToggle]) => {\n if (forceShowToggle || !isDisabled) {\n return true;\n }\n return false;\n }),\n distinctUntilChanged(),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n setDisabled(isDisabled: boolean): void {\n this.disabled$$.next(isDisabled);\n }\n\n setShowMenuToggle(isVisible: boolean): void {\n this.forceShowMenuToggle$$.next(isVisible);\n }\n}\n", "import { Component, input } from '@angular/core';\nimport { ModalService } from '@galaxy/atlas';\nimport {\n AtlasApiService,\n GetLocationsRequest,\n GetLocationsRequestAccountGroups,\n GetLocationsRequestGroups,\n Location,\n} from '@vendasta/atlas';\nimport { Observable } from 'rxjs';\nimport { distinctUntilChanged, filter, map, shareReplay, startWith, switchMap, withLatestFrom } from 'rxjs/operators';\nimport { BusinessNavConfigService, Config } from '../config.service';\nimport { SidebarService } from '../core-components/sidebar/sidebar.service';\nimport { BusinessNavDataService } from '../data.service';\nimport { LocationSwitcherModalComponent } from '../modals/location-switcher-modal/location-switcher-modal.component';\nimport { BusinessNavLocationService } from '../modals/location-switcher-modal/location.service';\n\ninterface CachedLocationResponse {\n locationId: string;\n response: Location;\n}\n\n@Component({\n selector: 'bc-location-selector',\n templateUrl: './location-selector.component.html',\n styleUrls: ['./location-selector.component.scss'],\n standalone: false,\n})\nexport class LocationSelectorComponent {\n icon = input<'sync_alt' | 'arrow_drop_down'>('arrow_drop_down');\n isRounded = input(false);\n interactable$: Observable = this.dataService.locationSwitchable$;\n currentLocation$: Observable;\n currentLocationName$: Observable;\n currentLocationAddress$: Observable;\n showIcon$: Observable;\n\n constructor(\n private configService: BusinessNavConfigService,\n private locationService: BusinessNavLocationService,\n private dataService: BusinessNavDataService,\n private sidebarService: SidebarService,\n private atlasApiService: AtlasApiService,\n private modalService: ModalService,\n ) {\n this.currentLocation$ = this.configService.config$.pipe(\n filter((config) => !!config.accountId || !!config.groupPath),\n switchMap((config) => {\n let req: GetLocationsRequest;\n if (config.groupPath) {\n req = new GetLocationsRequest({\n groups: new GetLocationsRequestGroups({ groupPaths: [config.groupPath] }),\n });\n } else {\n req = new GetLocationsRequest({\n accountGroups: new GetLocationsRequestAccountGroups({ accountGroupIds: [config.accountId] }),\n });\n }\n return this.atlasApiService.getLocations(req);\n }),\n map((locations) => {\n let cache: CachedLocationResponse;\n const location = locations.locations[0];\n if (location && location.brand) {\n cache = {\n locationId: location.brand.pathNodes.join('|'),\n response: location,\n };\n } else if (location && location.accountGroup) {\n cache = {\n locationId: location.accountGroup.accountGroupId,\n response: location,\n };\n }\n this.setLocationCache(cache);\n return cache;\n }),\n startWith(LocationSelectorComponent.getLastLocation()),\n withLatestFrom(this.configService.config$),\n filter(\n ([res, config]: [CachedLocationResponse, Config]) =>\n !!res && res.locationId === LocationSelectorComponent.locationIdFromConfig(config),\n ),\n map(([res]: [CachedLocationResponse, Config]) => res.response),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n this.currentLocationName$ = this.currentLocation$.pipe(\n distinctUntilChanged(),\n map((location: Location) => this.getLocationName(location)),\n filter((name: string) => !!name),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n this.currentLocationAddress$ = this.currentLocation$.pipe(\n distinctUntilChanged(),\n map((location: Location) => this.getLocationAddress(location)),\n filter((address: string) => !!address),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.showIcon$ = this.sidebarService.showMenuToggle$.pipe(\n map((isVisible: boolean) => !isVisible),\n distinctUntilChanged(),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n private static getLastLocation(): CachedLocationResponse {\n // eslint-disable-next-line @typescript-eslint/ban-types\n const o: { locationId: string; response: object } = JSON.parse(\n localStorage.getItem('business-nav-current-location'),\n );\n if (!o || !o.response) {\n return null;\n }\n return {\n locationId: o.locationId,\n response: Location.fromProto(o.response),\n };\n }\n\n private static locationIdFromConfig(cfg: Config): string {\n return cfg.accountId ? cfg.accountId : cfg.groupPath;\n }\n\n setLocationCache(cache: CachedLocationResponse): void {\n localStorage.setItem(\n 'business-nav-current-location',\n JSON.stringify({\n locationId: cache.locationId,\n response: cache.response.toApiJson(),\n }),\n );\n }\n\n getLocationName(location: Location): string {\n if (!location) {\n return '';\n }\n if (location.accountGroup) {\n return location.accountGroup.name;\n }\n if (location.brand) {\n return location.brand.name;\n }\n return '';\n }\n\n getLocationAddress(location: Location): string {\n if (!location) {\n return '';\n }\n if (location.accountGroup) {\n return location.accountGroup.address;\n }\n if (location.brand) {\n return 'Group';\n }\n return '';\n }\n\n showSwitchLocationDialog(): void {\n this.locationService.setQuery('');\n this.modalService.openList(LocationSwitcherModalComponent);\n }\n}\n", "@if (interactable$ | async) {\n \n \n \n} @else {\n \n \n \n}\n\n\n @let interactable = interactable$ | async;\n @if (currentLocationName$ | async; as locationName) {\n
\n
\n {{ locationName }}\n @if (currentLocationAddress$ | async; as locationAddress) {\n {{ locationAddress }}\n }\n
\n @if (interactable) {\n {{ icon() }}\n }\n
\n }\n
\n", "import { ListKeyManagerOption } from '@angular/cdk/a11y';\nimport { Component, computed, ElementRef, inject, input, output } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { ActivatedRouteSnapshot, Router, UrlTree } from '@angular/router';\nimport { Location } from '@vendasta/atlas';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { combineLatest, firstValueFrom, map, shareReplay, take } from 'rxjs';\nimport { isPathBlockListed, LOCATION_SWITCH_CONFIG_TOKEN } from '../../../../business-nav.module';\nimport { BusinessNavConfigService, Config } from '../../../../config.service';\nimport { BusinessNavDataService } from '../../../../data.service';\nimport { BusinessNavLocationService } from '../../location.service';\n\nenum AccountType {\n brand = 'account/brands',\n location = 'account/location',\n unset = 'account/unset',\n}\nconst AccountTypes = Object.values(AccountType);\n\nconst ID_PLACEHOLDER = 'id_placeholder';\n\n@Component({\n selector: 'bc-location-list-item',\n templateUrl: './location-list-item.component.html',\n styleUrls: ['./location-list-item.component.scss'],\n standalone: false,\n})\nexport class LocationListItemComponent implements ListKeyManagerOption {\n location = input.required();\n isActive = input(false);\n iconUrl = input(null);\n selected = output();\n /** Never disabled for now, this is here for the interface implementation. */\n disabled = false;\n\n readonly dataService = inject(BusinessNavDataService);\n private readonly config = inject(BusinessNavConfigService);\n private readonly snackbarService = inject(SnackbarService);\n private readonly router = inject(Router);\n private readonly elRef = inject(ElementRef);\n\n // Only use configFirstEmission for synchronous access to config where the values don't change for the life cycle of the app\n // If the values can change, use the config$ observable directly\n private readonly configFirstEmission = toSignal(\n this.config.config$.pipe(\n map((config: Config) => config),\n take(1),\n ),\n { requireSync: true },\n );\n private readonly serviceProviderId = computed(() => this.configFirstEmission().serviceProviderId);\n protected readonly isCurrentLocation = computed(() => {\n const sameAccountGroup =\n !!this.location().accountGroup &&\n this.configFirstEmission().accountId === this.location().accountGroup.accountGroupId;\n const sameGroup =\n !!this.location().brand && this.configFirstEmission().groupPath === this.location().brand.pathNodes.join('|');\n return sameAccountGroup || sameGroup;\n });\n\n private readonly businessNavLocationService = inject(BusinessNavLocationService);\n\n protected readonly hasProduct$ = combineLatest([\n this.businessNavLocationService.activePath$,\n this.config.config$,\n ]).pipe(\n map(([, config]) => {\n if (!this.location().accountGroup || !this.location().accountGroup.activatedProductIds) {\n return false;\n }\n\n return this.location().accountGroup.activatedProductIds.some(\n (activatedProductId) => activatedProductId === config.serviceProviderId,\n );\n }),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n\n protected readonly defaultLocation$ = this.dataService.defaultLocation$;\n protected readonly isDefault$ = this.defaultLocation$.pipe(\n map(\n (defaultLocation) =>\n (this.location().accountGroup &&\n defaultLocation?.accountGroupId === this.location().accountGroup.accountGroupId) ||\n (this.location().brand && defaultLocation?.groupId === this.location().brand.pathNodes.join('|')),\n ),\n );\n\n private readonly locationSwitchConfig = inject(LOCATION_SWITCH_CONFIG_TOKEN);\n\n setDefaultLocation(accountGroupId?: string, groupId?: string): void {\n this.dataService.setDefaultLocation(accountGroupId, groupId).subscribe({\n error: () => this.snackbarService.openErrorSnack('COMMON.RESULT.FAILURE'),\n });\n }\n\n /** Gets the label for this option. */\n getLabel(): string {\n if (this.location().accountGroup) {\n return this.location().accountGroup.name;\n } else if (this.location().brand) {\n return this.location().brand.name;\n }\n // Location not provided yet, should probably not get here\n return '';\n }\n\n async goToLocation(event?: Event) {\n if (event) {\n event.stopPropagation();\n }\n this.selected.emit();\n if (this.isCurrentLocation()) {\n return;\n }\n\n const params = collectRouteParams(this.router);\n\n const configForContext = this.locationSwitchConfig.supportedLocationContextConfig.find(\n (config) =>\n config.context ===\n (this.router.url.includes('location') || this.location().accountGroup ? 'location' : 'brand'),\n );\n\n const canSwitchWithinServiceProvider =\n this.serviceProviderId().toUpperCase() === 'VBC' || (await firstValueFrom(this.hasProduct$));\n\n if (!configForContext || !canSwitchWithinServiceProvider) {\n const url = this.location().accountGroup?.url || this.location().brand?.url;\n window.location.href = url + '/home';\n return;\n }\n\n const replaceId = params[configForContext.locationParamKey] || ID_PLACEHOLDER;\n const [isBlockListed, destUrl] = isPathBlockListed(this.locationSwitchConfig, this.router.url);\n if (isBlockListed) {\n const loadingPath = this.interpolateUrl(\n this.locationSwitchConfig.loadingPath || this.locationSwitchConfig.defaultPath,\n ID_PLACEHOLDER,\n );\n const loadingUrl = this.router.createUrlTree([loadingPath]);\n let interpolatedUrl = '';\n if (destUrl.includes(replaceId)) {\n interpolatedUrl = this.interpolateUrl(destUrl, replaceId);\n } else {\n interpolatedUrl = this.interpolateUrl(destUrl, ID_PLACEHOLDER);\n }\n return this.navigateToUrl(interpolatedUrl, { loadPath: loadingUrl });\n }\n\n if (!this.router.url.includes(replaceId)) {\n const url = this.router.createUrlTree([this.locationSwitchConfig.defaultPath]).toString();\n return this.navigateToUrl(this.interpolateUrl(url, ID_PLACEHOLDER), {});\n }\n\n const url = this.interpolateUrl(this.router.url, replaceId);\n return this.navigateToUrl(url, {});\n }\n\n onScroll(): void {\n this.elRef.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\n }\n\n private interpolateUrl(url: string, replaceId: string): string {\n const useCategory = this.location().accountGroup ? AccountType.location : AccountType.brand;\n const interpolated = AccountTypes.reduce((acc, category) => acc.replace(category, useCategory), url);\n\n const useId = this.location().accountGroup\n ? this.location().accountGroup.accountGroupId\n : this.location().brand.pathNodes.join('|');\n\n return interpolated.replace(replaceId, useId);\n }\n\n private async navigateToUrl(url: string, { loadPath }: { loadPath?: UrlTree }) {\n if (this.serviceProviderId().toUpperCase() === 'VBC' && !loadPath) {\n return this.router.navigateByUrl(url);\n } else if (this.serviceProviderId().toUpperCase() === 'VBC' && loadPath) {\n return this.router\n .navigateByUrl(loadPath, {\n skipLocationChange: true,\n state: { target: url },\n })\n .then(() => this.router.navigateByUrl(url));\n } else {\n window.location.href = url;\n }\n }\n}\n\nfunction collectRouteParams(router: Router) {\n let params = {};\n const stack: ActivatedRouteSnapshot[] = [router.routerState.snapshot.root];\n while (stack.length > 0) {\n const route = stack.pop();\n params = { ...params, ...route.params };\n stack.push(...route.children);\n }\n return params;\n}\n", "\n @if (!isCurrentLocation()) {\n \n \n \n }\n\n @if (isCurrentLocation()) {\n
\n \n
\n }\n\n \n \n @if (location().accountGroup) {\n \n @if ((dataService.defaultLocation$ | async)?.accountGroupId !== location().accountGroup.accountGroupId) {\n \n }\n }\n @if (location()?.brand?.pathNodes?.join('|'); as groupPath) {\n \n @if ((dataService.defaultLocation$ | async)?.groupId !== groupPath) {\n \n }\n }\n \n\n\n\n \n @if (!isCurrentLocation() && location().brand) {\n \n \n \n \n \n \n }\n @if (isCurrentLocation() && location().brand) {\n check\n }\n @if (location().accountGroup) {\n {{ isCurrentLocation() ? 'check' : 'store' }}\n }\n
{{ location().accountGroup ? location().accountGroup.name : location().brand.name }}
\n
{{ location().accountGroup ? location().accountGroup.address : 'Group' }}
\n
\n @if ((hasProduct$ | async) && iconUrl()) {\n \n }\n @if ((isDefault$ | async) === true) {\n {{ 'SWITCH_LOCATION_MODAL.DEFAULT' | translate }}\n }\n
\n", "import { Component, EventEmitter, inject, Input, Output } from '@angular/core';\nimport { Location } from '@vendasta/atlas';\nimport { LocationListItemComponent } from './location-list-item/location-list-item.component';\nimport { catchError, switchMap } from 'rxjs/operators';\nimport { map, Observable, of, shareReplay } from 'rxjs';\nimport { AppPartnerService, AppSettings } from '@galaxy/marketplace-apps';\nimport { BusinessNavConfigService } from '../../../config.service';\nimport { MarketplaceAppService } from '@galaxy/marketplace-apps/v1';\n\n@Component({\n selector: 'bc-location-list',\n templateUrl: './location-list.component.html',\n styleUrls: ['./location-list.component.scss'],\n standalone: false,\n})\nexport class LocationListComponent {\n @Input() locations: Location[] = [];\n @Output() locationSelected = new EventEmitter();\n private readonly navConfigService = inject(BusinessNavConfigService);\n private partnerAppService = inject(AppPartnerService);\n private marketPlaceAppService = inject(MarketplaceAppService);\n\n protected brandingAppIconUrl$ = this.navConfigService.config$.pipe(\n switchMap((config) =>\n this.fetchAppSettings(config.serviceProviderId, config.partnerId, config.marketId).pipe(\n switchMap((appSettings) => {\n if (appSettings?.branding?.iconUrl && appSettings?.branding?.enabled) {\n return of(appSettings.branding.iconUrl);\n }\n return this.fetchAppSettings(config.serviceProviderId, config.partnerId, 'all-markets-default-fallback').pipe(\n map((defaultMarketSettings: AppSettings) => defaultMarketSettings?.branding.iconUrl || null),\n );\n }),\n switchMap((iconUrl) => {\n if (iconUrl) return of(iconUrl);\n return this.marketPlaceAppService.getApp(config.serviceProviderId).pipe(map((app) => app?.icon || null));\n }),\n ),\n ),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n\n private fetchAppSettings(appId: string, partnerId: string, marketId: string): Observable {\n return this.partnerAppService.getAppSettings(appId, partnerId, marketId).pipe(catchError(() => of(null)));\n }\n\n switchLocation(location: LocationListItemComponent): void {\n location.goToLocation();\n this.onLocationSelected();\n }\n\n onLocationSelected(): void {\n this.locationSelected.emit();\n }\n}\n", "@if (locations) {\n \n @for (location of locations; track location) {\n \n }\n \n}\n", "import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\nimport { BusinessNavLocationTabService } from './tab.service';\nimport { LocationMode } from '../location-mode';\n\n@Component({\n selector: 'bc-location-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.scss'],\n standalone: false,\n})\nexport class LocationTabComponent implements OnInit {\n @ViewChild('tabElem', { read: ElementRef, static: true }) tabElem: ElementRef;\n @Input() label: string;\n @Input() isDefaultSelected: boolean;\n @Input() mode: LocationMode;\n tabId: string;\n\n constructor(\n public tabService: BusinessNavLocationTabService,\n public elRef: ElementRef,\n ) {}\n\n ngOnInit(): void {\n // For readability in html, each tab should have different text. It also shouldn't ever change\n this.tabId = 'tab-' + this.makeId();\n\n this.tabService.registerTabIndex({ id: this.tabId, elem: this.tabElem, mode: this.mode });\n if (this.isDefaultSelected) {\n this.tabService.selectTab(this.tabId);\n }\n }\n\n private makeId(): string {\n let result = '';\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n for (let i = 0; i < 10; i++) {\n result += characters.charAt(Math.floor(Math.random() * characters.length));\n }\n return result;\n }\n}\n", "
\n {{ label }}\n
\n", "import {\n AfterContentInit,\n Component,\n ContentChildren,\n ElementRef,\n OnDestroy,\n OnInit,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport { BehaviorSubject, Observable, Subject, combineLatest, fromEvent } from 'rxjs';\nimport { filter, startWith, takeUntil } from 'rxjs/operators';\nimport { LocationTabComponent } from '../tab/tab.component';\nimport { BusinessNavLocationTabService } from '../tab/tab.service';\n\n@Component({\n selector: 'bc-tab-header',\n templateUrl: './tab-header.component.html',\n styleUrls: ['./tab-header.component.scss'],\n standalone: false,\n})\nexport class TabHeaderComponent implements OnInit, AfterContentInit, OnDestroy {\n @ContentChildren(LocationTabComponent) tabsContent: LocationTabComponent[];\n @ViewChild('container', { static: true }) container: ElementRef;\n private _destroyed$$: Subject = new Subject();\n private _selectedTab$$: BehaviorSubject = new BehaviorSubject(null);\n private _tabs$$: BehaviorSubject = new BehaviorSubject([]);\n private _inkBarWidth$$: Subject = new Subject();\n private _inkBarOffset$$: Subject = new Subject();\n private _leftChevronEnabled$$: Subject = new Subject();\n private _rightChevronEnabled$$: Subject = new Subject();\n private _chevronsVisible$$: Subject = new Subject();\n\n public inkBarWidth$: Observable = this._inkBarWidth$$.asObservable();\n public inkBarOffset$: Observable = this._inkBarOffset$$.asObservable();\n public leftChevronEnabled$: Observable = this._leftChevronEnabled$$.asObservable();\n public chevronsVisible$: Observable = this._chevronsVisible$$.asObservable();\n public rightChevronEnabled$: Observable = this._rightChevronEnabled$$.asObservable().pipe(startWith(true));\n\n constructor(\n private tabService: BusinessNavLocationTabService,\n private renderer: Renderer2,\n ) {}\n\n ngOnInit(): void {\n combineLatest(this.tabService.selectedTabId$, this._tabs$$)\n .pipe(\n takeUntil(this._destroyed$$),\n filter(([, tabs]: [string, LocationTabComponent[]]) => tabs.length > 0),\n )\n .subscribe(([selectedTab, tabs]: [string, LocationTabComponent[]]) => {\n for (const tab of tabs) {\n if (!tab) {\n continue;\n }\n if (tab.tabId === selectedTab) {\n this.clearSelected();\n this.setSelected(tab);\n break;\n }\n }\n });\n\n fromEvent(window, 'resize')\n .pipe(takeUntil(this._destroyed$$))\n .subscribe(() => {\n this.calcChevronVisible(this.container);\n this.calcInkBar(this._selectedTab$$.getValue());\n });\n }\n\n ngAfterContentInit(): void {\n this.tabsContent.map((tab: LocationTabComponent) => {\n this.renderer.addClass(tab.elRef.nativeElement, 'business-navbar__tab-header__tab');\n tab.elRef.nativeElement.addEventListener('click', () => this.tabService.selectTab(tab.tabId));\n });\n this._tabs$$.next(this.tabsContent.map((t) => t));\n window.setTimeout(() => this.calcChevronVisible(this.container), 0);\n }\n\n calcChevronVisible(container: HTMLElement | ElementRef): void {\n let c: HTMLElement;\n if (container instanceof ElementRef) {\n c = container.nativeElement;\n } else {\n c = container as HTMLElement;\n }\n this._chevronsVisible$$.next(c.scrollWidth > c.clientWidth);\n }\n\n containerScrolled(container: HTMLElement): void {\n this._leftChevronEnabled$$.next(container.scrollLeft !== 0);\n this._rightChevronEnabled$$.next(container.scrollLeft + container.clientWidth < container.scrollWidth);\n }\n\n scrollRight(container: HTMLElement): void {\n this.scroll(container, container.scrollWidth * 0.35);\n }\n\n scrollLeft(container: HTMLElement): void {\n this.scroll(container, -container.scrollWidth * 0.35);\n }\n\n private scroll(container: HTMLElement, scrollAmount: number): void {\n // Handle IE\n if (typeof container.scrollBy !== 'undefined') {\n container.scrollBy({ left: scrollAmount, behavior: 'smooth' });\n return;\n }\n container.scrollLeft += scrollAmount;\n }\n\n private clearSelected(): void {\n if (this._selectedTab$$.getValue() !== null) {\n this.renderer.removeClass(\n this._selectedTab$$.getValue().elRef.nativeElement,\n 'business-navbar__tab-header__tab--selected',\n );\n }\n }\n\n private setSelected(tab: LocationTabComponent): void {\n if (tab === null) {\n return;\n }\n this.clearSelected();\n this._selectedTab$$.next(tab);\n this.renderer.addClass(tab.elRef.nativeElement, 'business-navbar__tab-header__tab--selected');\n tab.elRef.nativeElement.scrollIntoView({ behavior: 'smooth', inline: 'center' });\n this.calcInkBar(tab);\n }\n\n private calcInkBar(tab: LocationTabComponent): void {\n this._inkBarWidth$$.next(tab.elRef.nativeElement.clientWidth);\n this._inkBarOffset$$.next(tab.elRef.nativeElement.offsetLeft);\n }\n\n ngOnDestroy(): void {\n this._destroyed$$.next();\n this._destroyed$$.complete();\n }\n}\n", "\n
\n\n\n
\n
\n \n
\n
\n \n\n\n
\n\n", "import { CommonModule } from '@angular/common';\nimport { Component, Input, NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslateModule } from '@ngx-translate/core';\n\n@Component({\n selector: 'bc-meeting-booking-url',\n templateUrl: './meeting-booking-url.component.html',\n styleUrls: ['./meeting-booking-url.component.scss'],\n standalone: false,\n})\nexport class MeetingBookingUrlComponent {\n @Input() bookingUrl: string;\n\n bookMeeting(): void {\n window.open(this.bookingUrl, '_blank');\n }\n}\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatIconModule, TranslateModule],\n exports: [MeetingBookingUrlComponent],\n declarations: [MeetingBookingUrlComponent],\n})\nexport class MeetingBookingUrlModule {}\n", "
\n today\n {{ 'COMMON.BOOK_A_MEETING' | translate }}\n
\n", "import { Component, Optional, inject } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { InboxService, ParticipantService, SubjectParticipant } from '@galaxy/conversation/core';\nimport { FeatureFlagService } from '@galaxy/partner';\nimport { TranslateService } from '@ngx-translate/core';\nimport { AtlasApiService, SalesContact, UserViewType } from '@vendasta/atlas';\nimport { ConversationChannel, GlobalParticipantType, Participant } from '@vendasta/conversation';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { CountryCode, format } from 'libphonenumber-js';\nimport { Observable, combineLatest, firstValueFrom, of } from 'rxjs';\nimport { catchError, map, shareReplay, switchMap } from 'rxjs/operators';\nimport { BusinessNavConfigService } from '../../config.service';\nimport { BusinessNavDataService } from '../../data.service';\n\nconst SMB_MESSAGE_PARTNER_FEATURE = 'inbox_smb_message_partner';\n\n@Component({\n selector: 'bc-sales-info-modal',\n templateUrl: './sales-info.modal.component.html',\n styleUrls: ['./sales-info.modal.component.scss'],\n standalone: false,\n})\nexport class SalesInfoModalComponent {\n dialogRef = inject(MatDialogRef);\n\n public headerText$: Observable;\n public isAdminView$: Observable;\n public enableMessagePartnerFeature$: Observable;\n public messageTxt: string;\n public sendingMessage: boolean;\n public partnerId$: Observable;\n public accountGroupId$: Observable;\n public canAccessInbox$: Observable = of(false);\n public accountHasInboxEnabled$: Observable;\n public readonly messageSoftLimit = 500;\n\n subjectParticipants$ = combineLatest([this.configService.partnerId$, this.configService.accountGroupId$]).pipe(\n map(([partnerId, accountGroupId]) => [\n new SubjectParticipant({\n internalParticipantId: accountGroupId,\n participantType: GlobalParticipantType.GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP,\n }),\n new SubjectParticipant({\n internalParticipantId: partnerId,\n participantType: GlobalParticipantType.GLOBAL_PARTICIPANT_TYPE_PARTNER,\n }),\n ]),\n );\n\n currentIAMParticipant$: Observable;\n readonly conversationChannel = ConversationChannel.CONVERSATION_CHANNEL_INTERNAL;\n\n salespersonContact$: Observable = this.dataService.salespersonContact$;\n salespersonPicture$: Observable = this.dataService.salespersonPictureUrl$;\n\n constructor(\n private dataService: BusinessNavDataService,\n private t: TranslateService,\n private apiService: AtlasApiService,\n private configService: BusinessNavConfigService,\n private snackbarService: SnackbarService,\n private featureFlagService: FeatureFlagService,\n @Optional() private inboxService: InboxService,\n @Optional() private participantService: ParticipantService,\n ) {\n this.headerText$ = this.dataService.partnerName$.pipe(\n switchMap((partnerName) => {\n return this.t.stream('COMMON.CONTACT_SALESPERSON', { salesPersonName: partnerName });\n }),\n );\n this.isAdminView$ = this.dataService.userViewType$.pipe(map((res) => res === UserViewType.USER_VIEW_TYPE_ADMIN));\n this.initSmbToPartnerMessageFeatureFlag();\n this.initInboxAccess();\n }\n\n initSmbToPartnerMessageFeatureFlag(): void {\n this.enableMessagePartnerFeature$ = this.configService.partnerId$.pipe(\n switchMap((partnerId) => this.featureFlagService.batchGetStatus(partnerId, '', [SMB_MESSAGE_PARTNER_FEATURE])),\n map((feature) => feature[SMB_MESSAGE_PARTNER_FEATURE]),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n /**\n * Initiate access rules specifically for Inbox Chat Modal Button in Business App.\n */\n initInboxAccess(): void {\n if (!this.inboxService || !this.participantService) {\n return;\n }\n\n this.currentIAMParticipant$ = this.participantService?.buildIAMUserParticipant() as Observable;\n\n this.accountHasInboxEnabled$ = this.dataService.navigationItems$.pipe(\n map((navItems) => !!navItems.find((navItem) => navItem?.sideNavigationLink?.navigationId === 'nav-inbox')),\n );\n\n this.canAccessInbox$ = combineLatest([\n this.inboxService.allowSmbChatWithPartner$,\n this.enableMessagePartnerFeature$,\n this.accountHasInboxEnabled$,\n ]).pipe(\n map(\n ([allowSmbChat, enableMessagePartner, accountHasInboxEnabled]) =>\n allowSmbChat && enableMessagePartner && accountHasInboxEnabled,\n ),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n formatPhoneNumber(phoneNumber: string | number, countryCode?: string): string {\n if (!phoneNumber || phoneNumber === undefined) {\n return '';\n }\n\n const numberString = phoneNumber.toString();\n if (numberString === '') {\n return '';\n }\n const formatting = 'NATIONAL';\n if (countryCode as CountryCode) {\n const newCountryCode = countryCode as CountryCode;\n return format(numberString, newCountryCode, formatting);\n }\n return numberString;\n }\n\n closeModal(): void {\n this.dialogRef.close();\n }\n\n async sendMessage(): Promise {\n if (this.sendingMessage) {\n return;\n }\n this.sendingMessage = true;\n const resp = await firstValueFrom(\n this.configService.accountGroupId$.pipe(\n switchMap((accountGroupId: string) =>\n this.apiService\n .contactUs({\n accountGroupId: accountGroupId,\n message: this.messageTxt,\n })\n .pipe(\n catchError(() => {\n this.snackbarService.openErrorSnack('COMMON.RESULT.FAILURE', {\n duration: 4000,\n });\n this.sendingMessage = false;\n return of(null);\n }),\n ),\n ),\n ),\n );\n if (resp.ok) {\n this.snackbarService.openSuccessSnack('COMMON.RESULT.SUCCESS');\n this.sendingMessage = false;\n this.closeModal();\n }\n }\n}\n", "

{{ headerText$ | async }}

\n\n @if (salespersonContact$ | async; as contact) {\n
\n
\n \n
\n
\n
\n {{ contact.firstName }} {{ contact.lastName }}\n
\n
\n {{ contact.jobTitle }}\n
\n \n \n @if (!!contact?.meetingBookingUrl) {\n
\n \n
\n }\n
\n
\n }\n @if ((canAccessInbox$ | async) === false) {\n \n \n @if (msgCounterSoftLimit.value?.length <= messageSoftLimit) {\n {{ msgCounterSoftLimit.value?.length || 0 }}/{{ messageSoftLimit }} \n }\n @if (msgCounterSoftLimit.value?.length > messageSoftLimit) {\n \n Too Many characters    \n {{ msgCounterSoftLimit.value?.length || 0 }}/{{ messageSoftLimit }}\n \n }\n \n }\n
\n\n @if ((canAccessInbox$ | async) === false) {\n \n 500 || (isAdminView$ | async)\"\n (click)=\"sendMessage()\"\n >\n \n {{ 'COMMON.ACTION_LABELS.SEND' | translate }}\n \n \n }\n @if ((canAccessInbox$ | async) === true) {\n \n }\n\n", "import { Injectable, OnDestroy } from '@angular/core';\nimport { PinnedItem, PinnedItemInterface, PinsApiService, SetPinsRequest } from '@vendasta/atlas';\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs';\nimport { filter, map, shareReplay, switchMap, take } from 'rxjs/operators';\nimport { BusinessNavConfigService, Config } from './config.service';\nimport { BusinessNavDataService } from './data.service';\n\nexport class PinnedProductItem extends PinnedItem {\n constructor(kwargs?: PinnedItemInterface) {\n if (!kwargs || !kwargs.navigationId) {\n return;\n }\n let navigationId = kwargs.navigationId;\n\n if (!navigationId.startsWith('product-')) {\n navigationId = `product-${navigationId}`;\n }\n super({ navigationId: navigationId });\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class PinsService implements OnDestroy {\n private pins$$: BehaviorSubject = new BehaviorSubject(null);\n public pins$: Observable = this.pins$$.asObservable();\n\n public navPins$: Observable;\n public productPins$: Observable;\n\n public canPin$: Observable;\n\n private subs: Subscription[] = [];\n\n constructor(\n private apiService: PinsApiService,\n private dataService: BusinessNavDataService,\n private cfgService: BusinessNavConfigService,\n ) {\n this.subs.push(\n this.dataService.pinnedItems$\n .pipe(filter((pins: PinnedItem[]) => typeof pins !== 'undefined'))\n .subscribe((pins: PinnedItem[]) =>\n this.initializePins(pins.map((x) => new PinnedItem({ navigationId: x.navigationId }))),\n ),\n );\n\n this.navPins$ = this.pins$.pipe(\n map((pins: PinnedItem[]) => {\n if (!pins) {\n return [];\n }\n return pins.filter((pin: PinnedItem) => !pin.navigationId.startsWith('product-'));\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.productPins$ = this.pins$.pipe(\n map((pins: PinnedItem[]) => {\n if (!pins) {\n return [];\n }\n const p = pins.filter((pin: PinnedItem) => pin.navigationId.startsWith('product-'));\n return p.map((pin: PinnedItem) => new PinnedItem({ navigationId: pin.navigationId.split('product-')[1] }));\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.canPin$ = this.dataService.userId$.pipe(map((userID: string) => !!userID));\n }\n\n ngOnDestroy(): void {\n for (const sub of this.subs) {\n sub.unsubscribe();\n }\n }\n\n public addPin(pinId: string): void {\n let curPins = this.pins$$.getValue();\n if (!curPins) {\n curPins = [];\n } else if (curPins.find((p: PinnedItem) => p.navigationId === pinId)) {\n return;\n }\n\n curPins.push(new PinnedItem({ navigationId: pinId }));\n this.pins$$.next(curPins);\n this.savePins(curPins);\n }\n\n public removePin(pinId: string): void {\n const curPins = this.pins$$.getValue().filter((p: PinnedItem) => p.navigationId !== pinId);\n this.pins$$.next(curPins);\n this.savePins(curPins);\n }\n\n public setPins(pins: PinnedItem[]): void {\n this.pins$$.next(pins);\n this.savePins(pins);\n }\n\n public initializePins(pins: PinnedItem[]): void {\n this.pins$$.next(pins);\n }\n\n private savePins(pins: PinnedItem[]): void {\n this.cfgService.config$\n .pipe(\n filter((config) => !!config && (!!config.accountId || !!config.groupPath)),\n map((config: Config) => (config.accountId ? config.accountId : config.groupPath)),\n switchMap((identifier: string) =>\n this.apiService.setPins(\n new SetPinsRequest({\n identifier: identifier,\n items: pins,\n }),\n ),\n ),\n take(1),\n )\n .subscribe();\n }\n}\n", "import { animate, style, transition, trigger } from '@angular/animations';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortal } from '@angular/cdk/portal';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n Input,\n input,\n OnChanges,\n OnInit,\n signal,\n Signal,\n SimpleChanges,\n viewChild,\n} from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Capacitor } from '@capacitor/core';\nimport { CustomUserDropdownItem, IdentifiableCustomUserDropdownItem } from '@galaxy/atlas';\nimport { TranslateService } from '@ngx-translate/core';\nimport { DropdownItem, PinnedItem, SideNavigationItem } from '@vendasta/atlas';\nimport { GalaxyNavControlService } from '@vendasta/galaxy/nav';\nimport { combineLatest, Observable, ReplaySubject } from 'rxjs';\nimport { map, shareReplay, startWith, tap } from 'rxjs/operators';\nimport { BusinessNavConfigService } from '../config.service';\nimport { SidebarService } from '../core-components/sidebar/sidebar.service';\nimport { BusinessNavDataService } from '../data.service';\nimport { SalesInfoModalComponent } from '../modals/sales-info/sales-info.modal.component';\nimport { PinsService } from '../pins.service';\nimport { GalaxyTheme, StyleService } from '@vendasta/galaxy/style-service';\nimport { AUTO_HIDE_NAV_MAX_WIDTH_DEFAULT } from '@vendasta/galaxy/nav/src/constants';\nimport { signOutLabel, stopImpersonatingLabel } from '../globals';\n\nexport const BUSINESS_APP_SERVICE_PROVIDER_ID = 'VBC';\n\ntype themingValues = {\n logoUrl: string;\n isDarkMode: boolean;\n};\n\n@Component({\n selector: 'bc-business-navbar',\n templateUrl: './navigation.component.html',\n styleUrls: ['./navigation.component.scss'],\n animations: [\n trigger('animateNav', [\n transition(':enter', [\n style({ transform: 'translateX(-100%)' }),\n animate('0.15s ease-in-out', style({ transform: 'translateX(0%)' })),\n ]),\n transition(':leave', [\n style({ transform: 'translateX(0%)' }),\n animate('0.15s ease-in-out', style({ transform: 'translateX(-100%)' })),\n ]),\n ]),\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NavigationComponent implements OnInit, OnChanges {\n @Input({ transform: booleanAttribute }) hideCenters: boolean;\n @Input({ transform: booleanAttribute }) hideNotifications: boolean;\n disableNavigation = input(false, { transform: booleanAttribute });\n @Input({ transform: booleanAttribute }) alwaysShowMenuToggle: boolean;\n @Input({ transform: booleanAttribute }) showLanguageSelector = true;\n protected readonly portal = viewChild(CdkPortal);\n\n protected readonly partnerId = input();\n protected readonly accountId = input();\n protected readonly marketId = input();\n protected readonly brandPath = input();\n protected readonly serviceProviderId = input();\n protected readonly defaultURL = input();\n protected readonly isPrimaryNav = input(false, { transform: booleanAttribute });\n protected readonly overrideSignOutText = input();\n\n private readonly sidebarService = inject(SidebarService);\n private readonly cfgService = inject(BusinessNavConfigService);\n private readonly apiService = inject(BusinessNavDataService);\n private readonly translate = inject(TranslateService);\n private readonly matIconRegistry = inject(MatIconRegistry);\n private readonly domSanitizer = inject(DomSanitizer);\n private readonly dialog = inject(MatDialog);\n private readonly pinsService = inject(PinsService);\n private readonly overlay = inject(Overlay);\n private readonly navControlService = inject(GalaxyNavControlService);\n private readonly styleService = inject(StyleService);\n\n protected readonly overlayDisabled = signal(false);\n protected readonly showLegacyButton: Signal;\n protected readonly showNavToggle: Signal;\n protected dropdownItems$: Observable;\n\n protected readonly businessAppBranding$ = this.apiService.businessAppBranding$;\n protected readonly coBrandingUrl$ = this.apiService.cobrandingLogoURL$.pipe(map((url) => url || null));\n protected readonly branding$: Observable;\n protected readonly businessCenterName$ = this.apiService.businessCenterName$;\n protected readonly salespersonPictureUrl$ = this.apiService.salespersonPictureUrl$;\n protected readonly partnerName$ = this.apiService.partnerName$;\n protected readonly salespersonName$ = this.apiService.salespersonName$;\n protected readonly exitLinkConfiguration$ = this.apiService.exitLinkConfiguration$;\n protected readonly disableProductSwitcher$ = this.apiService.disableProductSwitcher$;\n\n protected readonly navigationItems$ = combineLatest([this.apiService.navigationItems$, this.pinsService.pins$]).pipe(\n map(([items, pins]) => removeUnpinnedItems(items, pins)),\n );\n\n protected readonly isMobile = toSignal(\n inject(BreakpointObserver)\n .observe('(max-width: ' + AUTO_HIDE_NAV_MAX_WIDTH_DEFAULT + 'px)')\n .pipe(map((result) => result.matches)),\n );\n\n private readonly logoHeight$$ = new ReplaySubject(1);\n protected readonly logoHeight$: Observable;\n\n private readonly overlayRef: Signal;\n private showMenuToggle = toSignal(this.sidebarService.showMenuToggle$);\n\n protected readonly navIsOpen = this.navControlService.isOpen;\n\n constructor() {\n effect(() => {\n if (this.serviceProviderId() === BUSINESS_APP_SERVICE_PROVIDER_ID) {\n document.body.classList.add('new-nav');\n }\n });\n\n this.logoHeight$ = this.logoHeight$$.asObservable().pipe(\n tap((height: number) => {\n this.rememberLastLogoHeight(height);\n }),\n startWith(this.getLastLogoHeight()),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.showNavToggle = computed(() => {\n if (this.disableNavigation()) return false;\n return (this.showMenuToggle() && this.isMobile()) || !this.navIsOpen();\n });\n\n // Init the nav\n this.calcAlwaysShowMenuToggle();\n this.matIconRegistry.addSvgIconLiteral(\n 'store_outlined',\n this.domSanitizer.bypassSecurityTrustHtml(\n ``,\n ),\n );\n\n effect(() => {\n this.refreshConfig(\n this.partnerId(),\n this.brandPath(),\n this.marketId(),\n this.accountId(),\n this.serviceProviderId(),\n this.defaultURL(),\n );\n });\n\n effect(() => {\n this.sidebarService.setDisabled(this.disableNavigation() === true);\n });\n\n this.showLegacyButton = computed(() => this.overlayDisabled() === false);\n\n combineLatest([this.cfgService.serviceProviderId$, this.apiService.disableBusinessNav$])\n .pipe(takeUntilDestroyed())\n .subscribe(([serviceProviderId, disableBusNav]) => {\n this.overlayDisabled.set(\n serviceProviderId === BUSINESS_APP_SERVICE_PROVIDER_ID ||\n (serviceProviderId !== BUSINESS_APP_SERVICE_PROVIDER_ID && disableBusNav),\n );\n });\n\n this.overlayRef = computed(() => {\n const isPortal = !!this.portal();\n const isPrimaryNav = this.isPrimaryNav();\n\n if (isPortal === true && isPrimaryNav === false) {\n const ovrRef = this.createOverlay();\n return ovrRef;\n }\n });\n\n this.branding$ = combineLatest([\n this.apiService.marketLogoUrl$,\n this.apiService.darkMarketLogoUrl$,\n this.styleService.activeTheme$,\n ]).pipe(\n map(([lightLogoUrl, darkLogoUrl, theme]) => {\n const displayDarkLogo = theme === GalaxyTheme.Dark && !!darkLogoUrl;\n return {\n isDarkMode: displayDarkLogo,\n logoUrl: displayDarkLogo ? darkLogoUrl : lightLogoUrl || '',\n };\n }),\n startWith({ isDarkMode: false, logoUrl: '' }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n private createOverlay(): OverlayRef {\n const config: OverlayConfig = new OverlayConfig({\n positionStrategy: this.overlay.position().global().bottom().left().start(),\n direction: 'ltr',\n hasBackdrop: true,\n height: `100%`,\n width: '276px',\n });\n const overlayRef = this.overlay.create(config);\n overlayRef.backdropClick().subscribe(() => {\n overlayRef.detach();\n });\n return overlayRef;\n }\n\n ngOnInit(): void {\n this.dropdownItems$ = combineLatest([\n this.apiService.dropdownItems$,\n this.translate.onTranslationChange.pipe(startWith(null)),\n ]).pipe(\n map(([dropdownItems]) =>\n dropdownItems.map((item: DropdownItem) => {\n let label: string = this.translate.instant(item.translationId || item.label);\n\n if (!label && item.translationId == 'NAVIGATION.MENU.EDIT_PROFILE') {\n label = item.label || 'Edit Profile';\n }\n\n const i: IdentifiableCustomUserDropdownItem = {\n id: item.label,\n label: label,\n };\n\n // Certain routes in VBC do not use the full URL\n const routesUsingFullURL =\n item.label == signOutLabel ||\n item.label == stopImpersonatingLabel ||\n (item.translationId == 'NAVIGATION.MENU.EDIT_PROFILE' && !item.path);\n if (this.serviceProviderId().toUpperCase() === BUSINESS_APP_SERVICE_PROVIDER_ID && !routesUsingFullURL) {\n i.route = item.path;\n } else {\n i.url = item.url;\n }\n\n // If we are on a native platform, we need to use the oauth/logout route to logout\n if (item.label == signOutLabel && Capacitor.isNativePlatform()) {\n i.url = '/oauth/logout';\n }\n\n return i;\n }),\n ),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.alwaysShowMenuToggle) {\n this.calcAlwaysShowMenuToggle();\n }\n }\n\n protected logoLoaded(logo: { height: number }): void {\n window.setTimeout(() => {\n this.logoHeight$$.next(Math.min(logo.height, 120));\n }, 0);\n }\n\n protected openAssistanceModal(): void {\n this.dialog.open(SalesInfoModalComponent, {\n maxWidth: '100vw',\n maxHeight: '100vh',\n autoFocus: false,\n });\n }\n\n private rememberLastLogoHeight(height: number): void {\n localStorage.setItem('business-sidenav-logo-height', '' + height);\n }\n\n private getLastLogoHeight(): number {\n const t = localStorage.getItem('business-sidenav-logo-height');\n if (!t) {\n return 80;\n }\n return +t;\n }\n\n protected toggleMenu(): void {\n if (this.isPrimaryNav()) {\n this.navControlService.toggle();\n } else {\n if (!this.overlayRef() || !this.portal() || this.overlayDisabled()) return;\n\n if (!this.overlayRef().hasAttached()) {\n this.overlayRef().attach(this.portal());\n } else if (this.overlayRef().hasAttached()) {\n this.overlayRef().detach();\n }\n }\n }\n\n private refreshConfig(\n partnerId?: string,\n brandPath?: string,\n marketId?: string,\n accountId?: string,\n serviceProviderId?: string,\n defaultURL?: string,\n ): void {\n this.cfgService.initialize(partnerId, marketId, accountId, brandPath, serviceProviderId, defaultURL);\n }\n\n private calcAlwaysShowMenuToggle(): void {\n this.sidebarService.setShowMenuToggle(this.alwaysShowMenuToggle === true);\n }\n\n protected trackBy(i: SideNavigationItem): string {\n const key =\n i.sideNavigationLink?.navigationId ||\n i.sideNavigationLink?.translationId ||\n i.sideNavigationContainer?.navigationId ||\n i.sideNavigationContainer?.translationId ||\n i.sideNavigationSection?.translationId;\n\n return key;\n }\n}\n\nexport function removeUnpinnedItems(items: SideNavigationItem[], pins: PinnedItem[]): SideNavigationItem[] {\n return items.filter((item) => {\n if (!(item.sideNavigationLink || item.sideNavigationContainer)) return true;\n const relevantItem = item.sideNavigationLink || item.sideNavigationContainer;\n return !relevantItem.pinnable || pins?.find((pin) => pin.navigationId === relevantItem.navigationId);\n });\n}\n", "@let branding = branding$ | async;\n\n@if (serviceProviderId() !== 'VBC') {\n \n @if (showLegacyButton() === true) {\n \n }\n \n
\n @if (exitLinkConfiguration$ | async; as exitLink) {\n \n \n \n }\n \n \n}\n@if (isPrimaryNav() === true) {\n \n \n \n \n @if (isMobile() === true) {\n \n }\n \n \n
\n \n \n
\n \n
\n @if (serviceProviderId() === 'VBC') {\n \n @if (isMobile() || disableNavigation() === true) {\n \n \n \n }\n \n @if (exitLinkConfiguration$ | async; as exitLink) {\n \n \n \n }\n \n \n \n \n \n }\n
\n \n
\n \n} @else {\n \n
\n
\n \n \n \n \n \n \n \n
\n
\n
\n}\n\n\n \n\n\n\n
\n @if (coBrandingUrl$ | async; as coBrandingUrl) {\n
\n {{ 'COMMON.POWERED_BY' | translate }}\n \n
\n }\n
\n @if (branding.logoUrl) {\n \n }\n
\n \n
\n {{ businessCenterName$ | async }}\n
\n
\n \n
\n\n\n
\n
\n
\n
\n \n
\n
\n
{{ partnerName$ | async }}
\n
\n \n chat_bubble\n \n \n @if (salespersonName$ | async; as name) {\n {{ 'COMMON.CONTACT_SALESPERSON' | translate: { salesPersonName: name } }}\n } @else {\n {{ 'COMMON.ACTION_LABELS.CONTACT_US' | translate }}\n }\n \n
\n
\n
\n
\n
\n\n\n \n \n @for (navItem of navigationItems$ | async; track trackBy(navItem)) {\n @if (navItem.sideNavigationContainer; as container) {\n \n \n @if (container.showIcon) {\n \n }\n {{ container.translationId || container.label | translate }}\n @if (container.chipContent) {\n \n }\n \n \n @for (subItem of container.sideNavigationItems; track trackBy(subItem)) {\n \n }\n \n \n }\n\n @if (navItem.sideNavigationLink; as link) {\n \n }\n }\n \n\n", "import { DragDropModule } from '@angular/cdk/drag-drop';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { RouterModule, UrlSerializer } from '@angular/router';\nimport { ATLAS_CONFIG_TOKEN, AtlasConfig, AtlasModule } from '@galaxy/atlas';\nimport { InboxButtonModule } from '@galaxy/conversation/button';\nimport { LexiconModule } from '@galaxy/lexicon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyAlertModule } from '@vendasta/galaxy/alert';\nimport { GalaxyAvatarModule } from '@vendasta/galaxy/avatar';\nimport { GalaxyBadgeModule } from '@vendasta/galaxy/badge';\nimport { GalaxyButtonLoadingIndicatorModule } from '@vendasta/galaxy/button-loading-indicator';\nimport { GalaxyEmptyStateModule } from '@vendasta/galaxy/empty-state';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\nimport { GalaxyInfiniteScrollTriggerModule } from '@vendasta/galaxy/infinite-scroll-trigger';\nimport { GalaxyListModule } from '@vendasta/galaxy/list';\nimport { GalaxyLoadingSpinnerModule } from '@vendasta/galaxy/loading-spinner';\nimport { GalaxyNavModule } from '@vendasta/galaxy/nav';\nimport { GalaxyNavigationToolbarModule } from '@vendasta/galaxy/navigation-toolbar';\nimport { GalaxyTooltipModule } from '@vendasta/galaxy/tooltip';\nimport { map, Observable, shareReplay } from 'rxjs';\nimport * as baseTranslation from './assets/i18n/en_devel.json';\nimport { BcNavItemComponent } from './bc-nav-item/bc-nav-item.component';\nimport { BusinessNavConfigService } from './config.service';\nimport { BusinessNavChipComponent } from './core-components/chip/chip.component';\nimport { EncodeBrandNamePipe } from './core-components/encode-brand.pipe';\nimport { SearchBoxComponent } from './core-components/form-controls/search-box/search-box.component';\nimport { IconComponent } from './core-components/icon/icon.component';\nimport { NavItemContainerComponent } from './core-components/nav-item-container/nav-item-container.component';\nimport { NavItemSectionComponent } from './core-components/nav-item-section/nav-item-section.component';\nimport { LegacyNavLinkComponent } from './core-components/nav-link/legacy-nav-link.component';\nimport { NavLinkComponent } from './core-components/nav-link/nav-link.component';\nimport { AtlasTooltipModule } from './core-components/tooltip/tooltip-module';\nimport { CustomUrlSerializer } from './custom-url-serializer';\nimport { LocationSelectorComponent } from './location-selector/location-selector.component';\nimport { LocationListItemComponent } from './modals/location-switcher-modal/location-list/location-list-item/location-list-item.component';\nimport { LocationListComponent } from './modals/location-switcher-modal/location-list/location-list.component';\nimport { LocationSwitcherModalComponent } from './modals/location-switcher-modal/location-switcher-modal.component';\nimport { TabHeaderComponent } from './modals/location-switcher-modal/tab-header/tab-header.component';\nimport { LocationTabComponent } from './modals/location-switcher-modal/tab/tab.component';\nimport { MeetingBookingUrlModule } from './modals/sales-info/meeting-booking-url/meeting-booking-url.component';\nimport { SalesInfoModalComponent } from './modals/sales-info/sales-info.modal.component';\nimport { UserRequiredModalComponent } from './modals/user-required/user-required.modal.component';\nimport { NavigationComponent } from './navigation/navigation.component';\n\ntype BlockListPath = {\n /** Disabled path regexes */\n blockListedPath: RegExp;\n /** Destination url to redirect to */\n destUrl?: string;\n};\n\n// Checks if blockListPath is of type BlockListPath which has more options when blocking a path on location switch\nfunction isBlockListPath(blockListPath: RegExp | BlockListPath): blockListPath is BlockListPath {\n return 'blockListedPath' in blockListPath;\n}\n\n// Checks if blockListPath is of type RegExp which is simple block list option\nfunction isSimpleBlockListPath(blockListPath: RegExp | BlockListPath): blockListPath is RegExp {\n return !isBlockListPath(blockListPath);\n}\n\nfunction atlasConfigFactory(configService: BusinessNavConfigService): Observable {\n return configService.config$.pipe(\n map((config) => ({\n partnerId: config.partnerId,\n marketId: config.marketId,\n accountId: config.accountId,\n groupPath: config.groupPath,\n serviceProviderId: config.serviceProviderId,\n })),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n}\n\nexport function isPathBlockListed(\n config: BusinessNavModuleConfig['locationSwitchConfig'],\n path: string,\n): [boolean, string] {\n // Check if the path is blocklisted for BlockListPath type and returns destUrl if it exists\n const isBlockListed = config.blockListedPaths.filter(isBlockListPath).some((p) => p.blockListedPath.test(path));\n if (isBlockListed) {\n const blockedPath = config.blockListedPaths.filter(isBlockListPath).find((p) => p.blockListedPath.test(path));\n const destUrl = blockedPath?.destUrl || path;\n return [true, destUrl];\n }\n\n // Check if the path is blocklisted for RegExp type and returns original path as destionation url\n const isBlockListedFallback = config.blockListedPaths.filter(isSimpleBlockListPath).some((p) => p.test(path));\n if (isBlockListedFallback) return [true, path];\n\n // Path is not blocklisted and destionation url is to be ignored\n return [false, ''];\n}\n\ntype BusinessNavModuleConfig = {\n locationSwitchConfig: {\n /** The keys to use for the location params */\n supportedLocationContextConfig: {\n /** The location context this config is applicable to */\n context: 'brand' | 'location';\n /**The url param with the associated context key*/\n locationParamKey: string;\n }[];\n\n /** Where to go if no location is set. Not a replacement for auth guards. */\n defaultPath: string;\n\n /** Path to the location switch loading component. If not provided, the location switcher will use the default path */\n loadingPath?: string;\n\n /**\n * Disabled path regexes with optional destination url. Path will attempted to be matched against blockListedPath regex.\n * If url is matched, the user will be redirected to destUrl if it exists; otherwise reload the component.\n * For backwards compatibility and simpler option, RegExp will continue to be supported.\n **/\n blockListedPaths: (RegExp | BlockListPath)[];\n };\n};\n\n// Do not provide this directly, instead call BusinessNavModule.forRoot({ locationSwitchConfig: ... })\nexport const LOCATION_SWITCH_CONFIG_TOKEN = new InjectionToken(\n 'LOCATION_SWITCH_CONFIG',\n);\n\n@NgModule({\n declarations: [\n NavigationComponent,\n NavItemContainerComponent,\n NavItemSectionComponent,\n BcNavItemComponent,\n SalesInfoModalComponent,\n UserRequiredModalComponent,\n LocationSelectorComponent,\n LocationSwitcherModalComponent,\n SearchBoxComponent,\n LocationTabComponent,\n LocationListComponent,\n LocationListItemComponent,\n EncodeBrandNamePipe,\n TabHeaderComponent,\n LegacyNavLinkComponent,\n ],\n providers: [\n {\n provide: UrlSerializer,\n useClass: CustomUrlSerializer,\n },\n {\n provide: ATLAS_CONFIG_TOKEN,\n useFactory: atlasConfigFactory,\n deps: [BusinessNavConfigService],\n },\n ],\n imports: [\n CommonModule,\n OverlayModule,\n PortalModule,\n RouterModule,\n FormsModule,\n AtlasModule,\n DragDropModule,\n AtlasTooltipModule,\n GalaxyEmptyStateModule,\n GalaxyInfiniteScrollTriggerModule,\n GalaxyLoadingSpinnerModule,\n InboxButtonModule,\n MeetingBookingUrlModule,\n MatIconModule,\n GalaxyAvatarModule,\n MatButtonModule,\n MatMenuModule,\n MatListModule,\n GalaxyBadgeModule,\n TranslateModule,\n MatDialogModule,\n ReactiveFormsModule,\n GalaxyFormFieldModule,\n MatInputModule,\n GalaxyButtonLoadingIndicatorModule,\n GalaxyTooltipModule,\n GalaxyNavModule,\n GalaxyNavigationToolbarModule,\n GalaxyListModule,\n IconComponent,\n BusinessNavChipComponent,\n NavLinkComponent,\n LexiconModule.forChild({\n componentName: 'common/business-nav',\n baseTranslation,\n }),\n GalaxyAlertModule,\n ],\n exports: [\n NavigationComponent,\n LegacyNavLinkComponent,\n NavLinkComponent,\n NavItemContainerComponent,\n AtlasModule,\n LocationListComponent,\n ],\n})\nexport class BusinessNavModule {\n static forRoot({ locationSwitchConfig }: BusinessNavModuleConfig): ModuleWithProviders {\n const simpleBlockListedPaths = locationSwitchConfig.blockListedPaths.filter(isSimpleBlockListPath);\n const blockListedPaths = locationSwitchConfig.blockListedPaths.filter(isBlockListPath).map((path) => {\n path.blockListedPath = cleanRegex([path.blockListedPath])[0];\n return path;\n });\n locationSwitchConfig.blockListedPaths = cleanRegex([...simpleBlockListedPaths, ...GlobalBlockListedPaths]);\n locationSwitchConfig.blockListedPaths.push(...blockListedPaths);\n return {\n ngModule: BusinessNavModule,\n providers: [\n {\n provide: LOCATION_SWITCH_CONFIG_TOKEN,\n useValue: locationSwitchConfig,\n },\n ],\n };\n }\n}\n\nfunction cleanRegex(regexes: RegExp[]): RegExp[] {\n // remove the global flag from the regexes because its presence causes the regex `test` method\n // to mutate the regex's `lastIndex` property, which causes the regex to fail on subsequent calls\n // see:\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/lastIndex#description\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test\n return regexes.map((r) => new RegExp(r.source, r.flags.replace('g', '')));\n}\n\n/**\n * TODO (BREW-230): List of paths that should not be replaced with the current location due to data leakage or initialization logic that breaks\n * when the path is changed. These are bugs that should be fixed, but for now we need to block them so users don't suffer.\n */\nconst GlobalBlockListedPaths: RegExp[] = [/\\/crm\\//i];\n", "export * from './nav-tabs-container.component';\nexport * from './nav-tabs-container.interface';\n", "import { AsyncPipe, NgForOf, NgIf } from '@angular/common';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { NavigationEnd, Router, RouterModule } from '@angular/router';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { SideNavigationLink } from '@vendasta/atlas';\nimport { Observable, filter, map, startWith, switchMap } from 'rxjs';\nimport { NAV_TABS_CONTAINER_CONFIG_TOKEN, NavTabsContainerConfig } from '../nav-tabs-container';\n\n@Component({\n selector: 'bc-nav-tabs',\n imports: [AsyncPipe, NgIf, NgForOf, MatTabsModule, RouterModule, TranslateModule],\n templateUrl: './nav-tabs.component.html',\n styleUrls: ['./nav-tabs.component.scss'],\n})\nexport class NavTabsComponent {\n protected readonly tabs$: Observable;\n protected readonly activeTab$ = this.router.events.pipe(\n filter((e) => e instanceof NavigationEnd),\n map((e: NavigationEnd) => e.url),\n startWith(this.router.url),\n switchMap((url) => this.tabs$.pipe(map((tabs) => tabs.find((t) => url.includes(t.path))?.navigationId ?? ''))),\n );\n protected readonly showTabs$: Observable;\n\n constructor(\n @Optional() @Inject(NAV_TABS_CONTAINER_CONFIG_TOKEN) config: Observable | undefined,\n private readonly router: Router,\n ) {\n this.tabs$ = config?.pipe(map((c) => c.tabs));\n this.showTabs$ = config?.pipe(map((c) => c.tabs.length > 1));\n }\n}\n", "\n\n\n", "import { InjectionToken } from '@angular/core';\nimport { Route } from '@angular/router';\nimport { SideNavigationLink } from '@vendasta/atlas';\nimport { Observable, map, switchMap, combineLatest } from 'rxjs';\nimport { BusinessNavDataService } from '../../data.service';\nimport { FeatureFlagService } from '@galaxy/partner';\nimport { BusinessNavConfigService } from '../../config.service';\nimport { shareReplay } from 'rxjs/operators';\n\nexport const PAGE_SUBLINKS_ID_TOKEN = new InjectionToken('PAGE_SUBLINKS_ID');\nexport const PAGE_SUBLINKS_CONFIG_TOKEN = new InjectionToken>('PAGE_SUBLINKS_CONFIG');\n\nexport type PageSublinksConfig = {\n sublinks: SideNavigationLink[];\n};\n\n/*\n Add providers to a route to provide the sublinks for the page.\n*/\nexport function pageSublinksRoute(navigationId: string, Overrides: Route): Route {\n const routeDefaults: Partial = {\n providers: [\n { provide: PAGE_SUBLINKS_ID_TOKEN, useValue: navigationId },\n {\n provide: PAGE_SUBLINKS_CONFIG_TOKEN,\n useFactory: configFactory,\n deps: [BusinessNavDataService, PAGE_SUBLINKS_ID_TOKEN, FeatureFlagService, BusinessNavConfigService],\n },\n ],\n };\n\n const route: Route = {\n ...routeDefaults,\n ...Overrides,\n };\n\n for (const key in Overrides) {\n if (Object.prototype.hasOwnProperty.call(Overrides, key) && Array.isArray(Overrides[key])) {\n route[key] = [...(routeDefaults[key] || []), ...(Overrides[key] || [])];\n }\n }\n\n return route;\n}\n\nfunction configFactory(\n navigationService: BusinessNavDataService,\n navigationId: string,\n featureFlagService: FeatureFlagService,\n configService: BusinessNavConfigService,\n): Observable {\n // PHNX-984 - Clean up route_to_new_integrations flag once all partners are routed to new integrations page. (settings/integrations)\n // Route to new integrations only if flag is true else route user to old page (settings/connections)\n const routeToNewIntegrations$ = configService.config$.pipe(\n switchMap((config) =>\n featureFlagService.batchGetStatus(config.partnerId, config.marketId, ['route_to_new_integrations']),\n ),\n map((flags) => flags['route_to_new_integrations']),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n return combineLatest([navigationService.linksWithSublinks$, routeToNewIntegrations$]).pipe(\n map(([links, routeToNewIntegrations]) => {\n const link = links.find((c) => c.navigationId === navigationId);\n const sublinks = link?.subLinks ?? [];\n return sublinks.filter(\n (link) => !link.userRequired && !(link.navigationId === 'nav-social-connections' && routeToNewIntegrations),\n );\n }),\n map((sublinks) => {\n return { sublinks };\n }),\n );\n}\n", "import { CommonModule } from '@angular/common';\nimport { Component, ElementRef } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Location, UserViewType } from '@vendasta/atlas';\nimport { GalaxyAlertModule } from '@vendasta/galaxy/alert';\nimport { GalaxyEmptyStateModule } from '@vendasta/galaxy/empty-state';\nimport { GalaxyInfiniteScrollTriggerModule } from '@vendasta/galaxy/infinite-scroll-trigger';\nimport { Observable, combineLatest, map, shareReplay, startWith } from 'rxjs';\nimport { BusinessNavModule } from '../business-nav.module';\nimport { BusinessNavDataService } from '../data.service';\nimport { BusinessNavLocationService } from '../modals/location-switcher-modal/location.service';\nimport { BusinessNavLocationTabService } from '../modals/location-switcher-modal/tab/tab.service';\nimport { Capacitor } from '@capacitor/core';\n\n@Component({\n selector: 'bc-location-switcher',\n imports: [\n CommonModule,\n BusinessNavModule,\n MatProgressSpinnerModule,\n TranslateModule,\n GalaxyInfiniteScrollTriggerModule,\n GalaxyEmptyStateModule,\n MatTabsModule,\n GalaxyAlertModule,\n MatInputModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n ],\n exportAs: 'locationSwitcher',\n templateUrl: './location-switcher.component.html',\n styleUrls: ['./location-switcher.component.scss'],\n})\nexport class LocationSwitcherComponent {\n readonly locations$: Observable;\n readonly infoText$: Observable;\n readonly userViewType$: Observable;\n readonly loading$ = this.locationsService.scrollableLocations.loading$;\n readonly isEmptyResult$: Observable;\n readonly hasQueryText$: Observable;\n readonly currentTabText$: Observable;\n readonly tabElemSelected$: Observable;\n readonly searchControl = new FormControl('');\n readonly isNativeApp = Capacitor.isNativePlatform();\n\n viewType = UserViewType;\n\n constructor(\n private readonly locationsService: BusinessNavLocationService,\n private readonly tabService: BusinessNavLocationTabService,\n private readonly dataService: BusinessNavDataService,\n ) {\n this.isEmptyResult$ = this.locationsService.scrollableLocations.state$.pipe(map((value) => value.empty));\n this.hasQueryText$ = this.locationsService.scrollableLocations.state$.pipe(map((value) => !!value.criteria.query));\n this.locations$ = this.locationsService.scrollableLocations.items$.pipe(\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n\n if (this.isNativeApp) {\n this.tabService.registerTabIndex({ id: '1', elem: null, mode: 'single' });\n this.tabService.selectTab('1');\n } else {\n this.tabService.registerTabIndex({ id: '0', elem: null, mode: 'both' });\n this.tabService.registerTabIndex({ id: '1', elem: null, mode: 'single' });\n this.tabService.registerTabIndex({ id: '2', elem: null, mode: 'brands' });\n }\n\n this.searchControl.valueChanges.subscribe((value) => {\n this.textChanged(value);\n });\n this.userViewType$ = this.dataService.userViewType$.pipe(startWith(UserViewType.USER_VIEW_TYPE_SMB));\n this.tabElemSelected$ = this.tabService.selectedTabElement$;\n this.currentTabText$ = this.tabService.selectedTabMode$.pipe(\n map((tabMode) => {\n switch (tabMode) {\n case 'both':\n return 'SWITCH_LOCATION_MODAL.EMPTY_STATES.ALL_TAB_NAME';\n case 'single':\n return 'NAVIGATION.TABS.LOCATIONS';\n case 'brands':\n return 'NAVIGATION.TABS.GROUPS';\n }\n }),\n );\n this.infoText$ = combineLatest([this.userViewType$, this.dataService.defaultLocation$]).pipe(\n map(([userViewType, defaultLocation]) => {\n if (!(defaultLocation?.accountGroupId || defaultLocation?.groupId)) {\n return 'SWITCH_LOCATION_MODAL.SELECT_DEFAULT';\n }\n if (userViewType === this.viewType.USER_VIEW_TYPE_ADMIN) {\n return 'SWITCH_LOCATION_MODAL.ADMIN_VIEW';\n }\n return;\n }),\n );\n }\n\n textChanged(text: string): void {\n this.locationsService.setQuery(text);\n }\n\n tabSelected(tabId: number): void {\n this.tabService.selectTab(tabId.toString());\n }\n\n listScroll(): void {\n this.locationsService.loadMore();\n }\n}\n", "@if (infoText$ | async; as infoText) {\n {{ infoText | translate }}\n}\n\n {{ 'SWITCH_LOCATION_MODAL.SEARCH' | translate }}\n \n\n\n@if (!isNativeApp) {\n \n \n \n \n \n \n \n \n \n \n \n} @else {\n \n}\n\n@if (isEmptyResult$ | async) {\n
\n @if (hasQueryText$ | async) {\n \n \n {{ 'SWITCH_LOCATION_MODAL.NO_SEARCH_RESULT.TITLE' | translate }}\n \n
\n {{ 'SWITCH_LOCATION_MODAL.NO_SEARCH_RESULT.MESSAGE' | translate }}\n
\n
\n } @else {\n \n \n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.TITLE' | translate }}\n {{ currentTabText$ | async | translate | lowercase }}.\n \n
\n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.MESSAGE' | translate }}\n {{ 'SWITCH_LOCATION_MODAL.EMPTY_STATES.CONTACT' | translate }}\n
\n
\n }\n
\n}\n\n\n \n @if ((locations$ | async)?.length > 0) {\n \n }\n @if (loading$ | async) {\n \n }\n\n", "export * from './nav-tabs.component';\n", "export * from './page-sublinks';\n", "export { Location, PinnedItem } from '@vendasta/atlas';\nexport { LocalBusinessNavElementsModule } from './business-nav-elements.module';\nexport { BusinessNavModule } from './business-nav.module';\nexport { BusinessNavConfigService } from './config.service';\nexport { NavItemContainerComponent } from './core-components/nav-item-container/nav-item-container.component';\nexport { LegacyNavLinkComponent } from './core-components/nav-link/legacy-nav-link.component';\nexport * from './core-components/nav-tabs';\nexport * from './core-components/nav-tabs-container';\nexport * from './core-components/page-sublinks';\nexport { BusinessNavDataService } from './data.service';\nexport { LocationSwitcherComponent } from './location-switcher/location-switcher.component';\nexport { LocationSwitcherModalComponent } from './modals/location-switcher-modal/location-switcher-modal.component';\nexport { NavigationComponent } from './navigation/navigation.component';\nexport { PinnedProductItem, PinsService } from './pins.service';\n", "export * from './lib/index';\n", "export * from './public_api';\n"], "mappings": "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", "names": ["BusinessNavLocationTabService", "init_tab_service", "__esmMin", "init_esm", "init_operators", "constructor", "selectedTab$$", "BehaviorSubject", "selectedTab$", "asObservable", "pipe", "delay", "tabs", "selectedTabId$", "map", "tab", "id", "shareReplay", "bufferSize", "refCount", "selectedTabElement$", "filter", "elem", "selectedTabMode$", "mode", "getTabById", "find", "selectTab", "tabId", "console", "log", "next", "registerTabIndex", "push", "clear", "factory", "\u0275fac", "providedIn", "LOCATIONS_PAGE_SIZE", "BusinessNavLocationService", "init_location_service", "__esmMin", "init_router", "init_src", "init_esm", "init_operators", "constructor", "tabService", "router", "apiService", "configService", "query$$", "BehaviorSubject", "scrollableLocations", "Scrollable", "combineLatest", "pipe", "distinctUntilChanged", "debounceTime", "partnerId$", "selectedTabMode$", "map", "query", "partnerId", "mode", "cursor", "req", "search", "pageSize", "includeAccountGroups", "includeBrands", "listLocations", "resp", "hasMore", "items", "locations", "activePath$", "events", "filter", "e", "NavigationEnd", "startWith", "url", "shareReplay", "refCount", "bufferSize", "loadMore", "setQuery", "input", "next", "\u0275\u0275inject", "BusinessNavLocationTabService", "Router", "AtlasApiService", "BusinessNavConfigService", "factory", "\u0275fac", "providedIn", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275property", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "ctx", "\u0275\u0275element", "ctx_r0", "allTabText$", "accountGroupTabText$", "brandTabText$", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "\u0275\u0275resetView", "listScroll", "_r2", "close", "\u0275\u0275template", "LocationSwitcherModalComponent_Conditional_14_Conditional_2_Template", "LocationSwitcherModalComponent_Conditional_14_Conditional_4_Template", "locations$", "\u0275\u0275conditional", "tmp_3_0", "length", "loading$", "\u0275\u0275textInterpolate1", "currentTabText$", "LocationSwitcherModalComponent_Conditional_17_Conditional_1_Template", "LocationSwitcherModalComponent_Conditional_17_Conditional_3_Template", "hasQueryText$", "LocationSwitcherModalComponent", "init_location_switcher_modal_component", "__esmMin", "init_core", "init_rxjs_interop", "init_forms", "init_dialog", "init_dist", "init_vendasta_atlas", "init_esm", "init_operators", "constructor", "tabService", "t", "locationsService", "dataService", "dialogRef", "inject", "MatDialogRef", "stream", "viewType", "UserViewType", "isNativeApp", "Capacitor", "isNativePlatform", "scrollableLocations", "items$", "isEmptyResult$", "state$", "pipe", "map", "value", "empty", "criteria", "query", "searchControl", "FormControl", "clear", "valueChanges", "takeUntilDestroyed", "subscribe", "text", "textChanged", "ngOnInit", "userViewType$", "startWith", "USER_VIEW_TYPE_SMB", "tabElemSelected$", "selectedTabElement$", "infoText$", "combineLatest", "defaultLocation$", "userViewType", "defaultLocation", "accountGroupId", "groupId", "USER_VIEW_TYPE_ADMIN", "selectedTabMode$", "switchMap", "tabMode", "ngAfterViewInit", "searchElement", "nativeElement", "focus", "loadMore", "setQuery", "\u0275\u0275directiveInject", "BusinessNavLocationTabService", "TranslateService", "BusinessNavLocationService", "BusinessNavDataService", "selectors", "viewQuery", "rf", "LocationSwitcherModalComponent_Conditional_5_Template", "LocationSwitcherModalComponent_Conditional_13_Template", "LocationSwitcherModalComponent_Conditional_14_Template", "LocationSwitcherModalComponent_Conditional_17_Template", "tmp_2_0", "tmp_6_0", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "sendMessage", "\u0275\u0275elementContainer", "\u0275\u0275elementEnd", "\u0275\u0275property", "\u0275\u0275pipeBind1", "creatingConversation$", "\u0275\u0275advance", "buttonContent_r3", "_r4", "_r5", "_r6", "_r7", "_r8", "_r9", "\u0275\u0275text", "\u0275\u0275propertyInterpolate", "\u0275\u0275textInterpolate1", "\u0275\u0275projection", "\u0275\u0275template", "ButtonSendMessageComponent_ng_template_7_span_8_Template", "\u0275\u0275pureFunction1", "_c2", "primaryIcon", "content_r10", "childNodes", "length", "ButtonSendMessageComponent", "init_button_send_message_component", "__esmMin", "init_core", "init_esm", "init_inbox_navigation_service", "constructor", "inboxNav", "inject", "InboxNavigationService", "type", "closeModal", "EventEmitter", "creatingConversation$$", "BehaviorSubject", "asObservable", "gotoConversation", "config", "subjectParticipants", "currentParticipant", "channel", "prefilledMessage", "emit", "selectors", "viewQuery", "rf", "ctx", "ElementRef", "ButtonSendMessageComponent_button_0_Template", "ButtonSendMessageComponent_button_1_Template", "ButtonSendMessageComponent_button_2_Template", "ButtonSendMessageComponent_button_3_Template", "ButtonSendMessageComponent_a_4_Template", "ButtonSendMessageComponent_button_5_Template", "ButtonSendMessageComponent_button_6_Template", "ButtonSendMessageComponent_ng_template_7_Template", "\u0275\u0275templateRefExtractor", "InboxButtonModule", "init_button_module", "__esmMin", "init_common", "init_button", "init_icon", "init_menu", "init_tooltip", "init_ngx_translate_core", "init_button_loading_indicator", "init_translation_module", "CommonModule", "TranslateModule", "MatIconModule", "MatButtonModule", "TranslationModule", "MatTooltipModule", "MatMenuModule", "GalaxyButtonLoadingIndicatorModule", "init_public_api", "__esmMin", "init_button_module", "init_button", "__esmMin", "init_public_api", "init_list", "__esmMin", "init_src", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "toggleMenu", "\u0275\u0275text", "\u0275\u0275elementEnd", "TooolbarLeftDirective", "ToolbarRightDirective", "NavigationToolbarComponent", "init_navigation_toolbar_component", "__esmMin", "init_layout", "init_common", "init_core", "init_rxjs_interop", "init_button", "init_icon", "init_toolbar", "init_esm", "selectors", "hostAttrs", "constructor", "class", "mobileClass", "isMobile", "toSignal", "inject", "BreakpointObserver", "observe", "Breakpoints", "Handset", "pipe", "map", "result", "matches", "initialValue", "menuToggleClicked", "output", "hideMenuToggle", "input", "transform", "booleanAttribute", "effect", "emit", "hostVars", "hostBindings", "rf", "ctx", "\u0275\u0275classMap", "\u0275\u0275classProp", "\u0275\u0275template", "NavigationToolbarComponent_Conditional_0_Template", "\u0275\u0275projection", "\u0275\u0275element", "\u0275\u0275conditional", "CommonModule", "MatToolbarModule", "MatButtonModule", "MatIconButton", "MatIconModule", "MatIcon", "styles", "encapsulation", "GalaxyNavigationToolbarModule", "init_navigation_toolbar_module", "__esmMin", "init_navigation_toolbar_component", "NavigationToolbarComponent", "init_public_api", "__esmMin", "init_navigation_toolbar_module", "init_navigation_toolbar", "__esmMin", "init_public_api", "en_devel_exports", "__export", "COMMON", "CV_NAV", "MENU_TOGGLE", "NAV", "NAVIGATION", "PERFORMANCE", "REQUEST_ASSISTANCE_MODAL", "RM_NAV", "SM_NAV", "SWITCH_LOCATION_MODAL", "USER_REQUIRED_MODAL", "en_devel_default", "init_en_devel", "__esmMin", "ActiveLinkService", "init_active_link_service", "__esmMin", "init_core", "init_router", "init_esm", "init_data_service", "constructor", "router", "links$", "inject", "BusinessNavDataService", "navigationLinks$", "_activeItem", "signal", "navigationId", "path", "setActiveItem", "item", "set", "refreshActiveItem", "events", "pipe", "filter", "e", "NavigationEnd", "subscribe", "activePath", "getActivePath", "url", "includes", "activeItem", "asReadonly", "__async", "firstValueFrom", "find", "l", "decodeURI", "parseUrl", "root", "children", "primary", "toString", "\u0275\u0275inject", "Router", "factory", "\u0275fac", "providedIn", "UserRequiredModalComponent", "init_user_required_modal_component", "__esmMin", "selectors", "standalone", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "\u0275\u0275textInterpolate", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "label_r1", "BusinessNavChipComponent", "init_chip_component", "__esmMin", "init_core", "init_badge", "constructor", "value", "input", "required", "selectors", "inputs", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275declareLet", "\u0275\u0275template", "BusinessNavChipComponent_Case_2_Template", "BusinessNavChipComponent_Case_3_Template", "BusinessNavChipComponent_Case_4_Template", "type", "\u0275\u0275storeLet", "label", "\u0275\u0275conditional", "tmp_2_0", "type_r2", "GalaxyBadgeModule", "BadgeComponent", "encapsulation", "\u0275\u0275element", "\u0275\u0275property", "ctx_r0", "matIcon", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "logoUrl", "getAbbreviationForName", "\u0275\u0275template", "IconComponent_Case_3_Conditional_1_Template", "\u0275\u0275styleProp", "getIconColorForName", "\u0275\u0275conditional", "productName", "IconComponent", "init_icon_component", "__esmMin", "init_common", "init_icon", "ngOnInit", "endsWith", "iconType", "defaultAbbreviation", "names", "split", "length", "COLOR_CODES", "nameSum", "defaultColor", "i", "charCodeAt", "index", "selectors", "inputs", "features", "\u0275\u0275ProvidersFeature", "provide", "IMAGE_LOADER", "useValue", "config", "src", "startsWith", "width", "decls", "vars", "consts", "template", "rf", "ctx", "IconComponent_Case_0_Template", "IconComponent_Case_1_Template", "IconComponent_Case_2_Template", "IconComponent_Case_3_Template", "IconComponent_Case_4_Template", "tmp_0_0", "MatIconModule", "MatIcon", "NgOptimizedImage", "styles", "\u0275\u0275element", "\u0275\u0275property", "ctx_r0", "item", "icon", "logoUrl", "\u0275\u0275pipeBind1", "translationId", "label", "\u0275\u0275pureFunction1", "_c0", "chipContent", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275template", "NavLinkComponent_ng_template_0_Conditional_1_Template", "NavLinkComponent_ng_template_0_Conditional_4_Template", "NavLinkComponent_ng_template_0_Conditional_5_Template", "isActiveLink", "\u0275\u0275advance", "\u0275\u0275conditional", "showIcon", "\u0275\u0275textInterpolate1", "external", "\u0275\u0275elementContainer", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r2", "\u0275\u0275nextContext", "\u0275\u0275resetView", "showUserRequiredModal", "NavLinkComponent_Conditional_2_ng_container_1_Template", "itemContent_r3", "_r4", "activeLinkService", "setActiveItem", "NavLinkComponent_Conditional_4_ng_container_1_Template", "path", "_r5", "NavLinkComponent_Conditional_5_ng_container_1_Template", "url", "\u0275\u0275sanitizeUrl", "NavLinkComponent", "init_nav_link_component", "__esmMin", "init_common", "init_core", "init_router", "init_src", "init_ngx_translate_core", "init_list", "init_active_link_service", "init_config_service", "init_user_required_modal_component", "init_chip_component", "init_icon_component", "init_icon", "constructor", "modalService", "inject", "ModalService", "ActiveLinkService", "serviceProviderId$", "BusinessNavConfigService", "input", "computed", "activeItem", "navigationId", "openInformational", "UserRequiredModalComponent", "selectors", "inputs", "decls", "vars", "consts", "template", "rf", "ctx", "NavLinkComponent_ng_template_0_Template", "\u0275\u0275templateRefExtractor", "NavLinkComponent_Conditional_2_Template", "NavLinkComponent_Conditional_4_Template", "NavLinkComponent_Conditional_5_Template", "userRequired", "serviceProviderId", "AsyncPipe", "NgTemplateOutlet", "GalaxyListModule", "GalaxyListNavItemComponent", "GalaxyListItemIconDirective", "RouterLink", "BusinessNavChipComponent", "IconComponent", "TranslateModule", "TranslatePipe", "MatIconModule", "MatIcon", "styles", "MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY", "overlay", "scrollStrategies", "reposition", "scrollThrottle", "SCROLL_THROTTLE_MS", "MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY", "showDelay", "hideDelay", "touchendHideDelay", "passiveListenerOptions", "MAT_TOOLTIP_SCROLL_STRATEGY", "MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER", "MAT_TOOLTIP_DEFAULT_OPTIONS", "init_tooltip", "__esmMin", "init_overlay", "init_platform", "init_core", "normalizePassiveListenerOptions", "passive", "InjectionToken", "provide", "deps", "Overlay", "useFactory", "providedIn", "factory", "AtlasTooltipModule", "init_tooltip_module", "__esmMin", "init_overlay", "init_a11y", "init_common", "init_tooltip", "ATLAS_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER", "imports", "A11yModule", "CommonModule", "OverlayModule", "CustomUrlSerializer", "init_custom_url_serializer", "__esmMin", "init_router", "constructor", "_defaultUrlSerializer", "DefaultUrlSerializer", "parse", "url", "replace", "serialize", "tree", "factory", "\u0275fac", "providedIn", "SidebarService", "init_sidebar_service", "__esmMin", "init_esm", "init_operators", "constructor", "disabled$$", "BehaviorSubject", "disabled$", "asObservable", "pipe", "map", "disabled", "forceShowMenuToggle$$", "forceShowMenuToggle$", "showMenuToggle$", "combineLatest", "isDisabled", "forceShowToggle", "distinctUntilChanged", "shareReplay", "refCount", "bufferSize", "setDisabled", "next", "setShowMenuToggle", "isVisible", "factory", "\u0275fac", "providedIn", "\u0275\u0275projection", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "showSwitchLocationDialog", "\u0275\u0275template", "LocationSelectorComponent_Conditional_0_ng_content_1_Template", "\u0275\u0275elementEnd", "\u0275\u0275property", "isRounded", "\u0275\u0275advance", "locationSelector_r3", "LocationSelectorComponent_Conditional_2_ng_content_1_Template", "\u0275\u0275text", "\u0275\u0275pureFunction1", "_c3", "interactable_r4", "\u0275\u0275textInterpolate", "ctx", "icon", "LocationSelectorComponent_ng_template_3_Conditional_2_Conditional_4_Template", "LocationSelectorComponent_ng_template_3_Conditional_2_Conditional_6_Template", "_c1", "_c2", "\u0275\u0275conditional", "tmp_8_0", "\u0275\u0275pipeBind1", "currentLocationAddress$", "\u0275\u0275declareLet", "LocationSelectorComponent_ng_template_3_Conditional_2_Template", "\u0275\u0275storeLet", "interactable$", "tmp_3_0", "currentLocationName$", "LocationSelectorComponent", "init_location_selector_component", "__esmMin", "init_core", "init_vendasta_atlas", "init_operators", "init_location_switcher_modal_component", "constructor", "configService", "locationService", "dataService", "sidebarService", "atlasApiService", "modalService", "input", "locationSwitchable$", "currentLocation$", "config$", "pipe", "filter", "config", "accountId", "groupPath", "switchMap", "req", "GetLocationsRequest", "groups", "GetLocationsRequestGroups", "groupPaths", "accountGroups", "GetLocationsRequestAccountGroups", "accountGroupIds", "getLocations", "map", "locations", "cache", "location", "brand", "locationId", "pathNodes", "join", "response", "accountGroup", "accountGroupId", "setLocationCache", "startWith", "getLastLocation", "withLatestFrom", "res", "locationIdFromConfig", "shareReplay", "refCount", "bufferSize", "distinctUntilChanged", "getLocationName", "name", "getLocationAddress", "address", "showIcon$", "showMenuToggle$", "isVisible", "o", "JSON", "parse", "localStorage", "getItem", "Location", "fromProto", "cfg", "setItem", "stringify", "toApiJson", "setQuery", "openList", "LocationSwitcherModalComponent", "\u0275\u0275directiveInject", "BusinessNavConfigService", "BusinessNavLocationService", "BusinessNavDataService", "SidebarService", "AtlasApiService", "ModalService", "selectors", "inputs", "standalone", "ngContentSelectors", "_c0", "decls", "vars", "consts", "template", "rf", "LocationSelectorComponent_Conditional_0_Template", "LocationSelectorComponent_Conditional_2_Template", "LocationSelectorComponent_ng_template_3_Template", "\u0275\u0275templateRefExtractor", "\u0275\u0275projection", "\u0275\u0275elementStart", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "goToLocation", "\u0275\u0275template", "LocationListItemComponent_Conditional_1_ng_content_1_Template", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "item_r3", "LocationListItemComponent_Conditional_2_ng_content_1_Template", "_r5", "setDefaultLocation", "location", "accountGroup", "accountGroupId", "\u0275\u0275text", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "_r4", "LocationListItemComponent_Conditional_8_Conditional_5_Template", "isCurrentLocation", "\u0275\u0275conditional", "tmp_5_0", "dataService", "defaultLocation$", "_r7", "groupPath_r8", "_r6", "LocationListItemComponent_Conditional_9_Conditional_5_Template", "tmp_6_0", "groupId", "ctx", "\u0275\u0275element", "\u0275\u0275textInterpolate", "\u0275\u0275propertyInterpolate", "iconUrl", "\u0275\u0275sanitizeUrl", "LocationListItemComponent_ng_template_10_Conditional_1_Template", "LocationListItemComponent_ng_template_10_Conditional_2_Template", "LocationListItemComponent_ng_template_10_Conditional_3_Template", "LocationListItemComponent_ng_template_10_Conditional_8_Template", "LocationListItemComponent_ng_template_10_Conditional_10_Template", "brand", "name", "address", "hasProduct$", "isDefault$", "collectRouteParams", "router", "params", "stack", "routerState", "snapshot", "root", "length", "route", "pop", "__spreadValues", "push", "children", "AccountType", "AccountTypes", "ID_PLACEHOLDER", "LocationListItemComponent", "init_location_list_item_component", "__esmMin", "init_core", "init_rxjs_interop", "init_router", "init_snackbar_service", "init_esm", "init_business_nav_module", "init_config_service", "init_data_service", "init_location_service", "Object", "values", "constructor", "input", "required", "isActive", "selected", "output", "disabled", "inject", "BusinessNavDataService", "config", "BusinessNavConfigService", "snackbarService", "SnackbarService", "Router", "elRef", "ElementRef", "configFirstEmission", "toSignal", "config$", "pipe", "map", "take", "requireSync", "serviceProviderId", "computed", "sameAccountGroup", "accountId", "sameGroup", "groupPath", "pathNodes", "join", "businessNavLocationService", "BusinessNavLocationService", "combineLatest", "activePath$", "activatedProductIds", "some", "activatedProductId", "shareReplay", "bufferSize", "refCount", "defaultLocation", "locationSwitchConfig", "LOCATION_SWITCH_CONFIG_TOKEN", "subscribe", "error", "openErrorSnack", "getLabel", "event", "__async", "stopPropagation", "emit", "configForContext", "supportedLocationContextConfig", "find", "context", "url", "includes", "canSwitchWithinServiceProvider", "toUpperCase", "firstValueFrom", "window", "href", "replaceId", "locationParamKey", "isBlockListed", "destUrl", "isPathBlockListed", "loadingPath", "interpolateUrl", "defaultPath", "loadingUrl", "createUrlTree", "interpolatedUrl", "navigateToUrl", "loadPath", "toString", "onScroll", "nativeElement", "scrollIntoView", "behavior", "block", "useCategory", "interpolated", "reduce", "acc", "category", "replace", "useId", "_1", "navigateByUrl", "skipLocationChange", "state", "target", "then", "selectors", "inputs", "outputs", "standalone", "ngContentSelectors", "_c0", "decls", "vars", "consts", "template", "rf", "LocationListItemComponent_Conditional_1_Template", "LocationListItemComponent_Conditional_2_Template", "LocationListItemComponent_Conditional_8_Template", "LocationListItemComponent_Conditional_9_Template", "LocationListItemComponent_ng_template_10_Template", "\u0275\u0275templateRefExtractor", "\u0275\u0275classProp", "menu_r9", "tmp_8_0", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onLocationSelected", "\u0275\u0275elementEnd", "\u0275\u0275property", "location_r3", "\u0275\u0275pipeBind1", "brandingAppIconUrl$", "\u0275\u0275repeaterCreate", "LocationListComponent_Conditional_0_For_2_Template", "\u0275\u0275repeaterTrackByIdentity", "\u0275\u0275advance", "\u0275\u0275repeater", "locations", "LocationListComponent", "init_location_list_component", "__esmMin", "init_core", "init_operators", "init_esm", "init_src", "init_config_service", "init_v1", "constructor", "locationSelected", "EventEmitter", "navConfigService", "inject", "BusinessNavConfigService", "partnerAppService", "AppPartnerService", "marketPlaceAppService", "MarketplaceAppService", "config$", "pipe", "switchMap", "config", "fetchAppSettings", "serviceProviderId", "partnerId", "marketId", "appSettings", "branding", "iconUrl", "enabled", "of", "map", "defaultMarketSettings", "getApp", "app", "icon", "shareReplay", "bufferSize", "refCount", "appId", "getAppSettings", "catchError", "switchLocation", "location", "goToLocation", "emit", "selectors", "inputs", "outputs", "standalone", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "LocationListComponent_Conditional_0_Template", "\u0275\u0275conditional", "LocationTabComponent", "init_tab_component", "__esmMin", "init_core", "constructor", "tabService", "elRef", "ngOnInit", "tabId", "makeId", "registerTabIndex", "id", "elem", "tabElem", "mode", "isDefaultSelected", "selectTab", "result", "characters", "i", "charAt", "Math", "floor", "random", "length", "\u0275\u0275directiveInject", "BusinessNavLocationTabService", "ElementRef", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "label", "TabHeaderComponent", "init_tab_header_component", "__esmMin", "init_core", "init_esm", "init_operators", "init_tab_component", "constructor", "tabService", "renderer", "_destroyed$$", "Subject", "_selectedTab$$", "BehaviorSubject", "_tabs$$", "_inkBarWidth$$", "_inkBarOffset$$", "_leftChevronEnabled$$", "_rightChevronEnabled$$", "_chevronsVisible$$", "inkBarWidth$", "asObservable", "inkBarOffset$", "leftChevronEnabled$", "chevronsVisible$", "rightChevronEnabled$", "pipe", "startWith", "ngOnInit", "combineLatest", "selectedTabId$", "takeUntil", "filter", "tabs", "length", "subscribe", "selectedTab", "tab", "tabId", "clearSelected", "setSelected", "fromEvent", "window", "calcChevronVisible", "container", "calcInkBar", "getValue", "ngAfterContentInit", "tabsContent", "map", "addClass", "elRef", "nativeElement", "addEventListener", "selectTab", "next", "t", "setTimeout", "c", "ElementRef", "scrollWidth", "clientWidth", "containerScrolled", "scrollLeft", "scrollRight", "scroll", "scrollAmount", "scrollBy", "left", "behavior", "removeClass", "scrollIntoView", "inline", "offsetLeft", "ngOnDestroy", "complete", "\u0275\u0275directiveInject", "BusinessNavLocationTabService", "Renderer2", "selectors", "contentQueries", "rf", "ctx", "dirIndex", "LocationTabComponent", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "container_r2", "\u0275\u0275reference", "\u0275\u0275resetView", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275projection", "\u0275\u0275classProp", "\u0275\u0275pipeBind1", "\u0275\u0275advance", "\u0275\u0275styleProp", "MeetingBookingUrlComponent", "MeetingBookingUrlModule", "init_meeting_booking_url_component", "__esmMin", "init_common", "init_button", "init_icon", "init_ngx_translate_core", "bookMeeting", "window", "open", "bookingUrl", "selectors", "inputs", "standalone", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "\u0275\u0275pipeBind1", "CommonModule", "MatButtonModule", "MatIconModule", "TranslateModule", "\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "contact_r1", "meetingBookingUrl", "\u0275\u0275text", "\u0275\u0275template", "SalesInfoModalComponent_Conditional_4_Conditional_15_Template", "\u0275\u0275pipeBind1", "ctx_r1", "salespersonPicture$", "\u0275\u0275textInterpolate2", "firstName", "lastName", "\u0275\u0275textInterpolate1", "jobTitle", "phoneNumber", "\u0275\u0275sanitizeUrl", "formatPhoneNumber", "country", "email", "\u0275\u0275textInterpolate", "\u0275\u0275conditional", "msgCounterSoftLimit_r4", "value", "length", "messageSoftLimit", "\u0275\u0275twoWayListener", "$event", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "i0", "\u0275\u0275twoWayBindingSet", "messageTxt", "\u0275\u0275resetView", "SalesInfoModalComponent_Conditional_6_Conditional_4_Template", "SalesInfoModalComponent_Conditional_6_Conditional_5_Template", "\u0275\u0275propertyInterpolate", "\u0275\u0275twoWayProperty", "\u0275\u0275listener", "_r5", "closeModal", "sendMessage", "isAdminView$", "sendingMessage", "_r6", "\u0275\u0275pureFunction3", "_c0", "currentIAMParticipant$", "subjectParticipants$", "conversationChannel", "SMB_MESSAGE_PARTNER_FEATURE", "SalesInfoModalComponent", "init_sales_info_modal_component", "__esmMin", "init_core", "init_dialog", "init_src", "init_vendasta_atlas", "init_vendasta_conversation", "init_libphonenumber_js", "init_esm", "init_operators", "constructor", "dataService", "t", "apiService", "configService", "snackbarService", "featureFlagService", "inboxService", "participantService", "dialogRef", "inject", "MatDialogRef", "canAccessInbox$", "of", "combineLatest", "partnerId$", "accountGroupId$", "pipe", "map", "partnerId", "accountGroupId", "SubjectParticipant", "internalParticipantId", "participantType", "GlobalParticipantType", "GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP", "GLOBAL_PARTICIPANT_TYPE_PARTNER", "ConversationChannel", "CONVERSATION_CHANNEL_INTERNAL", "salespersonContact$", "salespersonPictureUrl$", "headerText$", "partnerName$", "switchMap", "partnerName", "stream", "salesPersonName", "userViewType$", "res", "UserViewType", "USER_VIEW_TYPE_ADMIN", "initSmbToPartnerMessageFeatureFlag", "initInboxAccess", "enableMessagePartnerFeature$", "batchGetStatus", "feature", "shareReplay", "refCount", "bufferSize", "buildIAMUserParticipant", "accountHasInboxEnabled$", "navigationItems$", "navItems", "find", "navItem", "sideNavigationLink", "navigationId", "allowSmbChatWithPartner$", "allowSmbChat", "enableMessagePartner", "accountHasInboxEnabled", "countryCode", "undefined", "numberString", "toString", "formatting", "format", "close", "__async", "firstValueFrom", "contactUs", "message", "catchError", "openErrorSnack", "duration", "ok", "openSuccessSnack", "\u0275\u0275directiveInject", "BusinessNavDataService", "TranslateService", "AtlasApiService", "BusinessNavConfigService", "SnackbarService", "FeatureFlagService", "InboxService", "ParticipantService", "selectors", "standalone", "decls", "vars", "consts", "template", "rf", "ctx", "SalesInfoModalComponent_Conditional_4_Template", "SalesInfoModalComponent_Conditional_6_Template", "SalesInfoModalComponent_Conditional_9_Template", "SalesInfoModalComponent_Conditional_11_Template", "tmp_1_0", "PinnedProductItem", "PinsService", "init_pins_service", "__esmMin", "init_vendasta_atlas", "init_esm", "init_operators", "PinnedItem", "constructor", "kwargs", "navigationId", "startsWith", "apiService", "dataService", "cfgService", "pins$$", "BehaviorSubject", "pins$", "asObservable", "subs", "push", "pinnedItems$", "pipe", "filter", "pins", "subscribe", "initializePins", "map", "x", "navPins$", "pin", "shareReplay", "refCount", "bufferSize", "productPins$", "split", "canPin$", "userId$", "userID", "ngOnDestroy", "sub", "unsubscribe", "addPin", "pinId", "curPins", "getValue", "find", "p", "next", "savePins", "removePin", "setPins", "config$", "config", "accountId", "groupPath", "switchMap", "identifier", "SetPinsRequest", "items", "take", "\u0275\u0275inject", "PinsApiService", "BusinessNavDataService", "BusinessNavConfigService", "factory", "\u0275fac", "providedIn", "trackBy", "$item", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "toggleMenu", "\u0275\u0275elementEnd", "\u0275\u0275propertyInterpolate", "\u0275\u0275pipeBind1", "\u0275\u0275text", "\u0275\u0275textInterpolate1", "exitLink_r3", "exitLinkText", "\u0275\u0275template", "NavigationComponent_Conditional_2_Conditional_6_Conditional_5_Template", "\u0275\u0275advance", "\u0275\u0275property", "ctx", "exitLinkUrl", "\u0275\u0275sanitizeUrl", "\u0275\u0275conditional", "isMobile", "\u0275\u0275elementContainer", "NavigationComponent_Conditional_2_Conditional_3_Template", "\u0275\u0275element", "NavigationComponent_Conditional_2_Conditional_6_Template", "NavigationComponent_Conditional_2_ng_container_8_Template", "dropdownItems$", "disableProductSwitcher$", "hideCenters", "hideNotifications", "branding_r5", "isDarkMode", "showLanguageSelector", "showLegacyButton", "tmp_12_0", "exitLinkConfiguration$", "topbarContent_r4", "_r6", "exitLink_r8", "NavigationComponent_Conditional_3_Conditional_9_Conditional_3_Conditional_5_Template", "_r7", "NavigationComponent_Conditional_3_Conditional_9_Conditional_1_Template", "NavigationComponent_Conditional_3_Conditional_9_Conditional_3_Template", "NavigationComponent_Conditional_3_Conditional_9_ng_container_5_Template", "\u0275\u0275classProp", "navIsOpen", "showNavToggle", "disableNavigation", "tmp_11_0", "overrideSignOutText", "NavigationComponent_Conditional_3_Conditional_3_Template", "NavigationComponent_Conditional_3_ng_container_4_Template", "NavigationComponent_Conditional_3_ng_container_7_Template", "NavigationComponent_Conditional_3_glxy_nav_footer_8_Template", "NavigationComponent_Conditional_3_Conditional_9_Template", "\u0275\u0275projection", "header_r9", "navItems_r11", "footer_r10", "serviceProviderId", "NavigationComponent_Conditional_4_ng_template_0_ng_container_4_Template", "NavigationComponent_Conditional_4_ng_template_0_ng_container_5_Template", "NavigationComponent_Conditional_4_ng_template_0_glxy_nav_footer_6_Template", "undefined", "NavigationComponent_Conditional_4_ng_template_0_Template", "\u0275\u0275textInterpolate", "_r12", "logo_r13", "\u0275\u0275reference", "logoLoaded", "logoUrl", "NavigationComponent_ng_template_7_Conditional_1_Template", "NavigationComponent_ng_template_7_Conditional_5_Template", "tmp_6_0", "coBrandingUrl$", "\u0275\u0275pureFunction1", "_c2", "logoHeight$", "_c3", "businessAppBranding$", "businessCenterName$", "\u0275\u0275pipeBind2", "_c4", "_r14", "openAssistanceModal", "NavigationComponent_ng_template_9_Conditional_15_Template", "NavigationComponent_ng_template_9_Conditional_17_Template", "salespersonPictureUrl$", "partnerName$", "tmp_9_0", "salespersonName$", "container_r15", "icon", "translationId", "label", "_c5", "chipContent", "subItem_r16", "sideNavigationLink", "NavigationComponent_ng_template_11_For_2_Conditional_0_Conditional_2_Template", "NavigationComponent_ng_template_11_For_2_Conditional_0_Conditional_5_Template", "\u0275\u0275repeaterCreate", "NavigationComponent_ng_template_11_For_2_Conditional_0_For_8_Template", "_forTrack0", "showIcon", "\u0275\u0275repeater", "sideNavigationItems", "NavigationComponent_ng_template_11_For_2_Conditional_0_Template", "NavigationComponent_ng_template_11_For_2_Conditional_1_Template", "tmp_16_0", "navItem_r17", "sideNavigationContainer", "tmp_17_0", "NavigationComponent_ng_template_11_For_2_Template", "navigationItems$", "removeUnpinnedItems", "items", "pins", "filter", "item", "relevantItem", "pinnable", "find", "pin", "navigationId", "BUSINESS_APP_SERVICE_PROVIDER_ID", "NavigationComponent", "init_navigation_component", "__esmMin", "init_animations", "init_layout", "init_overlay", "init_portal", "init_core", "init_rxjs_interop", "init_dialog", "init_icon", "init_platform_browser", "init_dist", "init_ngx_translate_core", "init_nav", "init_esm", "init_operators", "init_config_service", "init_sidebar_service", "init_data_service", "init_sales_info_modal_component", "init_pins_service", "init_style_service", "init_globals", "constructor", "input", "transform", "booleanAttribute", "portal", "viewChild", "CdkPortal", "partnerId", "accountId", "marketId", "brandPath", "defaultURL", "isPrimaryNav", "sidebarService", "inject", "SidebarService", "cfgService", "BusinessNavConfigService", "apiService", "BusinessNavDataService", "translate", "TranslateService", "matIconRegistry", "MatIconRegistry", "domSanitizer", "DomSanitizer", "dialog", "MatDialog", "pinsService", "PinsService", "overlay", "Overlay", "navControlService", "GalaxyNavControlService", "styleService", "StyleService", "overlayDisabled", "signal", "cobrandingLogoURL$", "pipe", "map", "url", "combineLatest", "pins$", "toSignal", "BreakpointObserver", "observe", "AUTO_HIDE_NAV_MAX_WIDTH_DEFAULT", "result", "matches", "logoHeight$$", "ReplaySubject", "showMenuToggle", "showMenuToggle$", "isOpen", "effect", "document", "body", "classList", "add", "asObservable", "tap", "height", "rememberLastLogoHeight", "startWith", "getLastLogoHeight", "shareReplay", "refCount", "bufferSize", "computed", "calcAlwaysShowMenuToggle", "addSvgIconLiteral", "bypassSecurityTrustHtml", "refreshConfig", "setDisabled", "serviceProviderId$", "disableBusinessNav$", "takeUntilDestroyed", "subscribe", "disableBusNav", "set", "overlayRef", "isPortal", "createOverlay", "branding$", "marketLogoUrl$", "darkMarketLogoUrl$", "activeTheme$", "lightLogoUrl", "darkLogoUrl", "theme", "displayDarkLogo", "GalaxyTheme", "Dark", "config", "OverlayConfig", "positionStrategy", "position", "global", "bottom", "left", "start", "direction", "hasBackdrop", "width", "create", "backdropClick", "detach", "ngOnInit", "onTranslationChange", "dropdownItems", "instant", "i", "id", "routesUsingFullURL", "signOutLabel", "stopImpersonatingLabel", "path", "toUpperCase", "route", "Capacitor", "isNativePlatform", "ngOnChanges", "changes", "alwaysShowMenuToggle", "logo", "window", "setTimeout", "next", "Math", "min", "open", "SalesInfoModalComponent", "maxWidth", "maxHeight", "autoFocus", "localStorage", "setItem", "t", "getItem", "toggle", "hasAttached", "attach", "initialize", "setShowMenuToggle", "sideNavigationSection", "selectors", "viewQuery", "rf", "standalone", "features", "\u0275\u0275InputTransformsFeature", "\u0275\u0275NgOnChangesFeature", "ngContentSelectors", "_c1", "decls", "vars", "consts", "template", "\u0275\u0275declareLet", "NavigationComponent_Conditional_2_Template", "NavigationComponent_Conditional_3_Template", "NavigationComponent_Conditional_4_Template", "NavigationComponent_ng_template_5_Template", "\u0275\u0275templateRefExtractor", "NavigationComponent_ng_template_7_Template", "NavigationComponent_ng_template_9_Template", "NavigationComponent_ng_template_11_Template", "\u0275\u0275storeLet", "trigger", "transition", "style", "animate", "changeDetection", "isBlockListPath", "blockListPath", "isSimpleBlockListPath", "atlasConfigFactory", "configService", "config$", "pipe", "map", "config", "partnerId", "marketId", "accountId", "groupPath", "serviceProviderId", "shareReplay", "bufferSize", "refCount", "isPathBlockListed", "path", "blockListedPaths", "filter", "some", "p", "blockListedPath", "test", "find", "destUrl", "cleanRegex", "regexes", "r", "RegExp", "source", "flags", "replace", "LOCATION_SWITCH_CONFIG_TOKEN", "BusinessNavModule", "GlobalBlockListedPaths", "init_business_nav_module", "__esmMin", "init_drag_drop", "init_overlay", "init_portal", "init_common", "init_core", "init_forms", "init_button", "init_dialog", "init_icon", "init_input", "init_list", "init_menu", "init_router", "init_src", "init_ngx_translate_core", "init_alert", "init_avatar", "init_badge", "init_button_loading_indicator", "init_empty_state", "init_form_field", "init_infinite_scroll_trigger", "init_loading_spinner", "init_nav", "init_navigation_toolbar", "init_tooltip", "init_esm", "init_en_devel", "init_config_service", "init_icon_component", "init_nav_link_component", "init_tooltip_module", "init_custom_url_serializer", "init_location_list_item_component", "init_location_list_component", "init_location_switcher_modal_component", "init_tab_header_component", "init_tab_component", "init_meeting_booking_url_component", "InjectionToken", "forRoot", "locationSwitchConfig", "simpleBlockListedPaths", "push", "ngModule", "providers", "provide", "useValue", "UrlSerializer", "useClass", "CustomUrlSerializer", "ATLAS_CONFIG_TOKEN", "useFactory", "deps", "BusinessNavConfigService", "imports", "CommonModule", "OverlayModule", "PortalModule", "RouterModule", "FormsModule", "AtlasModule", "DragDropModule", "AtlasTooltipModule", "GalaxyEmptyStateModule", "GalaxyInfiniteScrollTriggerModule", "GalaxyLoadingSpinnerModule", "InboxButtonModule", "MeetingBookingUrlModule", "MatIconModule", "GalaxyAvatarModule", "MatButtonModule", "MatMenuModule", "MatListModule", "GalaxyBadgeModule", "TranslateModule", "MatDialogModule", "ReactiveFormsModule", "GalaxyFormFieldModule", "MatInputModule", "GalaxyButtonLoadingIndicatorModule", "GalaxyTooltipModule", "GalaxyNavModule", "GalaxyNavigationToolbarModule", "GalaxyListModule", "IconComponent", "NavLinkComponent", "LexiconModule", "forChild", "componentName", "baseTranslation", "GalaxyAlertModule", "LocationSwitcherModalComponent", "DefaultValueAccessor", "NgControlStatus", "ModalComponent", "ModalContentComponent", "ModalHeaderComponent", "EmptyStateComponent", "EmptyStateTitleDirective", "InfiniteScrollTriggerComponent", "LoadingSpinnerComponent", "FormControlDirective", "FormFieldComponent", "LabelDirective", "MatInput", "AlertComponent", "LocationTabComponent", "LocationListComponent", "TabHeaderComponent", "AsyncPipe", "TranslatePipe", "MatList", "LocationListItemComponent", "init_nav_tabs_container", "__esmMin", "init_nav_tabs_container_component", "init_nav_tabs_container_interface", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275property", "tab_r1", "path", "navigationId", "\u0275\u0275pipeBind1", "ctx_r1", "activeTab$", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "label", "\u0275\u0275template", "NavTabsComponent_nav_0_a_1_Template", "panel_r3", "tabs$", "NavTabsComponent", "init_nav_tabs_component", "__esmMin", "init_common", "init_tabs", "init_router", "init_ngx_translate_core", "init_esm", "init_nav_tabs_container", "constructor", "config", "router", "events", "pipe", "filter", "e", "NavigationEnd", "map", "url", "startWith", "switchMap", "tabs", "find", "t", "includes", "c", "showTabs$", "length", "\u0275\u0275directiveInject", "NAV_TABS_CONTAINER_CONFIG_TOKEN", "Router", "selectors", "decls", "vars", "consts", "template", "rf", "ctx", "NavTabsComponent_nav_0_Template", "\u0275\u0275element", "AsyncPipe", "NgIf", "NgForOf", "MatTabsModule", "MatTabNav", "MatTabNavPanel", "MatTabLink", "RouterModule", "RouterLink", "TranslateModule", "styles", "pageSublinksRoute", "navigationId", "Overrides", "routeDefaults", "providers", "provide", "PAGE_SUBLINKS_ID_TOKEN", "useValue", "PAGE_SUBLINKS_CONFIG_TOKEN", "useFactory", "configFactory", "deps", "BusinessNavDataService", "FeatureFlagService", "BusinessNavConfigService", "route", "__spreadValues", "key", "Object", "prototype", "hasOwnProperty", "call", "Array", "isArray", "navigationService", "featureFlagService", "configService", "routeToNewIntegrations$", "config$", "pipe", "switchMap", "config", "batchGetStatus", "partnerId", "marketId", "map", "flags", "shareReplay", "refCount", "bufferSize", "combineLatest", "linksWithSublinks$", "links", "routeToNewIntegrations", "find", "c", "subLinks", "filter", "link", "userRequired", "sublinks", "init_page_sublinks", "__esmMin", "init_core", "init_esm", "init_data_service", "init_src", "init_config_service", "init_operators", "InjectionToken", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "\u0275\u0275pipeBind1", "ctx", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "tabSelected", "\u0275\u0275template", "LocationSwitcherComponent_Conditional_7_ng_template_3_Template", "LocationSwitcherComponent_Conditional_7_ng_template_6_Template", "LocationSwitcherComponent_Conditional_7_ng_template_9_Template", "\u0275\u0275property", "tabContent_r3", "LocationSwitcherComponent_Conditional_8_ng_template_0_Template", "\u0275\u0275textInterpolate1", "currentTabText$", "LocationSwitcherComponent_Conditional_9_Conditional_1_Template", "LocationSwitcherComponent_Conditional_9_Conditional_3_Template", "\u0275\u0275conditional", "hasQueryText$", "_r4", "listScroll", "\u0275\u0275element", "LocationSwitcherComponent_ng_template_11_Conditional_2_Template", "LocationSwitcherComponent_ng_template_11_Conditional_4_Template", "locations$", "tmp_3_0", "length", "loading$", "LocationSwitcherComponent", "init_location_switcher_component", "__esmMin", "init_common", "init_forms", "init_form_field", "init_input", "init_progress_spinner", "init_tabs", "init_ngx_translate_core", "init_vendasta_atlas", "init_alert", "init_empty_state", "init_infinite_scroll_trigger", "init_esm", "init_business_nav_module", "init_dist", "constructor", "locationsService", "tabService", "dataService", "scrollableLocations", "searchControl", "FormControl", "isNativeApp", "Capacitor", "isNativePlatform", "viewType", "UserViewType", "isEmptyResult$", "state$", "pipe", "map", "value", "empty", "criteria", "query", "items$", "shareReplay", "bufferSize", "refCount", "registerTabIndex", "id", "elem", "mode", "selectTab", "valueChanges", "subscribe", "textChanged", "userViewType$", "startWith", "USER_VIEW_TYPE_SMB", "tabElemSelected$", "selectedTabElement$", "selectedTabMode$", "tabMode", "infoText$", "combineLatest", "defaultLocation$", "userViewType", "defaultLocation", "accountGroupId", "groupId", "USER_VIEW_TYPE_ADMIN", "text", "setQuery", "tabId", "toString", "loadMore", "\u0275\u0275directiveInject", "BusinessNavLocationService", "BusinessNavLocationTabService", "BusinessNavDataService", "selectors", "exportAs", "decls", "vars", "consts", "template", "rf", "LocationSwitcherComponent_Conditional_0_Template", "LocationSwitcherComponent_Conditional_7_Template", "LocationSwitcherComponent_Conditional_8_Template", "LocationSwitcherComponent_Conditional_9_Template", "LocationSwitcherComponent_ng_template_11_Template", "\u0275\u0275templateRefExtractor", "tmp_1_0", "CommonModule", "NgTemplateOutlet", "AsyncPipe", "LowerCasePipe", "BusinessNavModule", "LocationListComponent", "MatProgressSpinnerModule", "MatProgressSpinner", "TranslateModule", "TranslatePipe", "GalaxyInfiniteScrollTriggerModule", "InfiniteScrollTriggerComponent", "GalaxyEmptyStateModule", "EmptyStateComponent", "EmptyStateTitleDirective", "MatTabsModule", "MatTab", "MatTabGroup", "GalaxyAlertModule", "AlertComponent", "MatInputModule", "MatInput", "MatFormField", "MatLabel", "MatFormFieldModule", "ReactiveFormsModule", "DefaultValueAccessor", "NgControlStatus", "FormControlDirective", "styles", "init_nav_tabs", "__esmMin", "init_nav_tabs_component", "init_page_sublinks", "__esmMin", "init_lib", "__esmMin", "init_business_nav_module", "init_config_service", "init_nav_tabs", "init_nav_tabs_container", "init_page_sublinks", "init_data_service", "init_location_switcher_component", "init_location_switcher_modal_component", "init_pins_service", "init_public_api", "__esmMin", "init_lib", "init_src", "__esmMin", "init_public_api"] }