@rfprodz/client-guided-tour 1.1.6 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +1 -7
- package/fesm2022/rfprodz-client-guided-tour.mjs +52 -73
- package/fesm2022/rfprodz-client-guided-tour.mjs.map +1 -1
- package/package.json +9 -9
- package/types/rfprodz-client-guided-tour.d.ts +136 -0
- package/index.d.ts +0 -4
- package/lib/components/guided-tour/guided-tour.component.d.ts +0 -15
- package/lib/components/guided-tour/guided-tour.directive.d.ts +0 -51
- package/lib/components/guided-tour/guided-tour.interface.d.ts +0 -14
- package/lib/components/guided-tour-example/guided-tour-example.component.d.ts +0 -20
- package/lib/components/index.d.ts +0 -2
- package/lib/guided-tour-example-routing.module.d.ts +0 -7
- package/lib/guided-tour-example.module.d.ts +0 -12
- package/lib/guided-tour.module.d.ts +0 -13
- package/lib/providers/overlay.provider.d.ts +0 -6
- package/lib/services/guided-tour/guided-tour.service.d.ts +0 -22
- package/lib/services/index.d.ts +0 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -104,17 +104,11 @@ export class GuidedComponent implements AfterViewInit {
|
|
|
104
104
|
}
|
|
105
105
|
```
|
|
106
106
|
|
|
107
|
-
####
|
|
107
|
+
#### Examples
|
|
108
108
|
|
|
109
109
|
- [module](https://github.com/rfprod/nx-ng-starter/blob/main/libs/client-guided-tour/src/lib/guided-tour-example.module.ts)
|
|
110
110
|
- [component](https://github.com/rfprod/nx-ng-starter/tree/main/libs/client-guided-tour/src/lib/components/guided-tour-example)
|
|
111
111
|
|
|
112
|
-
## Developer commands reference
|
|
113
|
-
|
|
114
|
-
```bash
|
|
115
|
-
npx nx run tools:help --search client-guided-tour:
|
|
116
|
-
```
|
|
117
|
-
|
|
118
112
|
## References
|
|
119
113
|
|
|
120
114
|
- [Nx](https://nx.dev)
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
|
|
1
|
+
import { OverlayConfig, Overlay, OverlayModule } from '@angular/cdk/overlay';
|
|
3
2
|
import { ComponentPortal } from '@angular/cdk/portal';
|
|
4
|
-
import * as i2$1 from '@angular/common';
|
|
5
|
-
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
6
3
|
import * as i0 from '@angular/core';
|
|
7
|
-
import { InjectionToken, Injectable,
|
|
8
|
-
import * as
|
|
4
|
+
import { InjectionToken, Injectable, inject, ChangeDetectionStrategy, Component, ElementRef, ViewContainerRef, DOCUMENT, Injector, Input, Directive, NgModule, signal, ViewChildren } from '@angular/core';
|
|
5
|
+
import * as i1 from '@angular/material/button';
|
|
9
6
|
import { MatButtonModule } from '@angular/material/button';
|
|
10
|
-
import * as
|
|
7
|
+
import * as i2 from '@angular/material/icon';
|
|
11
8
|
import { MatIconModule } from '@angular/material/icon';
|
|
12
|
-
import * as
|
|
9
|
+
import * as i3 from '@angular/material/card';
|
|
13
10
|
import { MatCardModule } from '@angular/material/card';
|
|
14
|
-
import * as i1$1 from '@angular/
|
|
11
|
+
import * as i1$1 from '@angular/common';
|
|
12
|
+
import { CommonModule } from '@angular/common';
|
|
13
|
+
import * as i1$2 from '@angular/router';
|
|
15
14
|
import { RouterModule } from '@angular/router';
|
|
16
15
|
|
|
17
16
|
/** The overlay reference injection token. */
|
|
@@ -37,7 +36,7 @@ class AppGuidedTourService {
|
|
|
37
36
|
set configuration(steps) {
|
|
38
37
|
this.steps = steps.sort((x, y) => (x.appGuidedTour?.index ?? 0) - (y.appGuidedTour?.index ?? 0));
|
|
39
38
|
}
|
|
40
|
-
/**
|
|
39
|
+
/** Activates next step. */
|
|
41
40
|
next() {
|
|
42
41
|
this.active?.dispose();
|
|
43
42
|
const stepIndex = (this.active?.appGuidedTour?.index ?? -1) + 1;
|
|
@@ -48,7 +47,7 @@ class AppGuidedTourService {
|
|
|
48
47
|
}
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
|
-
/**
|
|
50
|
+
/** Activates previous step. */
|
|
52
51
|
previous() {
|
|
53
52
|
this.active?.dispose();
|
|
54
53
|
const stepIndex = (this.active?.appGuidedTour?.index ?? -1) - 1;
|
|
@@ -59,18 +58,18 @@ class AppGuidedTourService {
|
|
|
59
58
|
}
|
|
60
59
|
}
|
|
61
60
|
}
|
|
62
|
-
/**
|
|
61
|
+
/** Ends tour. */
|
|
63
62
|
end() {
|
|
64
63
|
this.active?.dispose();
|
|
65
64
|
this.active = void 0;
|
|
66
65
|
}
|
|
67
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
68
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
66
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
67
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourService, providedIn: 'root' }); }
|
|
69
68
|
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourService, decorators: [{
|
|
71
70
|
type: Injectable,
|
|
72
71
|
args: [{
|
|
73
|
-
providedIn: '
|
|
72
|
+
providedIn: 'root',
|
|
74
73
|
}]
|
|
75
74
|
}] });
|
|
76
75
|
|
|
@@ -91,41 +90,27 @@ const guidedTourDataProvider = {
|
|
|
91
90
|
|
|
92
91
|
/** Guided tour component. */
|
|
93
92
|
class AppGuidedTourComponent {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
*/
|
|
98
|
-
constructor(tour, data) {
|
|
99
|
-
this.tour = tour;
|
|
100
|
-
this.data = data;
|
|
93
|
+
constructor() {
|
|
94
|
+
this.tour = inject(AppGuidedTourService);
|
|
95
|
+
this.data = inject(GUIDED_TOUR_DATA);
|
|
101
96
|
}
|
|
102
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
103
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
97
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
98
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.2", type: AppGuidedTourComponent, isStandalone: false, selector: "app-guided-tour", ngImport: i0, template: "<mat-card>\n <mat-card-header>\n <mat-card-title>{{ data.title }}</mat-card-title>\n <mat-card-subtitle>{{ data.subtitle }}</mat-card-subtitle>\n </mat-card-header>\n\n <mat-card-content>\n <p>{{ data.description }}</p>\n </mat-card-content>\n\n <mat-card-actions class=\"actions\">\n <button mat-button [disabled]=\"data.first\" (click)=\"tour.previous()\" color=\"primary\">\n <mat-icon>chevron_left</mat-icon>\n Previous\n </button>\n\n <button mat-button (click)=\"tour.end()\" color=\"warn\">\n <mat-icon>close</mat-icon>\n End\n </button>\n\n <button mat-button [disabled]=\"data.last\" (click)=\"tour.next()\" color=\"primary\">\n Next\n <mat-icon>chevron_right</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [":host{display:block}.actions>*:not(:first-child):not(:last-child){margin:0 6px}\n"], dependencies: [{ kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i3.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
104
99
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourComponent, decorators: [{
|
|
106
101
|
type: Component,
|
|
107
102
|
args: [{ selector: 'app-guided-tour', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<mat-card>\n <mat-card-header>\n <mat-card-title>{{ data.title }}</mat-card-title>\n <mat-card-subtitle>{{ data.subtitle }}</mat-card-subtitle>\n </mat-card-header>\n\n <mat-card-content>\n <p>{{ data.description }}</p>\n </mat-card-content>\n\n <mat-card-actions class=\"actions\">\n <button mat-button [disabled]=\"data.first\" (click)=\"tour.previous()\" color=\"primary\">\n <mat-icon>chevron_left</mat-icon>\n Previous\n </button>\n\n <button mat-button (click)=\"tour.end()\" color=\"warn\">\n <mat-icon>close</mat-icon>\n End\n </button>\n\n <button mat-button [disabled]=\"data.last\" (click)=\"tour.next()\" color=\"primary\">\n Next\n <mat-icon>chevron_right</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [":host{display:block}.actions>*:not(:first-child):not(:last-child){margin:0 6px}\n"] }]
|
|
108
|
-
}]
|
|
109
|
-
type: Inject,
|
|
110
|
-
args: [GUIDED_TOUR_DATA]
|
|
111
|
-
}] }] });
|
|
103
|
+
}] });
|
|
112
104
|
|
|
113
105
|
/** Guided tour directive. */
|
|
114
106
|
class AppGuidedTourDirective {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
constructor(el, overlay, overlayConfig, viewContainerRef, doc, tour) {
|
|
123
|
-
this.el = el;
|
|
124
|
-
this.overlay = overlay;
|
|
125
|
-
this.overlayConfig = overlayConfig;
|
|
126
|
-
this.viewContainerRef = viewContainerRef;
|
|
127
|
-
this.doc = doc;
|
|
128
|
-
this.tour = tour;
|
|
107
|
+
constructor() {
|
|
108
|
+
this.el = inject(ElementRef);
|
|
109
|
+
this.overlay = inject(Overlay);
|
|
110
|
+
this.overlayConfig = inject(OverlayConfig);
|
|
111
|
+
this.viewContainerRef = inject(ViewContainerRef);
|
|
112
|
+
this.doc = inject(DOCUMENT);
|
|
113
|
+
this.tour = inject(AppGuidedTourService);
|
|
129
114
|
/** Guided tour step configuration. */
|
|
130
115
|
this.appGuidedTour = void 0;
|
|
131
116
|
this.highlightElement = false;
|
|
@@ -322,19 +307,16 @@ class AppGuidedTourDirective {
|
|
|
322
307
|
ngOnDestroy() {
|
|
323
308
|
this.dispose();
|
|
324
309
|
}
|
|
325
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
326
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
310
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
311
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.2", type: AppGuidedTourDirective, isStandalone: false, selector: "[appGuidedTour]", inputs: { appGuidedTour: "appGuidedTour", highlightElement: "highlightElement", flexibleConnectedPositions: "flexibleConnectedPositions", scrollStrategy: "scrollStrategy" }, ngImport: i0 }); }
|
|
327
312
|
}
|
|
328
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
313
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourDirective, decorators: [{
|
|
329
314
|
type: Directive,
|
|
330
315
|
args: [{
|
|
331
316
|
selector: '[appGuidedTour]',
|
|
332
317
|
standalone: false,
|
|
333
318
|
}]
|
|
334
|
-
}],
|
|
335
|
-
type: Inject,
|
|
336
|
-
args: [DOCUMENT]
|
|
337
|
-
}] }, { type: AppGuidedTourService }], propDecorators: { appGuidedTour: [{
|
|
319
|
+
}], propDecorators: { appGuidedTour: [{
|
|
338
320
|
type: Input
|
|
339
321
|
}], highlightElement: [{
|
|
340
322
|
type: Input
|
|
@@ -345,11 +327,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
345
327
|
}] } });
|
|
346
328
|
|
|
347
329
|
class AppGuidedTourModule {
|
|
348
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
349
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
350
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
330
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
331
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourModule, declarations: [AppGuidedTourComponent, AppGuidedTourDirective], imports: [CommonModule, OverlayModule, MatButtonModule, MatIconModule, MatCardModule], exports: [AppGuidedTourDirective] }); }
|
|
332
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourModule, providers: [overlayProvider], imports: [CommonModule, OverlayModule, MatButtonModule, MatIconModule, MatCardModule] }); }
|
|
351
333
|
}
|
|
352
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourModule, decorators: [{
|
|
353
335
|
type: NgModule,
|
|
354
336
|
args: [{
|
|
355
337
|
imports: [CommonModule, OverlayModule, MatButtonModule, MatIconModule, MatCardModule],
|
|
@@ -361,11 +343,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
361
343
|
|
|
362
344
|
/** An example of a guided tour. */
|
|
363
345
|
class AppGuidedTourExampleComponent {
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
*/
|
|
367
|
-
constructor(tour) {
|
|
368
|
-
this.tour = tour;
|
|
346
|
+
constructor() {
|
|
347
|
+
this.tour = inject(AppGuidedTourService);
|
|
369
348
|
/** Example tour configuration. */
|
|
370
349
|
this.tourConig$ = signal([
|
|
371
350
|
{
|
|
@@ -408,18 +387,18 @@ class AppGuidedTourExampleComponent {
|
|
|
408
387
|
first: false,
|
|
409
388
|
last: true,
|
|
410
389
|
},
|
|
411
|
-
]);
|
|
390
|
+
], ...(ngDevMode ? [{ debugName: "tourConig$" }] : []));
|
|
412
391
|
}
|
|
413
392
|
ngAfterViewInit() {
|
|
414
393
|
this.tour.configuration = [...this.steps];
|
|
415
394
|
}
|
|
416
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
417
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
395
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
396
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.2", type: AppGuidedTourExampleComponent, isStandalone: false, selector: "app-guided-tour-example", providers: [AppGuidedTourService], viewQueries: [{ propertyName: "steps", predicate: AppGuidedTourDirective, descendants: true }], ngImport: i0, template: "@if (!tour.active) {\n <button mat-raised-button color=\"accent\" (click)=\"tour.next()\">Start tour</button>\n} @else {\n <button mat-raised-button color=\"warn\" (click)=\"tour.end()\">End tour</button>\n}\n\n@if (tourConig$(); as config) {\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(4)\" [highlightElement]=\"true\">fifth item to explain</span>\n </div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(1)\" [highlightElement]=\"true\">second item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(2)\" [highlightElement]=\"true\">third item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(0)\">first item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(3)\" [highlightElement]=\"true\">fourth item to explain</span>\n </div>\n}\n", styles: [":host{display:block;padding:16px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: AppGuidedTourDirective, selector: "[appGuidedTour]", inputs: ["appGuidedTour", "highlightElement", "flexibleConnectedPositions", "scrollStrategy"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
418
397
|
}
|
|
419
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
398
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleComponent, decorators: [{
|
|
420
399
|
type: Component,
|
|
421
400
|
args: [{ selector: 'app-guided-tour-example', providers: [AppGuidedTourService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (!tour.active) {\n <button mat-raised-button color=\"accent\" (click)=\"tour.next()\">Start tour</button>\n} @else {\n <button mat-raised-button color=\"warn\" (click)=\"tour.end()\">End tour</button>\n}\n\n@if (tourConig$(); as config) {\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(4)\" [highlightElement]=\"true\">fifth item to explain</span>\n </div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(1)\" [highlightElement]=\"true\">second item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(2)\" [highlightElement]=\"true\">third item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(0)\">first item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(3)\" [highlightElement]=\"true\">fourth item to explain</span>\n </div>\n}\n", styles: [":host{display:block;padding:16px}\n"] }]
|
|
422
|
-
}],
|
|
401
|
+
}], propDecorators: { steps: [{
|
|
423
402
|
type: ViewChildren,
|
|
424
403
|
args: [AppGuidedTourDirective]
|
|
425
404
|
}] } });
|
|
@@ -431,11 +410,11 @@ const routes = [
|
|
|
431
410
|
},
|
|
432
411
|
];
|
|
433
412
|
class AppGuidedTourExampleRoutingModule {
|
|
434
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
435
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
436
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
413
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
414
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleRoutingModule, imports: [i1$2.RouterModule], exports: [RouterModule] }); }
|
|
415
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
|
|
437
416
|
}
|
|
438
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
417
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleRoutingModule, decorators: [{
|
|
439
418
|
type: NgModule,
|
|
440
419
|
args: [{
|
|
441
420
|
imports: [RouterModule.forChild(routes)],
|
|
@@ -444,11 +423,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
444
423
|
}] });
|
|
445
424
|
|
|
446
425
|
class AppGuidedTourExampleModule {
|
|
447
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
448
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
449
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
426
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
427
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleModule, declarations: [AppGuidedTourExampleComponent], imports: [CommonModule, MatButtonModule, MatIconModule, AppGuidedTourModule, AppGuidedTourExampleRoutingModule] }); }
|
|
428
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleModule, imports: [CommonModule, MatButtonModule, MatIconModule, AppGuidedTourModule, AppGuidedTourExampleRoutingModule] }); }
|
|
450
429
|
}
|
|
451
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.2", ngImport: i0, type: AppGuidedTourExampleModule, decorators: [{
|
|
452
431
|
type: NgModule,
|
|
453
432
|
args: [{
|
|
454
433
|
imports: [CommonModule, MatButtonModule, MatIconModule, AppGuidedTourModule, AppGuidedTourExampleRoutingModule],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rfprodz-client-guided-tour.mjs","sources":["../../../../libs/client-guided-tour/src/lib/providers/overlay.provider.ts","../../../../libs/client-guided-tour/src/lib/services/guided-tour/guided-tour.service.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.interface.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.component.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.component.html","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.directive.ts","../../../../libs/client-guided-tour/src/lib/guided-tour.module.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour-example/guided-tour-example.component.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour-example/guided-tour-example.component.html","../../../../libs/client-guided-tour/src/lib/guided-tour-example-routing.module.ts","../../../../libs/client-guided-tour/src/lib/guided-tour-example.module.ts","../../../../libs/client-guided-tour/src/rfprodz-client-guided-tour.ts"],"sourcesContent":["import { OverlayConfig, type OverlayRef } from '@angular/cdk/overlay';\nimport { InjectionToken, type Provider } from '@angular/core';\n\n/** The overlay reference injection token. */\nexport const OVERLAY_REFERENCE = new InjectionToken<OverlayRef>('OverlayReference');\n\n/** Overlay config provider. */\nexport const overlayProvider: Provider = {\n provide: OverlayConfig,\n useFactory: () =>\n new OverlayConfig({\n direction: 'ltr',\n }),\n};\n","import { Injectable } from '@angular/core';\n\nimport { AppGuidedTourDirective } from '../../components/guided-tour/guided-tour.directive';\n\n/**\n * @title Guided tour service.\n * @description This service should be injected once for each tour. Use component `providers` array to declare.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class AppGuidedTourService {\n /** Guider tour steps. */\n private steps: AppGuidedTourDirective[] = [];\n\n /** Guided tour step configuration. */\n public set configuration(steps: AppGuidedTourDirective[]) {\n this.steps = steps.sort((x, y) => (x.appGuidedTour?.index ?? 0) - (y.appGuidedTour?.index ?? 0));\n }\n\n /** Active step. */\n public active?: AppGuidedTourDirective;\n\n /** Activate next step. */\n public next() {\n this.active?.dispose();\n const stepIndex = (this.active?.appGuidedTour?.index ?? -1) + 1;\n if (stepIndex <= this.steps.length - 1) {\n this.active = this.steps.at(stepIndex);\n if (typeof this.active !== 'undefined') {\n this.active.display();\n }\n }\n }\n\n /** Activate previous step. */\n public previous() {\n this.active?.dispose();\n const stepIndex = (this.active?.appGuidedTour?.index ?? -1) - 1;\n if (stepIndex >= 0) {\n this.active = this.steps.at(stepIndex);\n if (typeof this.active !== 'undefined') {\n this.active.display();\n }\n }\n }\n\n /** End tour. */\n public end() {\n this.active?.dispose();\n this.active = void 0;\n }\n}\n","import { InjectionToken, type Provider } from '@angular/core';\n\n/** Guided tour step data. */\nexport interface IGuidedTourData {\n index: number;\n title: string;\n subtitle: string;\n description: string;\n first: boolean;\n last: boolean;\n}\n\n/** Guided tour step data injection token. */\nexport const GUIDED_TOUR_DATA = new InjectionToken<IGuidedTourData>('GUIDED_TOUR_DATA');\n\n/** Guided tour step data provider. */\nexport const guidedTourDataProvider: Provider = {\n provide: GUIDED_TOUR_DATA,\n useValue: {\n index: 0,\n title: '',\n subtitle: '',\n description: '',\n first: true,\n last: true,\n } as IGuidedTourData,\n};\n","import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';\n\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { GUIDED_TOUR_DATA, IGuidedTourData } from './guided-tour.interface';\n\n/** Guided tour component. */\n@Component({\n selector: 'app-guided-tour',\n templateUrl: './guided-tour.component.html',\n styleUrls: ['./guided-tour.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AppGuidedTourComponent {\n /**\n * @param tour Guided tour service.\n * @param data Guided tour step data.\n */\n constructor(\n public readonly tour: AppGuidedTourService,\n @Inject(GUIDED_TOUR_DATA) public readonly data: IGuidedTourData,\n ) {}\n}\n","<mat-card>\n <mat-card-header>\n <mat-card-title>{{ data.title }}</mat-card-title>\n <mat-card-subtitle>{{ data.subtitle }}</mat-card-subtitle>\n </mat-card-header>\n\n <mat-card-content>\n <p>{{ data.description }}</p>\n </mat-card-content>\n\n <mat-card-actions class=\"actions\">\n <button mat-button [disabled]=\"data.first\" (click)=\"tour.previous()\" color=\"primary\">\n <mat-icon>chevron_left</mat-icon>\n Previous\n </button>\n\n <button mat-button (click)=\"tour.end()\" color=\"warn\">\n <mat-icon>close</mat-icon>\n End\n </button>\n\n <button mat-button [disabled]=\"data.last\" (click)=\"tour.next()\" color=\"primary\">\n Next\n <mat-icon>chevron_right</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n","import { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport { AfterContentInit, Directive, ElementRef, Inject, Injector, Input, OnDestroy, ViewContainerRef } from '@angular/core';\n\nimport { OVERLAY_REFERENCE } from '../../providers/overlay.provider';\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { AppGuidedTourComponent } from './guided-tour.component';\nimport { GUIDED_TOUR_DATA, IGuidedTourData } from './guided-tour.interface';\n\n/** Guided tour directive. */\n@Directive({\n selector: '[appGuidedTour]',\n standalone: false,\n})\nexport class AppGuidedTourDirective implements AfterContentInit, OnDestroy {\n /** Guided tour step configuration. */\n @Input() public appGuidedTour: IGuidedTourData | undefined = void 0;\n\n @Input() public highlightElement = false;\n\n /** Connected positions configuration. */\n @Input() public flexibleConnectedPositions: ConnectedPosition[] = [\n // below the origin\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n // above the origin\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n // to the left of the origin\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n // to the right of the origin\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ];\n\n /** Scroll strategy. */\n @Input() public scrollStrategy: 'block' | 'close' | 'noop' | 'reposition' = 'reposition';\n\n /** Native element ref. */\n private nativeElement?: HTMLElement;\n\n /** Original position of the native element. */\n private nativeElementOriginalPosition?: string;\n\n /** Native element frame. */\n private readonly nativeElementFrame: HTMLElement = this.doc.createElement('div');\n\n /** Overlay reference. */\n private overlayRef: OverlayRef | null = null;\n\n /**\n * @param el A wrapper around a native element inside of a View.\n * @param overlay Service to create Overlays.\n * @param overlayConfig Initial configuration used when creating an overlay.\n * @param viewContainerRef Represents a container where one or more views can be attached to a component.\n * @param tour Guided tour service.\n */\n constructor(\n private readonly el: ElementRef,\n private readonly overlay: Overlay,\n private readonly overlayConfig: OverlayConfig,\n private readonly viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) private readonly doc: Document,\n private readonly tour: AppGuidedTourService,\n ) {}\n\n /** Overlay configurator. */\n private configureOverlay(): void {\n const positionHost = this.nativeElement;\n if (typeof positionHost !== 'undefined') {\n this.overlayConfig.hasBackdrop = false;\n this.overlayConfig.panelClass = '';\n this.overlayConfig.minHeight = void 0;\n this.overlayConfig.minWidth = void 0;\n this.overlayConfig.maxHeight = void 0;\n this.overlayConfig.maxWidth = void 0;\n this.overlayConfig.height = void 0;\n this.overlayConfig.width = void 0;\n switch (this.scrollStrategy) {\n case 'block':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.block();\n break;\n case 'close':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.close();\n break;\n case 'noop':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.noop();\n break;\n case 'reposition':\n default:\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.reposition();\n break;\n }\n this.overlayConfig.positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(positionHost)\n .setOrigin(positionHost)\n .withPositions(this.flexibleConnectedPositions);\n }\n }\n\n /** Overlay creator. */\n private createOverlay(): OverlayRef | null {\n if (this.overlayRef === null) {\n this.configureOverlay();\n this.overlayRef = this.overlay.create(this.overlayConfig);\n }\n return this.overlayRef;\n }\n\n /** Disposes an overlay. */\n public dispose(): void {\n if (this.overlayRef !== null) {\n void this.overlayRef?.detach();\n void this.overlayRef?.dispose();\n this.overlayRef = null;\n this.decorateNativeEl(true);\n }\n }\n\n /** Displays an overlay. */\n public display(): void {\n if (typeof this.appGuidedTour !== 'undefined' && !this.overlayRef?.hasAttached) {\n const overlayRef = this.createOverlay();\n const context = Injector.create({\n providers: [\n {\n provide: OVERLAY_REFERENCE,\n useValue: overlayRef,\n },\n {\n provide: GUIDED_TOUR_DATA,\n useValue: { ...this.appGuidedTour },\n },\n {\n provide: AppGuidedTourService,\n useValue: this.tour,\n },\n ],\n });\n const portal = new ComponentPortal(AppGuidedTourComponent, this.viewContainerRef, context);\n const ref = this.overlayRef?.attach(portal);\n ref?.changeDetectorRef.detectChanges();\n this.decorateNativeEl();\n }\n }\n\n /** Adds elevation to the DOM element and scrolls the element into view. */\n private decorateNativeEl(reset?: boolean) {\n if (typeof this.nativeElement !== 'undefined' && this.highlightElement) {\n const rect = this.nativeElement.getBoundingClientRect();\n this.nativeElementOriginalPosition = this.nativeElement.style.position;\n this.nativeElement.style.position = 'relative';\n this.nativeElementFrame.style.position = 'absolute';\n this.nativeElementFrame.style.width = `${rect.width}px`;\n this.nativeElementFrame.style.height = `${rect.height}px`;\n this.nativeElementFrame.style.top = '0px';\n this.nativeElementFrame.style.left = '0px';\n this.nativeElementFrame.style.zIndex = '999';\n this.nativeElementFrame.style.boxShadow = '0 0 0 1000px rgba(0,0,0,0.3)';\n this.nativeElementFrame.style.boxShadow = '0 0 0 1000vmax rgba(0,0,0,0.3)';\n this.nativeElementFrame.style.pointerEvents = 'none';\n if (reset === true) {\n this.nativeElement.removeChild(this.nativeElementFrame);\n this.nativeElement.style.position = this.nativeElementOriginalPosition;\n return;\n }\n this.nativeElement.scrollIntoView({ behavior: 'smooth' });\n this.nativeElement.appendChild(this.nativeElementFrame);\n }\n }\n\n public ngAfterContentInit(): void {\n this.nativeElement = this.el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this.dispose();\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { AppGuidedTourComponent } from './components/guided-tour/guided-tour.component';\nimport { AppGuidedTourDirective } from './components/guided-tour/guided-tour.directive';\nimport { overlayProvider } from './providers/overlay.provider';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, MatButtonModule, MatIconModule, MatCardModule],\n declarations: [AppGuidedTourComponent, AppGuidedTourDirective],\n providers: [overlayProvider],\n exports: [AppGuidedTourDirective],\n})\nexport class AppGuidedTourModule {}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, QueryList, signal, ViewChildren } from '@angular/core';\n\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { AppGuidedTourDirective } from '../guided-tour/guided-tour.directive';\nimport { IGuidedTourData } from '../guided-tour/guided-tour.interface';\n\n/** An example of a guided tour. */\n@Component({\n selector: 'app-guided-tour-example',\n templateUrl: './guided-tour-example.component.html',\n styleUrls: ['./guided-tour-example.component.scss'],\n providers: [AppGuidedTourService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AppGuidedTourExampleComponent implements AfterViewInit {\n /** Tour steps. */\n @ViewChildren(AppGuidedTourDirective) public steps!: QueryList<AppGuidedTourDirective>;\n\n /** Example tour configuration. */\n public tourConig$ = signal<IGuidedTourData[]>([\n {\n index: 0,\n title: 'first',\n subtitle: 'First step',\n description: 'The first step. Highlighting disabled.',\n first: true,\n last: false,\n },\n {\n index: 1,\n title: 'second',\n subtitle: 'Second step',\n description: 'The second step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 2,\n title: 'third',\n subtitle: 'Third step',\n description: 'The third step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 3,\n title: 'fourth',\n subtitle: 'Fourth step',\n description: 'The fourth step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 4,\n title: 'fifth',\n subtitle: 'Fifth step',\n description: 'The fifth and the final step. Highlighting enabled.',\n first: false,\n last: true,\n },\n ]);\n\n /**\n * @param tour Guided tour service.\n */\n constructor(public readonly tour: AppGuidedTourService) {}\n\n public ngAfterViewInit(): void {\n this.tour.configuration = [...this.steps];\n }\n}\n","@if (!tour.active) {\n <button mat-raised-button color=\"accent\" (click)=\"tour.next()\">Start tour</button>\n} @else {\n <button mat-raised-button color=\"warn\" (click)=\"tour.end()\">End tour</button>\n}\n\n@if (tourConig$(); as config) {\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(4)\" [highlightElement]=\"true\">fifth item to explain</span>\n </div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(1)\" [highlightElement]=\"true\">second item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(2)\" [highlightElement]=\"true\">third item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(0)\">first item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(3)\" [highlightElement]=\"true\">fourth item to explain</span>\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { Route, RouterModule } from '@angular/router';\n\nimport { AppGuidedTourExampleComponent } from './components/guided-tour-example/guided-tour-example.component';\n\nconst routes: Route[] = [\n {\n path: '',\n component: AppGuidedTourExampleComponent,\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AppGuidedTourExampleRoutingModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { AppGuidedTourExampleComponent } from './components/guided-tour-example/guided-tour-example.component';\nimport { AppGuidedTourModule } from './guided-tour.module';\nimport { AppGuidedTourExampleRoutingModule } from './guided-tour-example-routing.module';\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatIconModule, AppGuidedTourModule, AppGuidedTourExampleRoutingModule],\n declarations: [AppGuidedTourExampleComponent],\n})\nexport class AppGuidedTourExampleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.AppGuidedTourService","i1.AppGuidedTourService","i2","i3","i4.AppGuidedTourDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rfprodz-client-guided-tour.mjs","sources":["../../../../libs/client-guided-tour/src/lib/providers/overlay.provider.ts","../../../../libs/client-guided-tour/src/lib/services/guided-tour/guided-tour.service.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.interface.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.component.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.component.html","../../../../libs/client-guided-tour/src/lib/components/guided-tour/guided-tour.directive.ts","../../../../libs/client-guided-tour/src/lib/guided-tour.module.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour-example/guided-tour-example.component.ts","../../../../libs/client-guided-tour/src/lib/components/guided-tour-example/guided-tour-example.component.html","../../../../libs/client-guided-tour/src/lib/guided-tour-example-routing.module.ts","../../../../libs/client-guided-tour/src/lib/guided-tour-example.module.ts","../../../../libs/client-guided-tour/src/rfprodz-client-guided-tour.ts"],"sourcesContent":["import { OverlayConfig, type OverlayRef } from '@angular/cdk/overlay';\nimport { InjectionToken, type Provider } from '@angular/core';\n\n/** The overlay reference injection token. */\nexport const OVERLAY_REFERENCE = new InjectionToken<OverlayRef>('OverlayReference');\n\n/** Overlay config provider. */\nexport const overlayProvider: Provider = {\n provide: OverlayConfig,\n useFactory: () =>\n new OverlayConfig({\n direction: 'ltr',\n }),\n};\n","import { Injectable } from '@angular/core';\n\nimport { IGuidedTourDirective } from '../../components/guided-tour/guided-tour.interface';\n\n/**\n * @title Guided tour service.\n * @description This service should be injected once for each tour. Use component `providers` array to declare.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class AppGuidedTourService {\n /** Guider tour steps. */\n private steps: IGuidedTourDirective[] = [];\n\n /** Guided tour step configuration. */\n public set configuration(steps: IGuidedTourDirective[]) {\n this.steps = steps.sort((x, y) => (x.appGuidedTour?.index ?? 0) - (y.appGuidedTour?.index ?? 0));\n }\n\n /** Active step. */\n public active?: IGuidedTourDirective;\n\n /** Activates next step. */\n public next() {\n this.active?.dispose();\n const stepIndex = (this.active?.appGuidedTour?.index ?? -1) + 1;\n if (stepIndex <= this.steps.length - 1) {\n this.active = this.steps.at(stepIndex);\n if (typeof this.active !== 'undefined') {\n this.active.display();\n }\n }\n }\n\n /** Activates previous step. */\n public previous() {\n this.active?.dispose();\n const stepIndex = (this.active?.appGuidedTour?.index ?? -1) - 1;\n if (stepIndex >= 0) {\n this.active = this.steps.at(stepIndex);\n if (typeof this.active !== 'undefined') {\n this.active.display();\n }\n }\n }\n\n /** Ends tour. */\n public end() {\n this.active?.dispose();\n this.active = void 0;\n }\n}\n","import type { ConnectedPosition } from '@angular/cdk/overlay';\nimport { InjectionToken, type Provider } from '@angular/core';\n\n/** Guided tour step data. */\nexport interface IGuidedTourData {\n index: number;\n title: string;\n subtitle: string;\n description: string;\n first: boolean;\n last: boolean;\n}\n\n/** Guided tour step data injection token. */\nexport const GUIDED_TOUR_DATA = new InjectionToken<IGuidedTourData>('GUIDED_TOUR_DATA');\n\n/** Guided tour step data provider. */\nexport const guidedTourDataProvider: Provider = {\n provide: GUIDED_TOUR_DATA,\n useValue: {\n index: 0,\n title: '',\n subtitle: '',\n description: '',\n first: true,\n last: true,\n } as IGuidedTourData,\n};\n\n/**\n * Guided tour directive interface.\n */\nexport interface IGuidedTourDirective {\n appGuidedTour?: IGuidedTourData;\n highlightElement: boolean;\n flexibleConnectedPositions: ConnectedPosition[];\n scrollStrategy: 'block' | 'close' | 'noop' | 'reposition';\n dispose(): void;\n display(): void;\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { GUIDED_TOUR_DATA } from './guided-tour.interface';\n\n/** Guided tour component. */\n@Component({\n selector: 'app-guided-tour',\n templateUrl: './guided-tour.component.html',\n styleUrls: ['./guided-tour.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AppGuidedTourComponent {\n public readonly tour = inject(AppGuidedTourService);\n\n public readonly data = inject(GUIDED_TOUR_DATA);\n}\n","<mat-card>\n <mat-card-header>\n <mat-card-title>{{ data.title }}</mat-card-title>\n <mat-card-subtitle>{{ data.subtitle }}</mat-card-subtitle>\n </mat-card-header>\n\n <mat-card-content>\n <p>{{ data.description }}</p>\n </mat-card-content>\n\n <mat-card-actions class=\"actions\">\n <button mat-button [disabled]=\"data.first\" (click)=\"tour.previous()\" color=\"primary\">\n <mat-icon>chevron_left</mat-icon>\n Previous\n </button>\n\n <button mat-button (click)=\"tour.end()\" color=\"warn\">\n <mat-icon>close</mat-icon>\n End\n </button>\n\n <button mat-button [disabled]=\"data.last\" (click)=\"tour.next()\" color=\"primary\">\n Next\n <mat-icon>chevron_right</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n","import { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterContentInit, Directive, DOCUMENT, ElementRef, inject, Injector, Input, OnDestroy, ViewContainerRef } from '@angular/core';\n\nimport { OVERLAY_REFERENCE } from '../../providers/overlay.provider';\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { AppGuidedTourComponent } from './guided-tour.component';\nimport { GUIDED_TOUR_DATA, IGuidedTourData, IGuidedTourDirective } from './guided-tour.interface';\n\n/** Guided tour directive. */\n@Directive({\n selector: '[appGuidedTour]',\n standalone: false,\n})\nexport class AppGuidedTourDirective implements IGuidedTourDirective, AfterContentInit, OnDestroy {\n private readonly el = inject(ElementRef);\n\n private readonly overlay = inject(Overlay);\n\n private readonly overlayConfig = inject(OverlayConfig);\n\n private readonly viewContainerRef = inject(ViewContainerRef);\n\n private readonly doc = inject(DOCUMENT);\n\n private readonly tour = inject(AppGuidedTourService);\n\n /** Guided tour step configuration. */\n @Input() public appGuidedTour: IGuidedTourData | undefined = void 0;\n\n @Input() public highlightElement = false;\n\n /** Connected positions configuration. */\n @Input() public flexibleConnectedPositions: ConnectedPosition[] = [\n // below the origin\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n // above the origin\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n // to the left of the origin\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n // to the right of the origin\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ];\n\n /** Scroll strategy. */\n @Input() public scrollStrategy: 'block' | 'close' | 'noop' | 'reposition' = 'reposition';\n\n /** Native element ref. */\n private nativeElement?: HTMLElement;\n\n /** Original position of the native element. */\n private nativeElementOriginalPosition?: string;\n\n /** Native element frame. */\n private readonly nativeElementFrame: HTMLElement = this.doc.createElement('div');\n\n /** Overlay reference. */\n private overlayRef: OverlayRef | null = null;\n\n /** Overlay configurator. */\n private configureOverlay(): void {\n const positionHost = this.nativeElement;\n if (typeof positionHost !== 'undefined') {\n this.overlayConfig.hasBackdrop = false;\n this.overlayConfig.panelClass = '';\n this.overlayConfig.minHeight = void 0;\n this.overlayConfig.minWidth = void 0;\n this.overlayConfig.maxHeight = void 0;\n this.overlayConfig.maxWidth = void 0;\n this.overlayConfig.height = void 0;\n this.overlayConfig.width = void 0;\n switch (this.scrollStrategy) {\n case 'block':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.block();\n break;\n case 'close':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.close();\n break;\n case 'noop':\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.noop();\n break;\n case 'reposition':\n default:\n this.overlayConfig.scrollStrategy = this.overlay.scrollStrategies.reposition();\n break;\n }\n this.overlayConfig.positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(positionHost)\n .setOrigin(positionHost)\n .withPositions(this.flexibleConnectedPositions);\n }\n }\n\n /** Overlay creator. */\n private createOverlay(): OverlayRef | null {\n if (this.overlayRef === null) {\n this.configureOverlay();\n this.overlayRef = this.overlay.create(this.overlayConfig);\n }\n return this.overlayRef;\n }\n\n /** Disposes an overlay. */\n public dispose(): void {\n if (this.overlayRef !== null) {\n void this.overlayRef?.detach();\n void this.overlayRef?.dispose();\n this.overlayRef = null;\n this.decorateNativeEl(true);\n }\n }\n\n /** Displays an overlay. */\n public display(): void {\n if (typeof this.appGuidedTour !== 'undefined' && !this.overlayRef?.hasAttached) {\n const overlayRef = this.createOverlay();\n const context = Injector.create({\n providers: [\n {\n provide: OVERLAY_REFERENCE,\n useValue: overlayRef,\n },\n {\n provide: GUIDED_TOUR_DATA,\n useValue: { ...this.appGuidedTour },\n },\n {\n provide: AppGuidedTourService,\n useValue: this.tour,\n },\n ],\n });\n const portal = new ComponentPortal(AppGuidedTourComponent, this.viewContainerRef, context);\n const ref = this.overlayRef?.attach(portal);\n ref?.changeDetectorRef.detectChanges();\n this.decorateNativeEl();\n }\n }\n\n /** Adds elevation to the DOM element and scrolls the element into view. */\n private decorateNativeEl(reset?: boolean) {\n if (typeof this.nativeElement !== 'undefined' && this.highlightElement) {\n const rect = this.nativeElement.getBoundingClientRect();\n this.nativeElementOriginalPosition = this.nativeElement.style.position;\n this.nativeElement.style.position = 'relative';\n this.nativeElementFrame.style.position = 'absolute';\n this.nativeElementFrame.style.width = `${rect.width}px`;\n this.nativeElementFrame.style.height = `${rect.height}px`;\n this.nativeElementFrame.style.top = '0px';\n this.nativeElementFrame.style.left = '0px';\n this.nativeElementFrame.style.zIndex = '999';\n this.nativeElementFrame.style.boxShadow = '0 0 0 1000px rgba(0,0,0,0.3)';\n this.nativeElementFrame.style.boxShadow = '0 0 0 1000vmax rgba(0,0,0,0.3)';\n this.nativeElementFrame.style.pointerEvents = 'none';\n if (reset === true) {\n this.nativeElement.removeChild(this.nativeElementFrame);\n this.nativeElement.style.position = this.nativeElementOriginalPosition;\n return;\n }\n this.nativeElement.scrollIntoView({ behavior: 'smooth' });\n this.nativeElement.appendChild(this.nativeElementFrame);\n }\n }\n\n public ngAfterContentInit(): void {\n this.nativeElement = this.el.nativeElement;\n }\n\n public ngOnDestroy(): void {\n this.dispose();\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { AppGuidedTourComponent } from './components/guided-tour/guided-tour.component';\nimport { AppGuidedTourDirective } from './components/guided-tour/guided-tour.directive';\nimport { overlayProvider } from './providers/overlay.provider';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, MatButtonModule, MatIconModule, MatCardModule],\n declarations: [AppGuidedTourComponent, AppGuidedTourDirective],\n providers: [overlayProvider],\n exports: [AppGuidedTourDirective],\n})\nexport class AppGuidedTourModule {}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, inject, QueryList, signal, ViewChildren } from '@angular/core';\n\nimport { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';\nimport { AppGuidedTourDirective } from '../guided-tour/guided-tour.directive';\nimport { IGuidedTourData } from '../guided-tour/guided-tour.interface';\n\n/** An example of a guided tour. */\n@Component({\n selector: 'app-guided-tour-example',\n templateUrl: './guided-tour-example.component.html',\n styleUrls: ['./guided-tour-example.component.scss'],\n providers: [AppGuidedTourService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AppGuidedTourExampleComponent implements AfterViewInit {\n public readonly tour = inject(AppGuidedTourService);\n\n /** Tour steps. */\n @ViewChildren(AppGuidedTourDirective) public steps!: QueryList<AppGuidedTourDirective>;\n\n /** Example tour configuration. */\n public tourConig$ = signal<IGuidedTourData[]>([\n {\n index: 0,\n title: 'first',\n subtitle: 'First step',\n description: 'The first step. Highlighting disabled.',\n first: true,\n last: false,\n },\n {\n index: 1,\n title: 'second',\n subtitle: 'Second step',\n description: 'The second step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 2,\n title: 'third',\n subtitle: 'Third step',\n description: 'The third step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 3,\n title: 'fourth',\n subtitle: 'Fourth step',\n description: 'The fourth step. Highlighting enabled.',\n first: false,\n last: false,\n },\n {\n index: 4,\n title: 'fifth',\n subtitle: 'Fifth step',\n description: 'The fifth and the final step. Highlighting enabled.',\n first: false,\n last: true,\n },\n ]);\n\n public ngAfterViewInit(): void {\n this.tour.configuration = [...this.steps];\n }\n}\n","@if (!tour.active) {\n <button mat-raised-button color=\"accent\" (click)=\"tour.next()\">Start tour</button>\n} @else {\n <button mat-raised-button color=\"warn\" (click)=\"tour.end()\">End tour</button>\n}\n\n@if (tourConig$(); as config) {\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(4)\" [highlightElement]=\"true\">fifth item to explain</span>\n </div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(1)\" [highlightElement]=\"true\">second item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(2)\" [highlightElement]=\"true\">third item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [appGuidedTour]=\"config.at(0)\">first item to explain</div>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <p>... Some content ...</p>\n <div [ngStyle]=\"{ width: '100%' }\">\n <span [ngStyle]=\"{ display: 'inline-block', width: '80%' }\">... Some content ...</span>\n <span [appGuidedTour]=\"config.at(3)\" [highlightElement]=\"true\">fourth item to explain</span>\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { Route, RouterModule } from '@angular/router';\n\nimport { AppGuidedTourExampleComponent } from './components/guided-tour-example/guided-tour-example.component';\n\nconst routes: Route[] = [\n {\n path: '',\n component: AppGuidedTourExampleComponent,\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AppGuidedTourExampleRoutingModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { AppGuidedTourExampleComponent } from './components/guided-tour-example/guided-tour-example.component';\nimport { AppGuidedTourModule } from './guided-tour.module';\nimport { AppGuidedTourExampleRoutingModule } from './guided-tour-example-routing.module';\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatIconModule, AppGuidedTourModule, AppGuidedTourExampleRoutingModule],\n declarations: [AppGuidedTourExampleComponent],\n})\nexport class AppGuidedTourExampleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3.AppGuidedTourDirective"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rfprodz/client-guided-tour",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.6",
|
|
4
4
|
"description": "Guided tour feature for Angular clients.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular-module",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
},
|
|
15
15
|
"repository": {
|
|
16
16
|
"type": "git",
|
|
17
|
-
"url": "https://github.com/rfprod/nx-ng-starter"
|
|
17
|
+
"url": "git+https://github.com/rfprod/nx-ng-starter.git"
|
|
18
18
|
},
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"author": "rfprod <zoidenmacht@zoho.com>",
|
|
@@ -22,20 +22,20 @@
|
|
|
22
22
|
"tslib": "2.8.1"
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
|
-
"@angular/cdk": "
|
|
26
|
-
"@angular/common": "
|
|
27
|
-
"@angular/core": "
|
|
28
|
-
"@angular/material": "
|
|
29
|
-
"@angular/router": "
|
|
25
|
+
"@angular/cdk": "21.1.2",
|
|
26
|
+
"@angular/common": "21.1.2",
|
|
27
|
+
"@angular/core": "21.1.2",
|
|
28
|
+
"@angular/material": "21.1.2",
|
|
29
|
+
"@angular/router": "21.1.2"
|
|
30
30
|
},
|
|
31
31
|
"module": "fesm2022/rfprodz-client-guided-tour.mjs",
|
|
32
|
-
"typings": "
|
|
32
|
+
"typings": "types/rfprodz-client-guided-tour.d.ts",
|
|
33
33
|
"exports": {
|
|
34
34
|
"./package.json": {
|
|
35
35
|
"default": "./package.json"
|
|
36
36
|
},
|
|
37
37
|
".": {
|
|
38
|
-
"types": "./
|
|
38
|
+
"types": "./types/rfprodz-client-guided-tour.d.ts",
|
|
39
39
|
"default": "./fesm2022/rfprodz-client-guided-tour.mjs"
|
|
40
40
|
}
|
|
41
41
|
},
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import * as i4 from '@angular/cdk/overlay';
|
|
2
|
+
import { ConnectedPosition } from '@angular/cdk/overlay';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { InjectionToken, Provider, AfterContentInit, OnDestroy, AfterViewInit, QueryList } from '@angular/core';
|
|
5
|
+
import * as _rfprodz_client_guided_tour from '@rfprodz/client-guided-tour';
|
|
6
|
+
import * as i3 from '@angular/common';
|
|
7
|
+
import * as i5 from '@angular/material/button';
|
|
8
|
+
import * as i6 from '@angular/material/icon';
|
|
9
|
+
import * as i7 from '@angular/material/card';
|
|
10
|
+
import * as i1 from '@angular/router';
|
|
11
|
+
|
|
12
|
+
/** Guided tour step data. */
|
|
13
|
+
interface IGuidedTourData {
|
|
14
|
+
index: number;
|
|
15
|
+
title: string;
|
|
16
|
+
subtitle: string;
|
|
17
|
+
description: string;
|
|
18
|
+
first: boolean;
|
|
19
|
+
last: boolean;
|
|
20
|
+
}
|
|
21
|
+
/** Guided tour step data injection token. */
|
|
22
|
+
declare const GUIDED_TOUR_DATA: InjectionToken<IGuidedTourData>;
|
|
23
|
+
/** Guided tour step data provider. */
|
|
24
|
+
declare const guidedTourDataProvider: Provider;
|
|
25
|
+
/**
|
|
26
|
+
* Guided tour directive interface.
|
|
27
|
+
*/
|
|
28
|
+
interface IGuidedTourDirective {
|
|
29
|
+
appGuidedTour?: IGuidedTourData;
|
|
30
|
+
highlightElement: boolean;
|
|
31
|
+
flexibleConnectedPositions: ConnectedPosition[];
|
|
32
|
+
scrollStrategy: 'block' | 'close' | 'noop' | 'reposition';
|
|
33
|
+
dispose(): void;
|
|
34
|
+
display(): void;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** Guided tour directive. */
|
|
38
|
+
declare class AppGuidedTourDirective implements IGuidedTourDirective, AfterContentInit, OnDestroy {
|
|
39
|
+
private readonly el;
|
|
40
|
+
private readonly overlay;
|
|
41
|
+
private readonly overlayConfig;
|
|
42
|
+
private readonly viewContainerRef;
|
|
43
|
+
private readonly doc;
|
|
44
|
+
private readonly tour;
|
|
45
|
+
/** Guided tour step configuration. */
|
|
46
|
+
appGuidedTour: IGuidedTourData | undefined;
|
|
47
|
+
highlightElement: boolean;
|
|
48
|
+
/** Connected positions configuration. */
|
|
49
|
+
flexibleConnectedPositions: ConnectedPosition[];
|
|
50
|
+
/** Scroll strategy. */
|
|
51
|
+
scrollStrategy: 'block' | 'close' | 'noop' | 'reposition';
|
|
52
|
+
/** Native element ref. */
|
|
53
|
+
private nativeElement?;
|
|
54
|
+
/** Original position of the native element. */
|
|
55
|
+
private nativeElementOriginalPosition?;
|
|
56
|
+
/** Native element frame. */
|
|
57
|
+
private readonly nativeElementFrame;
|
|
58
|
+
/** Overlay reference. */
|
|
59
|
+
private overlayRef;
|
|
60
|
+
/** Overlay configurator. */
|
|
61
|
+
private configureOverlay;
|
|
62
|
+
/** Overlay creator. */
|
|
63
|
+
private createOverlay;
|
|
64
|
+
/** Disposes an overlay. */
|
|
65
|
+
dispose(): void;
|
|
66
|
+
/** Displays an overlay. */
|
|
67
|
+
display(): void;
|
|
68
|
+
/** Adds elevation to the DOM element and scrolls the element into view. */
|
|
69
|
+
private decorateNativeEl;
|
|
70
|
+
ngAfterContentInit(): void;
|
|
71
|
+
ngOnDestroy(): void;
|
|
72
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourDirective, never>;
|
|
73
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<AppGuidedTourDirective, "[appGuidedTour]", never, { "appGuidedTour": { "alias": "appGuidedTour"; "required": false; }; "highlightElement": { "alias": "highlightElement"; "required": false; }; "flexibleConnectedPositions": { "alias": "flexibleConnectedPositions"; "required": false; }; "scrollStrategy": { "alias": "scrollStrategy"; "required": false; }; }, {}, never, never, false, never>;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* @title Guided tour service.
|
|
78
|
+
* @description This service should be injected once for each tour. Use component `providers` array to declare.
|
|
79
|
+
*/
|
|
80
|
+
declare class AppGuidedTourService {
|
|
81
|
+
/** Guider tour steps. */
|
|
82
|
+
private steps;
|
|
83
|
+
/** Guided tour step configuration. */
|
|
84
|
+
set configuration(steps: IGuidedTourDirective[]);
|
|
85
|
+
/** Active step. */
|
|
86
|
+
active?: IGuidedTourDirective;
|
|
87
|
+
/** Activates next step. */
|
|
88
|
+
next(): void;
|
|
89
|
+
/** Activates previous step. */
|
|
90
|
+
previous(): void;
|
|
91
|
+
/** Ends tour. */
|
|
92
|
+
end(): void;
|
|
93
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourService, never>;
|
|
94
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AppGuidedTourService>;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/** Guided tour component. */
|
|
98
|
+
declare class AppGuidedTourComponent {
|
|
99
|
+
readonly tour: AppGuidedTourService;
|
|
100
|
+
readonly data: _rfprodz_client_guided_tour.IGuidedTourData;
|
|
101
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourComponent, never>;
|
|
102
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppGuidedTourComponent, "app-guided-tour", never, {}, {}, never, never, false, never>;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
declare class AppGuidedTourModule {
|
|
106
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourModule, never>;
|
|
107
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourModule, [typeof AppGuidedTourComponent, typeof AppGuidedTourDirective], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.MatButtonModule, typeof i6.MatIconModule, typeof i7.MatCardModule], [typeof AppGuidedTourDirective]>;
|
|
108
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourModule>;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/** An example of a guided tour. */
|
|
112
|
+
declare class AppGuidedTourExampleComponent implements AfterViewInit {
|
|
113
|
+
readonly tour: AppGuidedTourService;
|
|
114
|
+
/** Tour steps. */
|
|
115
|
+
steps: QueryList<AppGuidedTourDirective>;
|
|
116
|
+
/** Example tour configuration. */
|
|
117
|
+
tourConig$: i0.WritableSignal<IGuidedTourData[]>;
|
|
118
|
+
ngAfterViewInit(): void;
|
|
119
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleComponent, never>;
|
|
120
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppGuidedTourExampleComponent, "app-guided-tour-example", never, {}, {}, never, never, false, never>;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
declare class AppGuidedTourExampleRoutingModule {
|
|
124
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleRoutingModule, never>;
|
|
125
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourExampleRoutingModule, never, [typeof i1.RouterModule], [typeof i1.RouterModule]>;
|
|
126
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourExampleRoutingModule>;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
declare class AppGuidedTourExampleModule {
|
|
130
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleModule, never>;
|
|
131
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourExampleModule, [typeof AppGuidedTourExampleComponent], [typeof i3.CommonModule, typeof i5.MatButtonModule, typeof i6.MatIconModule, typeof AppGuidedTourModule, typeof AppGuidedTourExampleRoutingModule], never>;
|
|
132
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourExampleModule>;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export { AppGuidedTourDirective, AppGuidedTourExampleModule, AppGuidedTourModule, AppGuidedTourService, GUIDED_TOUR_DATA, guidedTourDataProvider };
|
|
136
|
+
export type { IGuidedTourData, IGuidedTourDirective };
|
package/index.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';
|
|
2
|
-
import { IGuidedTourData } from './guided-tour.interface';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/** Guided tour component. */
|
|
5
|
-
export declare class AppGuidedTourComponent {
|
|
6
|
-
readonly tour: AppGuidedTourService;
|
|
7
|
-
readonly data: IGuidedTourData;
|
|
8
|
-
/**
|
|
9
|
-
* @param tour Guided tour service.
|
|
10
|
-
* @param data Guided tour step data.
|
|
11
|
-
*/
|
|
12
|
-
constructor(tour: AppGuidedTourService, data: IGuidedTourData);
|
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourComponent, never>;
|
|
14
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppGuidedTourComponent, "app-guided-tour", never, {}, {}, never, never, false, never>;
|
|
15
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { ConnectedPosition, Overlay, OverlayConfig } from '@angular/cdk/overlay';
|
|
2
|
-
import { AfterContentInit, ElementRef, OnDestroy, ViewContainerRef } from '@angular/core';
|
|
3
|
-
import { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';
|
|
4
|
-
import { IGuidedTourData } from './guided-tour.interface';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
/** Guided tour directive. */
|
|
7
|
-
export declare class AppGuidedTourDirective implements AfterContentInit, OnDestroy {
|
|
8
|
-
private readonly el;
|
|
9
|
-
private readonly overlay;
|
|
10
|
-
private readonly overlayConfig;
|
|
11
|
-
private readonly viewContainerRef;
|
|
12
|
-
private readonly doc;
|
|
13
|
-
private readonly tour;
|
|
14
|
-
/** Guided tour step configuration. */
|
|
15
|
-
appGuidedTour: IGuidedTourData | undefined;
|
|
16
|
-
highlightElement: boolean;
|
|
17
|
-
/** Connected positions configuration. */
|
|
18
|
-
flexibleConnectedPositions: ConnectedPosition[];
|
|
19
|
-
/** Scroll strategy. */
|
|
20
|
-
scrollStrategy: 'block' | 'close' | 'noop' | 'reposition';
|
|
21
|
-
/** Native element ref. */
|
|
22
|
-
private nativeElement?;
|
|
23
|
-
/** Original position of the native element. */
|
|
24
|
-
private nativeElementOriginalPosition?;
|
|
25
|
-
/** Native element frame. */
|
|
26
|
-
private readonly nativeElementFrame;
|
|
27
|
-
/** Overlay reference. */
|
|
28
|
-
private overlayRef;
|
|
29
|
-
/**
|
|
30
|
-
* @param el A wrapper around a native element inside of a View.
|
|
31
|
-
* @param overlay Service to create Overlays.
|
|
32
|
-
* @param overlayConfig Initial configuration used when creating an overlay.
|
|
33
|
-
* @param viewContainerRef Represents a container where one or more views can be attached to a component.
|
|
34
|
-
* @param tour Guided tour service.
|
|
35
|
-
*/
|
|
36
|
-
constructor(el: ElementRef, overlay: Overlay, overlayConfig: OverlayConfig, viewContainerRef: ViewContainerRef, doc: Document, tour: AppGuidedTourService);
|
|
37
|
-
/** Overlay configurator. */
|
|
38
|
-
private configureOverlay;
|
|
39
|
-
/** Overlay creator. */
|
|
40
|
-
private createOverlay;
|
|
41
|
-
/** Disposes an overlay. */
|
|
42
|
-
dispose(): void;
|
|
43
|
-
/** Displays an overlay. */
|
|
44
|
-
display(): void;
|
|
45
|
-
/** Adds elevation to the DOM element and scrolls the element into view. */
|
|
46
|
-
private decorateNativeEl;
|
|
47
|
-
ngAfterContentInit(): void;
|
|
48
|
-
ngOnDestroy(): void;
|
|
49
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourDirective, never>;
|
|
50
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<AppGuidedTourDirective, "[appGuidedTour]", never, { "appGuidedTour": { "alias": "appGuidedTour"; "required": false; }; "highlightElement": { "alias": "highlightElement"; "required": false; }; "flexibleConnectedPositions": { "alias": "flexibleConnectedPositions"; "required": false; }; "scrollStrategy": { "alias": "scrollStrategy"; "required": false; }; }, {}, never, never, false, never>;
|
|
51
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { InjectionToken, type Provider } from '@angular/core';
|
|
2
|
-
/** Guided tour step data. */
|
|
3
|
-
export interface IGuidedTourData {
|
|
4
|
-
index: number;
|
|
5
|
-
title: string;
|
|
6
|
-
subtitle: string;
|
|
7
|
-
description: string;
|
|
8
|
-
first: boolean;
|
|
9
|
-
last: boolean;
|
|
10
|
-
}
|
|
11
|
-
/** Guided tour step data injection token. */
|
|
12
|
-
export declare const GUIDED_TOUR_DATA: InjectionToken<IGuidedTourData>;
|
|
13
|
-
/** Guided tour step data provider. */
|
|
14
|
-
export declare const guidedTourDataProvider: Provider;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AfterViewInit, QueryList } from '@angular/core';
|
|
2
|
-
import { AppGuidedTourService } from '../../services/guided-tour/guided-tour.service';
|
|
3
|
-
import { AppGuidedTourDirective } from '../guided-tour/guided-tour.directive';
|
|
4
|
-
import { IGuidedTourData } from '../guided-tour/guided-tour.interface';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
/** An example of a guided tour. */
|
|
7
|
-
export declare class AppGuidedTourExampleComponent implements AfterViewInit {
|
|
8
|
-
readonly tour: AppGuidedTourService;
|
|
9
|
-
/** Tour steps. */
|
|
10
|
-
steps: QueryList<AppGuidedTourDirective>;
|
|
11
|
-
/** Example tour configuration. */
|
|
12
|
-
tourConig$: import("@angular/core").WritableSignal<IGuidedTourData[]>;
|
|
13
|
-
/**
|
|
14
|
-
* @param tour Guided tour service.
|
|
15
|
-
*/
|
|
16
|
-
constructor(tour: AppGuidedTourService);
|
|
17
|
-
ngAfterViewInit(): void;
|
|
18
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleComponent, never>;
|
|
19
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppGuidedTourExampleComponent, "app-guided-tour-example", never, {}, {}, never, never, false, never>;
|
|
20
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "@angular/router";
|
|
3
|
-
export declare class AppGuidedTourExampleRoutingModule {
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleRoutingModule, never>;
|
|
5
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourExampleRoutingModule, never, [typeof i1.RouterModule], [typeof i1.RouterModule]>;
|
|
6
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourExampleRoutingModule>;
|
|
7
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./components/guided-tour-example/guided-tour-example.component";
|
|
3
|
-
import * as i2 from "@angular/common";
|
|
4
|
-
import * as i3 from "@angular/material/button";
|
|
5
|
-
import * as i4 from "@angular/material/icon";
|
|
6
|
-
import * as i5 from "./guided-tour.module";
|
|
7
|
-
import * as i6 from "./guided-tour-example-routing.module";
|
|
8
|
-
export declare class AppGuidedTourExampleModule {
|
|
9
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourExampleModule, never>;
|
|
10
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourExampleModule, [typeof i1.AppGuidedTourExampleComponent], [typeof i2.CommonModule, typeof i3.MatButtonModule, typeof i4.MatIconModule, typeof i5.AppGuidedTourModule, typeof i6.AppGuidedTourExampleRoutingModule], never>;
|
|
11
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourExampleModule>;
|
|
12
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./components/guided-tour/guided-tour.component";
|
|
3
|
-
import * as i2 from "./components/guided-tour/guided-tour.directive";
|
|
4
|
-
import * as i3 from "@angular/common";
|
|
5
|
-
import * as i4 from "@angular/cdk/overlay";
|
|
6
|
-
import * as i5 from "@angular/material/button";
|
|
7
|
-
import * as i6 from "@angular/material/icon";
|
|
8
|
-
import * as i7 from "@angular/material/card";
|
|
9
|
-
export declare class AppGuidedTourModule {
|
|
10
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourModule, never>;
|
|
11
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AppGuidedTourModule, [typeof i1.AppGuidedTourComponent, typeof i2.AppGuidedTourDirective], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.MatButtonModule, typeof i6.MatIconModule, typeof i7.MatCardModule], [typeof i2.AppGuidedTourDirective]>;
|
|
12
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AppGuidedTourModule>;
|
|
13
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { type OverlayRef } from '@angular/cdk/overlay';
|
|
2
|
-
import { InjectionToken, type Provider } from '@angular/core';
|
|
3
|
-
/** The overlay reference injection token. */
|
|
4
|
-
export declare const OVERLAY_REFERENCE: InjectionToken<OverlayRef>;
|
|
5
|
-
/** Overlay config provider. */
|
|
6
|
-
export declare const overlayProvider: Provider;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { AppGuidedTourDirective } from '../../components/guided-tour/guided-tour.directive';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* @title Guided tour service.
|
|
5
|
-
* @description This service should be injected once for each tour. Use component `providers` array to declare.
|
|
6
|
-
*/
|
|
7
|
-
export declare class AppGuidedTourService {
|
|
8
|
-
/** Guider tour steps. */
|
|
9
|
-
private steps;
|
|
10
|
-
/** Guided tour step configuration. */
|
|
11
|
-
set configuration(steps: AppGuidedTourDirective[]);
|
|
12
|
-
/** Active step. */
|
|
13
|
-
active?: AppGuidedTourDirective;
|
|
14
|
-
/** Activate next step. */
|
|
15
|
-
next(): void;
|
|
16
|
-
/** Activate previous step. */
|
|
17
|
-
previous(): void;
|
|
18
|
-
/** End tour. */
|
|
19
|
-
end(): void;
|
|
20
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppGuidedTourService, never>;
|
|
21
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AppGuidedTourService>;
|
|
22
|
-
}
|
package/lib/services/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './guided-tour/guided-tour.service';
|