igot-cb-tour-guide 1.0.3-ang-9-12

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.
@@ -0,0 +1,796 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('rxjs/operators'), require('@angular/core'), require('rxjs'), require('lodash'), require('@angular/common'), require('@angular/material/icon')) :
3
+ typeof define === 'function' && define.amd ? define('igot-cb-tour-guide', ['exports', 'rxjs/operators', '@angular/core', 'rxjs', 'lodash', '@angular/common', '@angular/material/icon'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["igot-cb-tour-guide"] = {}, global.rxjs.operators, global.ng.core, global.rxjs, global.lodash, global.ng.common, global.ng.material.icon));
5
+ })(this, (function (exports, operators, i0, rxjs, lodash, i4, i3) { 'use strict';
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
26
+ var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
27
+ var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
28
+
29
+ var Orientation = /** @class */ (function () {
30
+ function Orientation() {
31
+ }
32
+ return Orientation;
33
+ }());
34
+ Orientation.Bottom = 'bottom';
35
+ Orientation.BottomLeft = 'bottom-left';
36
+ Orientation.BottomRight = 'bottom-right';
37
+ Orientation.Center = 'center';
38
+ Orientation.Left = 'left';
39
+ Orientation.Right = 'right';
40
+ Orientation.Top = 'top';
41
+ Orientation.TopLeft = 'top-left';
42
+ Orientation.TopRight = 'top-right';
43
+ exports.ProgressIndicatorLocation = void 0;
44
+ (function (ProgressIndicatorLocation) {
45
+ ProgressIndicatorLocation["InsideNextButton"] = "inside-next-button";
46
+ ProgressIndicatorLocation["TopOfTourBlock"] = "top-of-tour-block";
47
+ ProgressIndicatorLocation["None"] = "none";
48
+ ProgressIndicatorLocation["Dots"] = "dots";
49
+ })(exports.ProgressIndicatorLocation || (exports.ProgressIndicatorLocation = {}));
50
+
51
+ function getWindow() {
52
+ return window;
53
+ }
54
+ function getMockWindow() {
55
+ return {
56
+ innerWidth: 0,
57
+ innerHeight: 0,
58
+ scrollY: 0,
59
+ scrollX: 0,
60
+ pageYOffset: 0,
61
+ pageXOffset: 0,
62
+ scroll: function () { },
63
+ scrollTo: function () { },
64
+ addEventListener: function () { },
65
+ removeEventListener: function () { },
66
+ };
67
+ }
68
+ var WindowRefService = /** @class */ (function () {
69
+ function WindowRefService(platformId) {
70
+ this.isBrowser = false;
71
+ this.isBrowser = i4.isPlatformBrowser(platformId);
72
+ }
73
+ Object.defineProperty(WindowRefService.prototype, "nativeWindow", {
74
+ get: function () {
75
+ if (this.isBrowser) {
76
+ return getWindow();
77
+ }
78
+ else {
79
+ return getMockWindow();
80
+ }
81
+ },
82
+ enumerable: false,
83
+ configurable: true
84
+ });
85
+ return WindowRefService;
86
+ }());
87
+ WindowRefService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WindowRefService, deps: [{ token: i0.PLATFORM_ID }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
88
+ WindowRefService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WindowRefService });
89
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: WindowRefService, decorators: [{
90
+ type: i0.Injectable
91
+ }], ctorParameters: function () {
92
+ return [{ type: undefined, decorators: [{
93
+ type: i0.Inject,
94
+ args: [i0.PLATFORM_ID]
95
+ }] }];
96
+ } });
97
+
98
+ var GuidedTourService = /** @class */ (function () {
99
+ function GuidedTourService(errorHandler, windowRef, dom) {
100
+ var _this = this;
101
+ this.errorHandler = errorHandler;
102
+ this.windowRef = windowRef;
103
+ this.dom = dom;
104
+ this._guidedTourCurrentStepSubject = new rxjs.Subject();
105
+ this._guidedTourOrbShowingSubject = new rxjs.Subject();
106
+ this._currentTourStepIndex = 0;
107
+ this._currentTour = null;
108
+ this._onFirstStep = true;
109
+ this._onLastStep = true;
110
+ this._onResizeMessage = false;
111
+ this.guidedTourCurrentStepStream = this._guidedTourCurrentStepSubject.asObservable();
112
+ this.guidedTourOrbShowingStream = this._guidedTourOrbShowingSubject.asObservable();
113
+ rxjs.fromEvent(this.windowRef.nativeWindow, 'resize').pipe(operators.debounceTime(200)).subscribe(function () {
114
+ if (_this._currentTour && _this._currentTourStepIndex > -1) {
115
+ if (_this._currentTour.minimumScreenSize && _this._currentTour.minimumScreenSize >= _this.windowRef.nativeWindow.innerWidth) {
116
+ _this._onResizeMessage = true;
117
+ var dialog = _this._currentTour.resizeDialog || {
118
+ title: 'Please resize',
119
+ content: 'You have resized the tour to a size that is too small to continue. Please resize the browser to a larger size to continue the tour or close the tour.'
120
+ };
121
+ _this._guidedTourCurrentStepSubject.next(dialog);
122
+ }
123
+ else {
124
+ _this._onResizeMessage = false;
125
+ _this._guidedTourCurrentStepSubject.next(_this.getPreparedTourStep(_this._currentTourStepIndex));
126
+ }
127
+ }
128
+ });
129
+ }
130
+ GuidedTourService.prototype.nextStep = function () {
131
+ var _this = this;
132
+ if (this._currentTour.steps[this._currentTourStepIndex].closeAction) {
133
+ this._currentTour.steps[this._currentTourStepIndex].closeAction();
134
+ }
135
+ if (this._currentTour.steps[this._currentTourStepIndex + 1]) {
136
+ this._currentTourStepIndex++;
137
+ this._setFirstAndLast();
138
+ if (this._currentTour.steps[this._currentTourStepIndex].action) {
139
+ this._currentTour.steps[this._currentTourStepIndex].action();
140
+ // Usually an action is opening something so we need to give it time to render.
141
+ setTimeout(function () {
142
+ if (_this._checkSelectorValidity()) {
143
+ _this._guidedTourCurrentStepSubject.next(_this.getPreparedTourStep(_this._currentTourStepIndex));
144
+ }
145
+ else {
146
+ _this.nextStep();
147
+ }
148
+ });
149
+ }
150
+ else {
151
+ if (this._checkSelectorValidity()) {
152
+ this._guidedTourCurrentStepSubject.next(this.getPreparedTourStep(this._currentTourStepIndex));
153
+ }
154
+ else {
155
+ this.nextStep();
156
+ }
157
+ }
158
+ if (this._currentTour.nextCallback) {
159
+ this._currentTour.nextCallback(this._currentTourStepIndex, this._currentTour.steps[this._currentTourStepIndex]);
160
+ }
161
+ }
162
+ else {
163
+ if (this._currentTour.completeCallback) {
164
+ this._currentTour.completeCallback();
165
+ }
166
+ this.resetTour();
167
+ }
168
+ };
169
+ GuidedTourService.prototype.backStep = function () {
170
+ var _this = this;
171
+ if (this._currentTour.steps[this._currentTourStepIndex].closeAction) {
172
+ this._currentTour.steps[this._currentTourStepIndex].closeAction();
173
+ }
174
+ if (this._currentTour.steps[this._currentTourStepIndex - 1]) {
175
+ this._currentTourStepIndex--;
176
+ this._setFirstAndLast();
177
+ if (this._currentTour.steps[this._currentTourStepIndex].action) {
178
+ this._currentTour.steps[this._currentTourStepIndex].action();
179
+ setTimeout(function () {
180
+ if (_this._checkSelectorValidity()) {
181
+ _this._guidedTourCurrentStepSubject.next(_this.getPreparedTourStep(_this._currentTourStepIndex));
182
+ }
183
+ else {
184
+ _this.backStep();
185
+ }
186
+ });
187
+ }
188
+ else {
189
+ if (this._checkSelectorValidity()) {
190
+ this._guidedTourCurrentStepSubject.next(this.getPreparedTourStep(this._currentTourStepIndex));
191
+ }
192
+ else {
193
+ this.backStep();
194
+ }
195
+ }
196
+ if (this._currentTour.nextCallback) {
197
+ this._currentTour.prevCallback(this._currentTourStepIndex, this._currentTour.steps[this._currentTourStepIndex]);
198
+ }
199
+ }
200
+ else {
201
+ this.resetTour();
202
+ }
203
+ };
204
+ GuidedTourService.prototype.skipTour = function () {
205
+ if (this._currentTour.skipCallback) {
206
+ this._currentTour.skipCallback(this._currentTourStepIndex);
207
+ }
208
+ this.resetTour();
209
+ };
210
+ GuidedTourService.prototype.resetTour = function () {
211
+ this.dom.body.classList.remove('tour-open');
212
+ this._currentTour = null;
213
+ this._currentTourStepIndex = 0;
214
+ this._guidedTourCurrentStepSubject.next(null);
215
+ };
216
+ GuidedTourService.prototype.startTour = function (tour) {
217
+ this._currentTour = lodash.cloneDeep(tour);
218
+ this._currentTour.steps = this._currentTour.steps.filter(function (step) { return !step.skipStep; });
219
+ this._currentTourStepIndex = 0;
220
+ this._setFirstAndLast();
221
+ this._guidedTourOrbShowingSubject.next(this._currentTour.useOrb);
222
+ if (this._currentTour.steps.length > 0
223
+ && (!this._currentTour.minimumScreenSize
224
+ || (this.windowRef.nativeWindow.innerWidth >= this._currentTour.minimumScreenSize))) {
225
+ if (!this._currentTour.useOrb) {
226
+ this.dom.body.classList.add('tour-open');
227
+ }
228
+ if (this._currentTour.steps[this._currentTourStepIndex].action) {
229
+ this._currentTour.steps[this._currentTourStepIndex].action();
230
+ }
231
+ if (this._checkSelectorValidity()) {
232
+ this._guidedTourCurrentStepSubject.next(this.getPreparedTourStep(this._currentTourStepIndex));
233
+ }
234
+ else {
235
+ this.nextStep();
236
+ }
237
+ }
238
+ };
239
+ GuidedTourService.prototype.activateOrb = function () {
240
+ this._guidedTourOrbShowingSubject.next(false);
241
+ this.dom.body.classList.add('tour-open');
242
+ };
243
+ GuidedTourService.prototype._setFirstAndLast = function () {
244
+ this._onLastStep = (this._currentTour.steps.length - 1) === this._currentTourStepIndex;
245
+ this._onFirstStep = this._currentTourStepIndex === 0;
246
+ };
247
+ GuidedTourService.prototype._checkSelectorValidity = function () {
248
+ if (this._currentTour.steps[this._currentTourStepIndex].selector) {
249
+ var selectedElement = this.dom.querySelector(this._currentTour.steps[this._currentTourStepIndex].selector);
250
+ if (!selectedElement) {
251
+ this.errorHandler.handleError(
252
+ // If error handler is configured this should not block the browser.
253
+ new Error("Error finding selector " + this._currentTour.steps[this._currentTourStepIndex].selector + " on step " + (this._currentTourStepIndex + 1) + " during guided tour: " + this._currentTour.tourId));
254
+ return false;
255
+ }
256
+ }
257
+ return true;
258
+ };
259
+ Object.defineProperty(GuidedTourService.prototype, "onLastStep", {
260
+ get: function () {
261
+ return this._onLastStep;
262
+ },
263
+ enumerable: false,
264
+ configurable: true
265
+ });
266
+ Object.defineProperty(GuidedTourService.prototype, "onFirstStep", {
267
+ get: function () {
268
+ return this._onFirstStep;
269
+ },
270
+ enumerable: false,
271
+ configurable: true
272
+ });
273
+ Object.defineProperty(GuidedTourService.prototype, "onResizeMessage", {
274
+ get: function () {
275
+ return this._onResizeMessage;
276
+ },
277
+ enumerable: false,
278
+ configurable: true
279
+ });
280
+ Object.defineProperty(GuidedTourService.prototype, "currentTourStepDisplay", {
281
+ get: function () {
282
+ return this._currentTourStepIndex + 1;
283
+ },
284
+ enumerable: false,
285
+ configurable: true
286
+ });
287
+ Object.defineProperty(GuidedTourService.prototype, "currentTourStepCount", {
288
+ get: function () {
289
+ return this._currentTour && this._currentTour.steps ? this._currentTour.steps.length : 0;
290
+ },
291
+ enumerable: false,
292
+ configurable: true
293
+ });
294
+ Object.defineProperty(GuidedTourService.prototype, "preventBackdropFromAdvancing", {
295
+ get: function () {
296
+ return this._currentTour && this._currentTour.preventBackdropFromAdvancing;
297
+ },
298
+ enumerable: false,
299
+ configurable: true
300
+ });
301
+ GuidedTourService.prototype.getPreparedTourStep = function (index) {
302
+ return this.setTourOrientation(this._currentTour.steps[index]);
303
+ };
304
+ GuidedTourService.prototype.setTourOrientation = function (step) {
305
+ var _this = this;
306
+ var convertedStep = lodash.cloneDeep(step);
307
+ if (convertedStep.orientation
308
+ && !(typeof convertedStep.orientation === 'string')
309
+ && convertedStep.orientation.length) {
310
+ convertedStep.orientation.sort(function (a, b) {
311
+ if (!b.maximumSize) {
312
+ return 1;
313
+ }
314
+ if (!a.maximumSize) {
315
+ return -1;
316
+ }
317
+ return b.maximumSize - a.maximumSize;
318
+ });
319
+ var currentOrientation_1 = Orientation.Top;
320
+ convertedStep.orientation.forEach(function (orientationConfig) {
321
+ if (!orientationConfig.maximumSize || _this.windowRef.nativeWindow.innerWidth <= orientationConfig.maximumSize) {
322
+ currentOrientation_1 = orientationConfig.orientationDirection;
323
+ }
324
+ });
325
+ convertedStep.orientation = currentOrientation_1;
326
+ }
327
+ return convertedStep;
328
+ };
329
+ return GuidedTourService;
330
+ }());
331
+ GuidedTourService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourService, deps: [{ token: i0__namespace.ErrorHandler }, { token: WindowRefService }, { token: i4.DOCUMENT }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
332
+ GuidedTourService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourService });
333
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourService, decorators: [{
334
+ type: i0.Injectable
335
+ }], ctorParameters: function () {
336
+ return [{ type: i0__namespace.ErrorHandler }, { type: WindowRefService }, { type: undefined, decorators: [{
337
+ type: i0.Inject,
338
+ args: [i4.DOCUMENT]
339
+ }] }];
340
+ } });
341
+
342
+ var GuidedTourComponent = /** @class */ (function () {
343
+ function GuidedTourComponent(guidedTourService, windowRef, dom) {
344
+ this.guidedTourService = guidedTourService;
345
+ this.windowRef = windowRef;
346
+ this.dom = dom;
347
+ this.topOfPageAdjustment = 0;
348
+ this.tourStepWidth = 300;
349
+ this.minimalTourStepWidth = 200;
350
+ this.skipText = 'Skip';
351
+ this.nextText = 'Next';
352
+ this.doneText = 'Done';
353
+ this.closeText = 'Close';
354
+ this.backText = 'Back';
355
+ this.progressIndicatorLocation = exports.ProgressIndicatorLocation.InsideNextButton;
356
+ this.progressIndicator = undefined;
357
+ this.highlightPadding = 4;
358
+ this.currentTourStep = null;
359
+ this.selectedElementRect = null;
360
+ this.isOrbShowing = false;
361
+ this.progressIndicatorLocations = exports.ProgressIndicatorLocation;
362
+ }
363
+ Object.defineProperty(GuidedTourComponent.prototype, "maxWidthAdjustmentForTourStep", {
364
+ get: function () {
365
+ return this.tourStepWidth - this.minimalTourStepWidth;
366
+ },
367
+ enumerable: false,
368
+ configurable: true
369
+ });
370
+ Object.defineProperty(GuidedTourComponent.prototype, "widthAdjustmentForScreenBound", {
371
+ get: function () {
372
+ if (!this.tourStep) {
373
+ return 0;
374
+ }
375
+ var adjustment = 0;
376
+ if (this.calculatedLeftPosition < 0) {
377
+ adjustment = -this.calculatedLeftPosition;
378
+ }
379
+ if (this.calculatedLeftPosition > this.windowRef.nativeWindow.innerWidth - this.tourStepWidth) {
380
+ adjustment = this.calculatedLeftPosition - (this.windowRef.nativeWindow.innerWidth - this.tourStepWidth);
381
+ }
382
+ return Math.min(this.maxWidthAdjustmentForTourStep, adjustment);
383
+ },
384
+ enumerable: false,
385
+ configurable: true
386
+ });
387
+ Object.defineProperty(GuidedTourComponent.prototype, "calculatedTourStepWidth", {
388
+ get: function () {
389
+ return this.tourStepWidth - this.widthAdjustmentForScreenBound;
390
+ },
391
+ enumerable: false,
392
+ configurable: true
393
+ });
394
+ GuidedTourComponent.prototype.ngAfterViewInit = function () {
395
+ var _this = this;
396
+ this.guidedTourService.guidedTourCurrentStepStream.subscribe(function (step) {
397
+ _this.currentTourStep = step;
398
+ if (step && step.selector) {
399
+ var selectedElement = _this.dom.querySelector(step.selector);
400
+ if (selectedElement) {
401
+ _this.scrollToAndSetElement();
402
+ }
403
+ else {
404
+ _this.selectedElementRect = null;
405
+ }
406
+ }
407
+ else {
408
+ _this.selectedElementRect = null;
409
+ }
410
+ });
411
+ this.guidedTourService.guidedTourOrbShowingStream.subscribe(function (value) {
412
+ _this.isOrbShowing = value;
413
+ });
414
+ this.resizeSubscription = rxjs.fromEvent(this.windowRef.nativeWindow, 'resize').subscribe(function () {
415
+ _this.updateStepLocation();
416
+ });
417
+ this.scrollSubscription = rxjs.fromEvent(this.windowRef.nativeWindow, 'scroll').subscribe(function () {
418
+ _this.updateStepLocation();
419
+ });
420
+ };
421
+ GuidedTourComponent.prototype.ngOnDestroy = function () {
422
+ this.resizeSubscription.unsubscribe();
423
+ this.scrollSubscription.unsubscribe();
424
+ };
425
+ GuidedTourComponent.prototype.scrollToAndSetElement = function () {
426
+ var _this = this;
427
+ this.updateStepLocation();
428
+ // Allow things to render to scroll to the correct location
429
+ setTimeout(function () {
430
+ if (!_this.isOrbShowing && !_this.isTourOnScreen()) {
431
+ if (_this.selectedElementRect && _this.isBottom()) {
432
+ // Scroll so the element is on the top of the screen.
433
+ var topPos = ((_this.windowRef.nativeWindow.scrollY + _this.selectedElementRect.top) - _this.topOfPageAdjustment)
434
+ - (_this.currentTourStep.scrollAdjustment ? _this.currentTourStep.scrollAdjustment : 0)
435
+ + _this.getStepScreenAdjustment();
436
+ try {
437
+ _this.windowRef.nativeWindow.scrollTo({
438
+ left: null,
439
+ top: topPos,
440
+ behavior: 'smooth'
441
+ });
442
+ }
443
+ catch (err) {
444
+ if (err instanceof TypeError) {
445
+ _this.windowRef.nativeWindow.scroll(0, topPos);
446
+ }
447
+ else {
448
+ throw err;
449
+ }
450
+ }
451
+ }
452
+ else {
453
+ // Scroll so the element is on the bottom of the screen.
454
+ var topPos = (_this.windowRef.nativeWindow.scrollY + _this.selectedElementRect.top + _this.selectedElementRect.height)
455
+ - _this.windowRef.nativeWindow.innerHeight
456
+ + (_this.currentTourStep.scrollAdjustment ? _this.currentTourStep.scrollAdjustment : 0)
457
+ - _this.getStepScreenAdjustment();
458
+ try {
459
+ _this.windowRef.nativeWindow.scrollTo({
460
+ left: null,
461
+ top: topPos,
462
+ behavior: 'smooth'
463
+ });
464
+ }
465
+ catch (err) {
466
+ if (err instanceof TypeError) {
467
+ _this.windowRef.nativeWindow.scroll(0, topPos);
468
+ }
469
+ else {
470
+ throw err;
471
+ }
472
+ }
473
+ }
474
+ }
475
+ });
476
+ };
477
+ GuidedTourComponent.prototype.handleOrb = function () {
478
+ this.guidedTourService.activateOrb();
479
+ if (this.currentTourStep && this.currentTourStep.selector) {
480
+ this.scrollToAndSetElement();
481
+ }
482
+ };
483
+ GuidedTourComponent.prototype.isTourOnScreen = function () {
484
+ return this.tourStep
485
+ && this.elementInViewport(this.dom.querySelector(this.currentTourStep.selector))
486
+ && this.elementInViewport(this.tourStep.nativeElement);
487
+ };
488
+ // Modified from https://stackoverflow.com/questions/123999/how-to-tell-if-a-dom-element-is-visible-in-the-current-viewport
489
+ GuidedTourComponent.prototype.elementInViewport = function (element) {
490
+ var top = element.offsetTop;
491
+ var height = element.offsetHeight;
492
+ while (element.offsetParent) {
493
+ element = element.offsetParent;
494
+ top += element.offsetTop;
495
+ }
496
+ if (this.isBottom()) {
497
+ return (top >= (this.windowRef.nativeWindow.pageYOffset
498
+ + this.topOfPageAdjustment
499
+ + (this.currentTourStep.scrollAdjustment ? this.currentTourStep.scrollAdjustment : 0)
500
+ + this.getStepScreenAdjustment())
501
+ && (top + height) <= (this.windowRef.nativeWindow.pageYOffset + this.windowRef.nativeWindow.innerHeight));
502
+ }
503
+ else {
504
+ return (top >= (this.windowRef.nativeWindow.pageYOffset + this.topOfPageAdjustment - this.getStepScreenAdjustment())
505
+ && (top + height + (this.currentTourStep.scrollAdjustment ? this.currentTourStep.scrollAdjustment : 0)) <= (this.windowRef.nativeWindow.pageYOffset + this.windowRef.nativeWindow.innerHeight));
506
+ }
507
+ };
508
+ GuidedTourComponent.prototype.backdropClick = function (event) {
509
+ if (this.guidedTourService.preventBackdropFromAdvancing) {
510
+ event.stopPropagation();
511
+ }
512
+ else {
513
+ this.guidedTourService.nextStep();
514
+ }
515
+ };
516
+ GuidedTourComponent.prototype.updateStepLocation = function () {
517
+ if (this.currentTourStep && this.currentTourStep.selector) {
518
+ var selectedElement = this.dom.querySelector(this.currentTourStep.selector);
519
+ if (selectedElement && typeof selectedElement.getBoundingClientRect === 'function') {
520
+ this.selectedElementRect = selectedElement.getBoundingClientRect();
521
+ }
522
+ else {
523
+ this.selectedElementRect = null;
524
+ }
525
+ }
526
+ else {
527
+ this.selectedElementRect = null;
528
+ }
529
+ };
530
+ GuidedTourComponent.prototype.isBottom = function () {
531
+ return this.currentTourStep.orientation
532
+ && (this.currentTourStep.orientation === Orientation.Bottom
533
+ || this.currentTourStep.orientation === Orientation.BottomLeft
534
+ || this.currentTourStep.orientation === Orientation.BottomRight);
535
+ };
536
+ Object.defineProperty(GuidedTourComponent.prototype, "topPosition", {
537
+ get: function () {
538
+ var paddingAdjustment = this.getHighlightPadding();
539
+ if (this.isBottom()) {
540
+ return this.selectedElementRect.top + this.selectedElementRect.height + paddingAdjustment;
541
+ }
542
+ return this.selectedElementRect.top - this.getHighlightPadding();
543
+ },
544
+ enumerable: false,
545
+ configurable: true
546
+ });
547
+ Object.defineProperty(GuidedTourComponent.prototype, "orbTopPosition", {
548
+ get: function () {
549
+ if (this.isBottom()) {
550
+ return this.selectedElementRect.top + this.selectedElementRect.height;
551
+ }
552
+ if (this.currentTourStep.orientation === Orientation.Right
553
+ || this.currentTourStep.orientation === Orientation.Left) {
554
+ return (this.selectedElementRect.top + (this.selectedElementRect.height / 2));
555
+ }
556
+ return this.selectedElementRect.top;
557
+ },
558
+ enumerable: false,
559
+ configurable: true
560
+ });
561
+ Object.defineProperty(GuidedTourComponent.prototype, "calculatedLeftPosition", {
562
+ get: function () {
563
+ var paddingAdjustment = this.getHighlightPadding();
564
+ if (this.currentTourStep.orientation === Orientation.TopRight
565
+ || this.currentTourStep.orientation === Orientation.BottomRight) {
566
+ return (this.selectedElementRect.right - this.tourStepWidth);
567
+ }
568
+ if (this.currentTourStep.orientation === Orientation.TopLeft
569
+ || this.currentTourStep.orientation === Orientation.BottomLeft) {
570
+ return (this.selectedElementRect.left);
571
+ }
572
+ if (this.currentTourStep.orientation === Orientation.Left) {
573
+ return this.selectedElementRect.left - this.tourStepWidth - paddingAdjustment;
574
+ }
575
+ if (this.currentTourStep.orientation === Orientation.Right) {
576
+ return (this.selectedElementRect.left + this.selectedElementRect.width + paddingAdjustment);
577
+ }
578
+ return (this.selectedElementRect.right - (this.selectedElementRect.width / 2) - (this.tourStepWidth / 2));
579
+ },
580
+ enumerable: false,
581
+ configurable: true
582
+ });
583
+ Object.defineProperty(GuidedTourComponent.prototype, "leftPosition", {
584
+ get: function () {
585
+ if (this.calculatedLeftPosition >= 0) {
586
+ return this.calculatedLeftPosition;
587
+ }
588
+ var adjustment = Math.max(0, -this.calculatedLeftPosition);
589
+ var maxAdjustment = Math.min(this.maxWidthAdjustmentForTourStep, adjustment);
590
+ return this.calculatedLeftPosition + maxAdjustment;
591
+ },
592
+ enumerable: false,
593
+ configurable: true
594
+ });
595
+ Object.defineProperty(GuidedTourComponent.prototype, "orbLeftPosition", {
596
+ get: function () {
597
+ if (this.currentTourStep.orientation === Orientation.TopRight
598
+ || this.currentTourStep.orientation === Orientation.BottomRight) {
599
+ return this.selectedElementRect.right;
600
+ }
601
+ if (this.currentTourStep.orientation === Orientation.TopLeft
602
+ || this.currentTourStep.orientation === Orientation.BottomLeft) {
603
+ return this.selectedElementRect.left;
604
+ }
605
+ if (this.currentTourStep.orientation === Orientation.Left) {
606
+ return this.selectedElementRect.left;
607
+ }
608
+ if (this.currentTourStep.orientation === Orientation.Right) {
609
+ return (this.selectedElementRect.left + this.selectedElementRect.width);
610
+ }
611
+ return (this.selectedElementRect.right - (this.selectedElementRect.width / 2));
612
+ },
613
+ enumerable: false,
614
+ configurable: true
615
+ });
616
+ Object.defineProperty(GuidedTourComponent.prototype, "transform", {
617
+ get: function () {
618
+ if (!this.currentTourStep.orientation
619
+ || this.currentTourStep.orientation === Orientation.Top
620
+ || this.currentTourStep.orientation === Orientation.TopRight
621
+ || this.currentTourStep.orientation === Orientation.TopLeft) {
622
+ return 'translateY(-100%)';
623
+ }
624
+ return null;
625
+ },
626
+ enumerable: false,
627
+ configurable: true
628
+ });
629
+ Object.defineProperty(GuidedTourComponent.prototype, "orbTransform", {
630
+ get: function () {
631
+ if (!this.currentTourStep.orientation
632
+ || this.currentTourStep.orientation === Orientation.Top
633
+ || this.currentTourStep.orientation === Orientation.Bottom
634
+ || this.currentTourStep.orientation === Orientation.TopLeft
635
+ || this.currentTourStep.orientation === Orientation.BottomLeft) {
636
+ return 'translateY(-50%)';
637
+ }
638
+ if (this.currentTourStep.orientation === Orientation.TopRight
639
+ || this.currentTourStep.orientation === Orientation.BottomRight) {
640
+ return 'translate(-100%, -50%)';
641
+ }
642
+ if (this.currentTourStep.orientation === Orientation.Right
643
+ || this.currentTourStep.orientation === Orientation.Left) {
644
+ return 'translate(-50%, -50%)';
645
+ }
646
+ return null;
647
+ },
648
+ enumerable: false,
649
+ configurable: true
650
+ });
651
+ Object.defineProperty(GuidedTourComponent.prototype, "overlayTop", {
652
+ get: function () {
653
+ if (this.selectedElementRect) {
654
+ return this.selectedElementRect.top - this.getHighlightPadding();
655
+ }
656
+ return 0;
657
+ },
658
+ enumerable: false,
659
+ configurable: true
660
+ });
661
+ Object.defineProperty(GuidedTourComponent.prototype, "overlayLeft", {
662
+ get: function () {
663
+ if (this.selectedElementRect) {
664
+ return this.selectedElementRect.left - this.getHighlightPadding();
665
+ }
666
+ return 0;
667
+ },
668
+ enumerable: false,
669
+ configurable: true
670
+ });
671
+ Object.defineProperty(GuidedTourComponent.prototype, "overlayHeight", {
672
+ get: function () {
673
+ if (this.selectedElementRect) {
674
+ return this.selectedElementRect.height + (this.getHighlightPadding() * 2);
675
+ }
676
+ return 0;
677
+ },
678
+ enumerable: false,
679
+ configurable: true
680
+ });
681
+ Object.defineProperty(GuidedTourComponent.prototype, "overlayWidth", {
682
+ get: function () {
683
+ if (this.selectedElementRect) {
684
+ return this.selectedElementRect.width + (this.getHighlightPadding() * 2);
685
+ }
686
+ return 0;
687
+ },
688
+ enumerable: false,
689
+ configurable: true
690
+ });
691
+ GuidedTourComponent.prototype.getHighlightPadding = function () {
692
+ var paddingAdjustment = this.currentTourStep.useHighlightPadding ? this.highlightPadding : 0;
693
+ if (this.currentTourStep.highlightPadding) {
694
+ paddingAdjustment = this.currentTourStep.highlightPadding;
695
+ }
696
+ return paddingAdjustment;
697
+ };
698
+ // This calculates a value to add or subtract so the step should not be off screen.
699
+ GuidedTourComponent.prototype.getStepScreenAdjustment = function () {
700
+ if (this.currentTourStep.orientation === Orientation.Left
701
+ || this.currentTourStep.orientation === Orientation.Right) {
702
+ return 0;
703
+ }
704
+ var scrollAdjustment = this.currentTourStep.scrollAdjustment ? this.currentTourStep.scrollAdjustment : 0;
705
+ var tourStepHeight = typeof this.tourStep.nativeElement.getBoundingClientRect === 'function' ? this.tourStep.nativeElement.getBoundingClientRect().height : 0;
706
+ var elementHeight = this.selectedElementRect.height + scrollAdjustment + tourStepHeight;
707
+ if ((this.windowRef.nativeWindow.innerHeight - this.topOfPageAdjustment) < elementHeight) {
708
+ return elementHeight - (this.windowRef.nativeWindow.innerHeight - this.topOfPageAdjustment);
709
+ }
710
+ return 0;
711
+ };
712
+ return GuidedTourComponent;
713
+ }());
714
+ GuidedTourComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourComponent, deps: [{ token: GuidedTourService }, { token: WindowRefService }, { token: i4.DOCUMENT }], target: i0__namespace.ɵɵFactoryTarget.Component });
715
+ GuidedTourComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: GuidedTourComponent, selector: "ngx-guided-tour", inputs: { topOfPageAdjustment: "topOfPageAdjustment", tourStepWidth: "tourStepWidth", minimalTourStepWidth: "minimalTourStepWidth", skipText: "skipText", nextText: "nextText", doneText: "doneText", closeText: "closeText", backText: "backText", progressIndicatorLocation: "progressIndicatorLocation", progressIndicator: "progressIndicator" }, viewQueries: [{ propertyName: "tourStep", first: true, predicate: ["tourStep"], descendants: true }], ngImport: i0__namespace, template: "<div *ngIf=\"currentTourStep && selectedElementRect && isOrbShowing\" (mouseenter)=\"handleOrb()\"\n class=\"tour-orb tour-{{ currentTourStep.orientation }}\" [style.top.px]=\"orbTopPosition\"\n [style.left.px]=\"orbLeftPosition\" [style.transform]=\"orbTransform\">\n <div class=\"tour-orb-ring\"></div>\n</div>\n<div *ngIf=\"currentTourStep && !isOrbShowing\">\n <div class=\"guided-tour-user-input-mask\" (click)=\"backdropClick($event)\"></div>\n <div class=\"\" [attr.class]=\"'guided-tour-spotlight-overlay ' + currentTourStep?.class\" [style.top.px]=\"overlayTop\"\n [style.left.px]=\"overlayLeft\" [style.height.px]=\"overlayHeight\" [style.width.px]=\"overlayWidth\">\n </div>\n</div>\n<div *ngIf=\"currentTourStep && !isOrbShowing\">\n <div #tourStep *ngIf=\"currentTourStep\"\n class=\"tour-step tour-{{ currentTourStep.orientation}} {{currentTourStep?.containerClass}}\" [ngClass]=\"{\n 'page-tour-step': !currentTourStep.selector,\n 'right-panel': currentTourStep.connectorDirection == 'right',\n 'left-panel': currentTourStep.connectorDirection == 'left',\n 'bottom-panel': currentTourStep.connectorDirection == 'bottom',\n 'top-panel': currentTourStep.connectorDirection == 'top'\n }\" [style.top.px]=\"(currentTourStep.selector && selectedElementRect ? topPosition : null)\"\n [style.left.px]=\"(currentTourStep.selector && selectedElementRect ? leftPosition : null)\"\n [style.width.px]=\"(currentTourStep.selector && selectedElementRect ? calculatedTourStepWidth : null)\"\n [style.transform]=\"(currentTourStep.selector && selectedElementRect ? transform : null)\">\n\n <div *ngIf=\"currentTourStep.isMobile && currentTourStep.connectorDirection == 'bottom'\" class=\"tour-buttons tour-button-container\">\n <div class=\"tour-actions-button-container\">\n <button *ngIf=\"!guidedTourService.onFirstStep && !guidedTourService.onResizeMessage\"\n [attr.class]=\"currentTourStep?.backBtnClass + ' back-button'\" (click)=\"guidedTourService.backStep()\">\n {{ backText }}\n </button>\n </div>\n <button *ngIf=\"!guidedTourService.onLastStep && !guidedTourService.onResizeMessage\" class=\"next-button\"\n (click)=\"guidedTourService.nextStep()\">\n {{ nextText }}\n <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.InsideNextButton\">\n <ng-container *ngTemplateOutlet=\"progress\"></ng-container>\n </ng-container>\n </button>\n <button *ngIf=\"guidedTourService.onLastStep\" [attr.class]=\"currentTourStep?.nextBtnClass + ' next-button'\"\n (click)=\"guidedTourService.nextStep()\">\n {{ doneText }}\n </button>\n <button *ngIf=\"guidedTourService.onResizeMessage\" class=\"next-button\" (click)=\"guidedTourService.resetTour()\">\n {{ closeText }}\n </button>\n\n </div>\n\n <div *ngIf=\"currentTourStep.selector\" class=\"tour-arrow\"></div>\n <div class=\"tour-block\">\n <div class=\"arrow\" [ngClass]=\"{\n 'right-connector': (currentTourStep.selector && currentTourStep.connectorDirection == 'right'),\n 'left-connector': (currentTourStep.selector && currentTourStep.connectorDirection == 'left'),\n 'bottom-connector': (currentTourStep.selector && currentTourStep.connectorDirection == 'bottom'),\n 'top-connector': (currentTourStep.selector && currentTourStep.connectorDirection == 'top')\n }\">\n <div class=\"circle\"></div>\n <div class=\"circle-start-dot\"></div>\n <div class=\"triangle\"></div>\n </div>\n\n <div *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.TopOfTourBlock\n && !guidedTourService.onResizeMessage\" class=\"tour-progress-indicator\">\n <ng-container *ngTemplateOutlet=\"progress\"></ng-container>\n </div>\n <div class=\"tour-image\" *ngIf=\"currentTourStep.icon && currentTourStep.selector\">\n <mat-icon>{{currentTourStep.icon}}</mat-icon>\n </div>\n <h3 class=\"tour-title\" *ngIf=\"currentTourStep.title && currentTourStep.selector\">\n {{ currentTourStep.title }}\n </h3>\n <h2 class=\"tour-title\" *ngIf=\"currentTourStep.title && !currentTourStep.selector\">\n {{ currentTourStep.title }}\n </h2>\n <div class=\"tour-content\" [innerHTML]=\"currentTourStep.content\"></div>\n <div *ngIf=\"!currentTourStep.isMobile\" class=\"tour-buttons tour-button-container\">\n <!-- <div class=\"tour-skip-container\">\n <button *ngIf=\"!guidedTourService.onResizeMessage\"\n (click)=\"guidedTourService.skipTour()\"\n [attr.class]=\"currentTourStep?.skipBtnClass + ' skip-button link-button'\">\n {{ skipText }}\n </button>\n </div> -->\n <div class=\"tour-actions-button-container\">\n <button *ngIf=\"!guidedTourService.onFirstStep && !guidedTourService.onResizeMessage\"\n [attr.class]=\"currentTourStep?.backBtnClass + ' back-button'\" (click)=\"guidedTourService.backStep()\">\n {{ backText }}\n </button>\n </div>\n <button *ngIf=\"!guidedTourService.onLastStep && !guidedTourService.onResizeMessage\" class=\"next-button\"\n (click)=\"guidedTourService.nextStep()\">\n {{ nextText }}\n <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.InsideNextButton\">\n <ng-container *ngTemplateOutlet=\"progress\"></ng-container>\n </ng-container>\n </button>\n <button *ngIf=\"guidedTourService.onLastStep\" [attr.class]=\"currentTourStep?.nextBtnClass + ' next-button'\"\n (click)=\"guidedTourService.nextStep()\">\n {{ doneText }}\n </button>\n <button *ngIf=\"guidedTourService.onResizeMessage\" class=\"next-button\" (click)=\"guidedTourService.resetTour()\">\n {{ closeText }}\n </button>\n\n </div>\n\n\n <div class=\"progress-container\">\n <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.Dots\">\n <ng-container *ngTemplateOutlet=\"progress\"></ng-container>\n </ng-container>\n </div>\n\n </div>\n <div *ngIf=\"currentTourStep.isMobile && currentTourStep.connectorDirection != 'bottom'\" class=\"tour-buttons tour-button-container\">\n <div class=\"tour-actions-button-container\">\n <button *ngIf=\"!guidedTourService.onFirstStep && !guidedTourService.onResizeMessage\"\n [attr.class]=\"currentTourStep?.backBtnClass + ' back-button'\" (click)=\"guidedTourService.backStep()\">\n {{ backText }}\n </button>\n </div>\n <button *ngIf=\"!guidedTourService.onLastStep && !guidedTourService.onResizeMessage\" class=\"next-button\"\n (click)=\"guidedTourService.nextStep()\">\n {{ nextText }}\n <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.InsideNextButton\">\n <ng-container *ngTemplateOutlet=\"progress\"></ng-container>\n </ng-container>\n </button>\n <button *ngIf=\"guidedTourService.onLastStep\" [attr.class]=\"currentTourStep?.nextBtnClass + ' next-button'\"\n (click)=\"guidedTourService.nextStep()\">\n {{ doneText }}\n </button>\n <button *ngIf=\"guidedTourService.onResizeMessage\" class=\"next-button\" (click)=\"guidedTourService.resetTour()\">\n {{ closeText }}\n </button>\n\n </div>\n </div>\n <ng-template #progress>\n <ng-container *ngTemplateOutlet=\"\n progressIndicator || defaultProgressIndicator; \n context: { currentStepNumber: guidedTourService.currentTourStepDisplay, totalSteps: guidedTourService.currentTourStepCount }\n \"></ng-container>\n </ng-template>\n <ng-template #defaultProgressIndicator let-currentStepNumber=\"currentStepNumber\" let-totalSteps=\"totalSteps\">\n <!-- <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.InsideNextButton\">&nbsp;</ng-container>{{ currentStepNumber }}/{{ totalSteps }} -->\n <ng-container *ngIf=\"progressIndicatorLocation === progressIndicatorLocations.Dots\">\n <div class=\"pagination\">\n <li class=\"nav-dots\">\n <ng-container *ngFor=\"let dot of [].constructor(totalSteps); first as isFirst; index as i\">\n <label [ngClass]=\"(currentStepNumber == (i+1)) ? 'nav-dot-active': ''\" class=\"nav-dot\"\n id=\"img-dot-+{{i}}+{{currentStepNumber}}\"></label>\n </ng-container>\n </li>\n </div>\n </ng-container>\n </ng-template>", styles: ["ngx-guided-tour .guided-tour-user-input-mask{position:fixed;top:0;left:0;display:block;height:100%;width:100%;max-height:100vh;text-align:center;opacity:0}ngx-guided-tour .guided-tour-spotlight-overlay{position:fixed;box-shadow:0 0 0 9999px #000000b3,0 0 1.5rem #00000080}ngx-guided-tour .tour-orb{position:fixed;width:20px;height:20px;border-radius:50%}ngx-guided-tour .tour-orb .tour-orb-ring{width:35px;height:35px;position:relative;top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse 2s linear infinite}ngx-guided-tour .tour-orb .tour-orb-ring:after{content:\"\";display:inline-block;height:100%;width:100%;border-radius:50%}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(.45);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}ngx-guided-tour .tour-step{position:fixed}ngx-guided-tour .tour-step.page-tour-step{max-width:400px;width:50%;left:50%;top:50%;transform:translate(-50%,-50%)}ngx-guided-tour .tour-step.tour-bottom .tour-arrow:before,ngx-guided-tour .tour-step.tour-bottom-right .tour-arrow:before,ngx-guided-tour .tour-step.tour-bottom-left .tour-arrow:before{position:absolute}ngx-guided-tour .tour-step.tour-bottom .tour-block,ngx-guided-tour .tour-step.tour-bottom-right .tour-block,ngx-guided-tour .tour-step.tour-bottom-left .tour-block{margin-top:10px}ngx-guided-tour .tour-step.tour-top,ngx-guided-tour .tour-step.tour-top-right,ngx-guided-tour .tour-step.tour-top-left{margin-bottom:10px}ngx-guided-tour .tour-step.tour-top .tour-arrow:before,ngx-guided-tour .tour-step.tour-top-right .tour-arrow:before,ngx-guided-tour .tour-step.tour-top-left .tour-arrow:before{position:absolute;bottom:0}ngx-guided-tour .tour-step.tour-top .tour-block,ngx-guided-tour .tour-step.tour-top-right .tour-block,ngx-guided-tour .tour-step.tour-top-left .tour-block{margin-bottom:10px}ngx-guided-tour .tour-step.tour-bottom .tour-arrow:before,ngx-guided-tour .tour-step.tour-top .tour-arrow:before{transform:translate(-50%);left:50%}ngx-guided-tour .tour-step.tour-bottom-right .tour-arrow:before,ngx-guided-tour .tour-step.tour-top-right .tour-arrow:before{transform:translate(-100%);left:calc(100% - 5px)}ngx-guided-tour .tour-step.tour-bottom-left .tour-arrow:before,ngx-guided-tour .tour-step.tour-top-left .tour-arrow:before{left:5px}ngx-guided-tour .tour-step.tour-left .tour-arrow:before{position:absolute;left:100%;transform:translate(-100%);top:5px}ngx-guided-tour .tour-step.tour-left .tour-block{margin-right:10px}ngx-guided-tour .tour-step.tour-right .tour-arrow:before{position:absolute;left:0;top:5px}ngx-guided-tour .tour-step.tour-right .tour-block{margin-left:10px}ngx-guided-tour .tour-step .tour-block{padding:15px 25px}ngx-guided-tour .tour-step .tour-progress-indicator{padding-bottom:15px}ngx-guided-tour .tour-step .tour-title{font-weight:bold!important;padding-bottom:20px}ngx-guided-tour .tour-step h3.tour-title{font-size:20px}ngx-guided-tour .tour-step h2.tour-title{font-size:30px}ngx-guided-tour .tour-step .tour-content{min-height:80px;padding-bottom:30px;font-size:15px}ngx-guided-tour .tour-step .tour-buttons{overflow:hidden}ngx-guided-tour .tour-step .tour-buttons button.link-button{font-size:15px;font-weight:bold;max-width:none!important;cursor:pointer;text-align:center;white-space:nowrap;vertical-align:middle;border:1px solid transparent;line-height:1.5;background-color:transparent;position:relative;outline:none;padding:0 15px;-webkit-appearance:button}ngx-guided-tour .tour-step .tour-buttons button.skip-button.link-button{padding-left:0;border-left:0}ngx-guided-tour .tour-step .tour-buttons .back-button{cursor:pointer;border-radius:1px;font-size:14px;border:none;outline:none;padding-left:10px;padding-right:10px}ngx-guided-tour .tour-step .tour-buttons .next-button{cursor:pointer;border-radius:1px;font-size:14px;border:none;outline:none;padding-left:10px;padding-right:10px}.arrow{position:absolute;left:-50px;top:-13px}.right-connector{transform:scaleX(-1);left:0;right:-46px}.circle{position:absolute;box-sizing:border-box;height:118px;width:100px;border:7px solid #000;border-radius:50%;clip-path:inset(0 50% 0 0);border-style:dotted}.triangle{position:absolute;width:20px;height:15px;background:#000;margin-top:-6px;margin-left:38px;clip-path:polygon(50% 0,0% 100%,100% 100%);transform:rotate(90deg)}.circle-start-dot{display:inline;width:16px;height:16px;background-color:#f3962e;content:\"\";border-radius:50%;position:absolute;margin-top:108px;margin-left:40px}.tour-step.left-panel:after{display:inline;width:8px;height:-webkit-fill-available;background-color:green;position:absolute;content:\"\";overflow:hidden;top:10px}.tour-step.right-panel:after{display:inline;width:8px;height:-webkit-fill-available;background-color:green;right:0;position:absolute;content:\"\";overflow:hidden;top:10px}.tour-step.top-panel:after{display:inline;width:8px;height:-webkit-fill-available;background-color:green;right:0;position:absolute;content:\"\";overflow:hidden;top:10px}.tour-step.bottom-panel:after{display:inline;width:8px;height:-webkit-fill-available;background-color:green;right:0;position:absolute;content:\"\";overflow:hidden;top:10px}.progress-container{display:flex;justify-content:center;align-items:center}.pagination{display:flex;justify-content:center;align-items:center;padding:.5rem}.nav-dots{display:inline-block;position:relative;width:auto;height:10px;border-radius:50%;cursor:default;margin:2px}.nav-dots .nav-dot{top:-5px;width:11px;height:11px;margin:0 4px;position:relative;border-radius:100%;display:inline-block;background-color:#d3d3d3}.nav-dot-active{background:#113463}.top-connector{top:-116px!important;right:173px!important}.top-connector .circle{top:50px;left:80px;transform:rotate(180deg);width:50px;height:70px}.top-connector .circle-start-dot{margin-left:100px}.top-connector .triangle{left:63px;top:49px;transform:rotate(44deg)!important}\n"], components: [{ type: i3__namespace.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], encapsulation: i0__namespace.ViewEncapsulation.None });
716
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourComponent, decorators: [{
717
+ type: i0.Component,
718
+ args: [{
719
+ selector: 'ngx-guided-tour',
720
+ templateUrl: './guided-tour.component.html',
721
+ styleUrls: ['./guided-tour.component.scss'],
722
+ encapsulation: i0.ViewEncapsulation.None
723
+ }]
724
+ }], ctorParameters: function () {
725
+ return [{ type: GuidedTourService }, { type: WindowRefService }, { type: undefined, decorators: [{
726
+ type: i0.Inject,
727
+ args: [i4.DOCUMENT]
728
+ }] }];
729
+ }, propDecorators: { topOfPageAdjustment: [{
730
+ type: i0.Input
731
+ }], tourStepWidth: [{
732
+ type: i0.Input
733
+ }], minimalTourStepWidth: [{
734
+ type: i0.Input
735
+ }], skipText: [{
736
+ type: i0.Input
737
+ }], nextText: [{
738
+ type: i0.Input
739
+ }], doneText: [{
740
+ type: i0.Input
741
+ }], closeText: [{
742
+ type: i0.Input
743
+ }], backText: [{
744
+ type: i0.Input
745
+ }], progressIndicatorLocation: [{
746
+ type: i0.Input
747
+ }], progressIndicator: [{
748
+ type: i0.Input
749
+ }], tourStep: [{
750
+ type: i0.ViewChild,
751
+ args: ['tourStep']
752
+ }] } });
753
+
754
+ var GuidedTourModule = /** @class */ (function () {
755
+ function GuidedTourModule() {
756
+ }
757
+ GuidedTourModule.forRoot = function () {
758
+ return {
759
+ ngModule: GuidedTourModule,
760
+ providers: [i0.ErrorHandler, GuidedTourService],
761
+ };
762
+ };
763
+ return GuidedTourModule;
764
+ }());
765
+ GuidedTourModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
766
+ GuidedTourModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourModule, declarations: [GuidedTourComponent], imports: [i4.CommonModule, i3.MatIconModule], exports: [GuidedTourComponent] });
767
+ GuidedTourModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourModule, providers: [WindowRefService], imports: [[i4.CommonModule, i3.MatIconModule]] });
768
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: GuidedTourModule, decorators: [{
769
+ type: i0.NgModule,
770
+ args: [{
771
+ declarations: [GuidedTourComponent],
772
+ imports: [i4.CommonModule, i3.MatIconModule],
773
+ providers: [WindowRefService],
774
+ exports: [GuidedTourComponent],
775
+ entryComponents: [GuidedTourComponent],
776
+ }]
777
+ }] });
778
+
779
+ /*
780
+ * Public API Surface of ngx-guided-tour
781
+ */
782
+
783
+ /**
784
+ * Generated bundle index. Do not edit.
785
+ */
786
+
787
+ exports.GuidedTourComponent = GuidedTourComponent;
788
+ exports.GuidedTourModule = GuidedTourModule;
789
+ exports.GuidedTourService = GuidedTourService;
790
+ exports.Orientation = Orientation;
791
+ exports.WindowRefService = WindowRefService;
792
+
793
+ Object.defineProperty(exports, '__esModule', { value: true });
794
+
795
+ }));
796
+ //# sourceMappingURL=igot-cb-tour-guide.umd.js.map