UNPKG

@rosen-group/ngx-onboarding

Version:

Onboarding module for Angular applications

100 lines (99 loc) 3.71 kB
import { ErrorHandler, EventEmitter, NgZone } from '@angular/core'; import { BrowserDOMSelectorService } from './browser-dom-selector.service'; import { OnboardingItemContainer } from '../models/onboarding-item-container.model'; import { OnboardingConfiguration } from '../models/onboarding-configuration.model'; import { OnboardingItem } from '../models/onboarding-item.model'; import { EnabledStatusBaseService } from './enabled-status-base.service'; import { SeenSelectorsBaseService } from './seen-selectors-base.service'; import * as i0 from "@angular/core"; /** * The OnboardingService manages the configuration and the status of the onboarding component. * * The OnboardingComponent listens to the visibleItemsChanged event and retrieves new onboarding items from the visibleItems object. */ export declare class OnboardingService { private browserDomSelectorService; private loadAndSaveSeenSelectorsService; private loadAndSaveEnabledStatusService; private errorHandler; private zone; /** * Container with currently visible onboarding items (grouped). * OnboardingComponent must iterate through these groups. * * called by OnboardingComponent */ readonly visibleItems: OnboardingItemContainer; /** * called by OnboardingComponent */ visibleItemsChanged: EventEmitter<any>; private addSeenSelectorDebounceSubscription; private enabledChangedDebounceSubscription; private refreshSubscription; private items; private seenSelectors; private enabled; private configuration; private readonly defaultConfiguration; constructor(browserDomSelectorService: BrowserDOMSelectorService, loadAndSaveSeenSelectorsService: SeenSelectorsBaseService, loadAndSaveEnabledStatusService: EnabledStatusBaseService, errorHandler: ErrorHandler, zone: NgZone); /** * returns the count of the registered items */ get registeredItemsCount(): number; /** * Configures the onboarding icons and fonts. * * If you want to change the default settings, then call this in your module where you import this * service as provider and set global defaults like icon properties */ configure(configuration: OnboardingConfiguration): void; /** used internal only to retrieve to configuration from configure()*/ getConfiguration(): OnboardingConfiguration; /** * registers [[OnboardingItem]]s in items, returns the method to unregister items (e.g. in ngOnDestroy) */ register(items: Array<OnboardingItem>): Function; /** * Check which onboarding items are visible. Emit visibleItemsChanged event. * called by OnboardingComponent */ check(): void; /** * Mark all visible items as SEEN, remove them from visible list and emit change event. * called by OnboardingComponent */ hide(): void; /** * called by OnboardingComponent * * Disables the onboarding */ disable(): void; /** * called by OnboardingComponent * * Enables the onboarding */ enable(): void; /** * called by OnboardingComponent */ isEnabled(): boolean; /** * called by OnboardingComponent */ clearSeenSelectors(): void; private init; private addToSeenSelectors; private seenSelectorsChanged; private enabledChanged; private getNotSeenItems; private startRefreshTimer; private loadSeenSelectors; private saveSeenSelectors; private loadEnabledStatus; private saveEnabledStatus; static ɵfac: i0.ɵɵFactoryDeclaration<OnboardingService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<OnboardingService>; }