ngx-joyride
Version:
An Angular Tour (Joyride) library built entirely in Angular, without using any heavy external dependencies like Bootstrap or JQuery. From now on you can easily guide your users through your site showing them all the sections and features.
104 lines (103 loc) • 3.93 kB
TypeScript
import { AfterViewInit, OnInit, OnDestroy, ElementRef, Renderer2, Injector, TemplateRef } from '@angular/core';
import { JoyrideStep } from '../../models/joyride-step.class';
import { IJoyrideStepService } from '../../services';
import { JoyrideStepsContainerService } from '../../services/joyride-steps-container.service';
import { EventListenerService } from '../../services/event-listener.service';
import { Observable } from 'rxjs';
import { DocumentService } from '../../services/document.service';
import { JoyrideOptionsService } from '../../services/joyride-options.service';
import { LoggerService } from '../../services/logger.service';
import { TemplatesService } from '../../services/templates.service';
import * as i0 from "@angular/core";
export declare const DEFAULT_DISTANCE_FROM_MARGIN_TOP = 2;
export declare const DEFAULT_DISTANCE_FROM_MARGIN_LEFT = 2;
export declare enum KEY_CODE {
RIGHT_ARROW = 39,
LEFT_ARROW = 37,
ESCAPE_KEY = 27
}
export declare class JoyrideStepComponent implements OnInit, OnDestroy, AfterViewInit {
private injector;
private readonly stepsContainerService;
private readonly eventListenerService;
private readonly documentService;
private readonly renderer;
private readonly logger;
private readonly optionsService;
private readonly templateService;
stepWidth: number;
stepHeight: number;
leftPosition: number;
topPosition: number;
showArrow: boolean;
arrowPosition: string;
arrowLeftPosition: number;
arrowTopPosition: number;
title: Observable<string>;
text: Observable<string>;
counter: string;
isCounterVisible: boolean;
isPrevButtonVisible: boolean;
themeColor: string;
customContent: TemplateRef<any>;
customPrevButton: TemplateRef<any>;
customNextButton: TemplateRef<any>;
customDoneButton: TemplateRef<any>;
customCounter: TemplateRef<any>;
counterData: any;
ctx: Object;
private arrowSize;
private stepAbsoluteLeft;
private stepAbsoluteTop;
private targetWidth;
targetHeight: number;
private targetAbsoluteLeft;
private targetAbsoluteTop;
private subscriptions;
joyrideStepService: IJoyrideStepService;
private positionAlreadyFixed;
private documentHeight;
prevText: Observable<string>;
nextText: Observable<string>;
doneText: Observable<string>;
step?: JoyrideStep;
stepHolder: ElementRef;
stepContainer: ElementRef;
constructor(injector: Injector, stepsContainerService: JoyrideStepsContainerService, eventListenerService: EventListenerService, documentService: DocumentService, renderer: Renderer2, logger: LoggerService, optionsService: JoyrideOptionsService, templateService: TemplatesService);
ngOnInit(): void;
ngAfterViewInit(): void;
private checkRedraw;
private isCustomized;
private setCustomTexts;
private drawStep;
private getCounter;
private setCustomTemplates;
keyEvent(event: KeyboardEvent): void;
prev(): void;
next(): void;
close(): void;
isFirstStep(): boolean;
isLastStep(): boolean;
private setStepStyle;
private setStyleTop;
private setStyleRight;
private setStyleBottom;
private setStyleLeft;
private setStyleCenter;
private adjustLeftPosition;
private adjustRightPosition;
private adjustTopPosition;
private adjustBottomPosition;
private autofixTopPosition;
private autofixRightPosition;
private autofixBottomPosition;
private autofixLeftPosition;
private subscribeToResizeEvents;
private redrawStep;
private getDimensionsByAspectRatio;
private adjustDimensions;
private updateStepDimensions;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<JoyrideStepComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<JoyrideStepComponent, "joyride-step", never, { "step": "step"; }, {}, never, never>;
}