@agorapulse/ui-components 13.2.9 → 13.2.10
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/agorapulse-ui-components-13.2.10.tgz +0 -0
- package/esm2020/index.mjs +1 -4
- package/esm2020/src/lib/agorapulse-ui-components.module.mjs +1 -16
- package/esm2020/src/lib/avatar/avatar.component.mjs +7 -3
- package/esm2020/src/lib/labels/label-list.component.mjs +1 -2
- package/fesm2015/agorapulse-ui-components.mjs +260 -543
- package/fesm2015/agorapulse-ui-components.mjs.map +1 -1
- package/fesm2020/agorapulse-ui-components.mjs +260 -541
- package/fesm2020/agorapulse-ui-components.mjs.map +1 -1
- package/index.d.ts +0 -3
- package/package.json +1 -1
- package/src/lib/agorapulse-ui-components.module.d.ts +51 -54
- package/src/lib/avatar/avatar.component.d.ts +2 -2
- package/agorapulse-ui-components-13.2.9.tgz +0 -0
- package/esm2020/src/lib/feature-onboarding/feature-onboarding.component.mjs +0 -35
- package/esm2020/src/lib/image-carousel/image-carousel.component.mjs +0 -165
- package/esm2020/src/lib/users-tag/users-tag.component.mjs +0 -96
- package/src/lib/feature-onboarding/feature-onboarding.component.d.ts +0 -18
- package/src/lib/image-carousel/image-carousel.component.d.ts +0 -52
- package/src/lib/users-tag/users-tag.component.d.ts +0 -32
package/index.d.ts
CHANGED
|
@@ -15,8 +15,6 @@ export { StepperComponent } from './src/lib/stepper/stepper.component';
|
|
|
15
15
|
export { ConfirmModalComponent } from './src/lib/confirm-modal/confirm-modal.component';
|
|
16
16
|
export { DatepickerComponent, DatepickerMode, I18nDatePicker, Period } from './src/lib/datepicker/datepicker.component';
|
|
17
17
|
export { DotsStepperComponent } from './src/lib/dots-stepper/dots-stepper.component';
|
|
18
|
-
export { ImageCarouselComponent, InstagramCarouselItemType } from './src/lib/image-carousel/image-carousel.component';
|
|
19
|
-
export { FeatureOnboardingComponent } from './src/lib/feature-onboarding/feature-onboarding.component';
|
|
20
18
|
export { LabelComponent } from './src/lib/labels/label.component';
|
|
21
19
|
export { LabelListComponent } from './src/lib/labels/label-list.component';
|
|
22
20
|
export { LabelsSelectorComponent } from './src/lib/labels-selector/labels-selector.component';
|
|
@@ -30,7 +28,6 @@ export { NotificationComponent } from './src/lib/notification/notification.compo
|
|
|
30
28
|
export { PaginatorButtonComponent } from './src/lib/paginator/paginator-button/paginator-button.component';
|
|
31
29
|
export { SlideToggleComponent } from './src/lib/slide-toggle/slide-toggle.component';
|
|
32
30
|
export { SnackbarsThreadComponent } from './src/lib/snackbars-thread/component/snackbars-thread.component';
|
|
33
|
-
export { UsersTagComponent, InstagramUserTag } from './src/lib/users-tag/users-tag.component';
|
|
34
31
|
export { SnackbarsThreadService } from './src/lib/snackbars-thread/service/snackbars-thread.service';
|
|
35
32
|
export { Step } from './src/lib/stepper/step.model';
|
|
36
33
|
export { ConfirmModalTexts } from './src/lib/confirm-modal/confirm-modal-texts.model';
|
package/package.json
CHANGED
|
@@ -7,61 +7,58 @@ import * as i5 from "./confirm-modal/confirm-modal.component";
|
|
|
7
7
|
import * as i6 from "./datepicker/datepicker.component";
|
|
8
8
|
import * as i7 from "./dots-stepper/dots-stepper.component";
|
|
9
9
|
import * as i8 from "./directives/ellipsis.directive";
|
|
10
|
-
import * as i9 from "./
|
|
11
|
-
import * as i10 from "./
|
|
12
|
-
import * as i11 from "./
|
|
13
|
-
import * as i12 from "./
|
|
14
|
-
import * as i13 from "./
|
|
15
|
-
import * as i14 from "./
|
|
16
|
-
import * as i15 from "./
|
|
17
|
-
import * as i16 from "./
|
|
18
|
-
import * as i17 from "./
|
|
19
|
-
import * as i18 from "./
|
|
20
|
-
import * as i19 from "./
|
|
21
|
-
import * as i20 from "./
|
|
22
|
-
import * as i21 from "./
|
|
23
|
-
import * as i22 from "./
|
|
24
|
-
import * as i23 from "./
|
|
25
|
-
import * as i24 from "./
|
|
26
|
-
import * as i25 from "./directives/
|
|
27
|
-
import * as i26 from "./directives/
|
|
28
|
-
import * as i27 from "./
|
|
29
|
-
import * as i28 from "
|
|
30
|
-
import * as i29 from "
|
|
31
|
-
import * as i30 from "
|
|
32
|
-
import * as i31 from "@
|
|
33
|
-
import * as i32 from "@
|
|
34
|
-
import * as i33 from "
|
|
35
|
-
import * as i34 from "@angular/
|
|
36
|
-
import * as i35 from "@
|
|
37
|
-
import * as i36 from "
|
|
38
|
-
import * as i37 from "@angular/
|
|
39
|
-
import * as i38 from "@angular/material/
|
|
40
|
-
import * as i39 from "@angular/material/
|
|
41
|
-
import * as i40 from "@angular/material/
|
|
42
|
-
import * as i41 from "@angular/material/
|
|
43
|
-
import * as i42 from "@angular/material/
|
|
44
|
-
import * as i43 from "@angular/material/
|
|
45
|
-
import * as i44 from "@angular/material/
|
|
46
|
-
import * as i45 from "@angular/material/
|
|
47
|
-
import * as i46 from "@angular/material/
|
|
48
|
-
import * as i47 from "@angular/material/
|
|
49
|
-
import * as i48 from "@angular/material/
|
|
50
|
-
import * as i49 from "@angular/material/
|
|
51
|
-
import * as i50 from "@angular/material/
|
|
52
|
-
import * as i51 from "@angular/material/
|
|
53
|
-
import * as i52 from "@angular/material/
|
|
54
|
-
import * as i53 from "@angular/material/
|
|
55
|
-
import * as i54 from "@angular/material/
|
|
56
|
-
import * as i55 from "@angular/material/
|
|
57
|
-
import * as i56 from "@angular/material/
|
|
58
|
-
import * as i57 from "@angular/material/
|
|
59
|
-
import * as i58 from "@angular/material/
|
|
60
|
-
import * as i59 from "@angular/material/dialog";
|
|
61
|
-
import * as i60 from "@angular/material/snack-bar";
|
|
62
|
-
import * as i61 from "@angular/material/table";
|
|
10
|
+
import * as i9 from "./labels/label-list.component";
|
|
11
|
+
import * as i10 from "./labels-selector/labels-selector.component";
|
|
12
|
+
import * as i11 from "./media-display-overlay/media-display-overlay-dialog.component";
|
|
13
|
+
import * as i12 from "./modal/modal.component";
|
|
14
|
+
import * as i13 from "./password-input/password-input.component";
|
|
15
|
+
import * as i14 from "./snackbar/snackbar.component";
|
|
16
|
+
import * as i15 from "./labels/label.component";
|
|
17
|
+
import * as i16 from "./notification/notification.component";
|
|
18
|
+
import * as i17 from "./paginator/paginator.component";
|
|
19
|
+
import * as i18 from "./paginator/paginator-button/paginator-button.component";
|
|
20
|
+
import * as i19 from "./slide-toggle/slide-toggle.component";
|
|
21
|
+
import * as i20 from "./snackbars-thread/component/snackbars-thread.component";
|
|
22
|
+
import * as i21 from "./tooltip-neo/tooltip-neo.component";
|
|
23
|
+
import * as i22 from "./directives/default-image.directive";
|
|
24
|
+
import * as i23 from "./directives/frozen-gif.directive";
|
|
25
|
+
import * as i24 from "./directives/equal-validator.directive";
|
|
26
|
+
import * as i25 from "./directives/multi-style-text.directive";
|
|
27
|
+
import * as i26 from "./directives/truncate-tooltip.directive";
|
|
28
|
+
import * as i27 from "./tooltip-neo/tooltip-neo.directive";
|
|
29
|
+
import * as i28 from "@agorapulse/ui-symbol";
|
|
30
|
+
import * as i29 from "@angular/common";
|
|
31
|
+
import * as i30 from "ngx-daterangepicker-material";
|
|
32
|
+
import * as i31 from "@angular/forms";
|
|
33
|
+
import * as i32 from "@ng-select/ng-select";
|
|
34
|
+
import * as i33 from "./popmenu/popmenu.module";
|
|
35
|
+
import * as i34 from "@angular/cdk/overlay";
|
|
36
|
+
import * as i35 from "@angular/material/badge";
|
|
37
|
+
import * as i36 from "@angular/material/button";
|
|
38
|
+
import * as i37 from "@angular/material/button-toggle";
|
|
39
|
+
import * as i38 from "@angular/material/chips";
|
|
40
|
+
import * as i39 from "@angular/material/expansion";
|
|
41
|
+
import * as i40 from "@angular/material/checkbox";
|
|
42
|
+
import * as i41 from "@angular/material/icon";
|
|
43
|
+
import * as i42 from "@angular/material/progress-bar";
|
|
44
|
+
import * as i43 from "@angular/material/progress-spinner";
|
|
45
|
+
import * as i44 from "@angular/material/radio";
|
|
46
|
+
import * as i45 from "@angular/material/slider";
|
|
47
|
+
import * as i46 from "@angular/material/slide-toggle";
|
|
48
|
+
import * as i47 from "@angular/material/menu";
|
|
49
|
+
import * as i48 from "@angular/material/sidenav";
|
|
50
|
+
import * as i49 from "@angular/material/toolbar";
|
|
51
|
+
import * as i50 from "@angular/material/card";
|
|
52
|
+
import * as i51 from "@angular/material/divider";
|
|
53
|
+
import * as i52 from "@angular/material/grid-list";
|
|
54
|
+
import * as i53 from "@angular/material/list";
|
|
55
|
+
import * as i54 from "@angular/material/tabs";
|
|
56
|
+
import * as i55 from "@angular/material/stepper";
|
|
57
|
+
import * as i56 from "@angular/material/dialog";
|
|
58
|
+
import * as i57 from "@angular/material/snack-bar";
|
|
59
|
+
import * as i58 from "@angular/material/table";
|
|
63
60
|
export declare class AgorapulseUiComponentsModule {
|
|
64
61
|
static ɵfac: i0.ɵɵFactoryDeclaration<AgorapulseUiComponentsModule, never>;
|
|
65
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AgorapulseUiComponentsModule, [typeof i1.AddCommentComponent, typeof i2.AvatarComponent, typeof i3.AutosizeTextareaDirective, typeof i4.StepperComponent, typeof i5.ConfirmModalComponent, typeof i6.DatepickerComponent, typeof i7.DotsStepperComponent, typeof i8.EllipsisDirective, typeof i9.
|
|
62
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AgorapulseUiComponentsModule, [typeof i1.AddCommentComponent, typeof i2.AvatarComponent, typeof i3.AutosizeTextareaDirective, typeof i4.StepperComponent, typeof i5.ConfirmModalComponent, typeof i6.DatepickerComponent, typeof i7.DotsStepperComponent, typeof i8.EllipsisDirective, typeof i9.LabelListComponent, typeof i10.LabelsSelectorComponent, typeof i11.MediaDisplayOverlayDialogComponent, typeof i12.ModalComponent, typeof i13.PasswordInputComponent, typeof i14.SnackBarComponent, typeof i15.LabelComponent, typeof i16.NotificationComponent, typeof i17.PaginatorComponent, typeof i18.PaginatorButtonComponent, typeof i19.SlideToggleComponent, typeof i20.SnackbarsThreadComponent, typeof i21.TooltipNeoComponent, typeof i3.AutosizeTextareaDirective, typeof i22.DefaultImageDirective, typeof i23.FrozenGifDirective, typeof i19.SlideToggleComponent, typeof i24.EqualValidatorDirective, typeof i25.MultiStyleTextDirective, typeof i26.TruncateTooltipDirective, typeof i27.TooltipNeoDirective], [typeof i28.AgorapulseUiSymbolModule, typeof i29.CommonModule, typeof i30.NgxDaterangepickerMd, typeof i31.FormsModule, typeof i31.ReactiveFormsModule, typeof i32.NgSelectModule, typeof i33.PopmenuModule, typeof i34.OverlayModule, typeof i35.MatBadgeModule, typeof i36.MatButtonModule, typeof i37.MatButtonToggleModule, typeof i38.MatChipsModule, typeof i39.MatExpansionModule, typeof i40.MatCheckboxModule, typeof i41.MatIconModule, typeof i42.MatProgressBarModule, typeof i43.MatProgressSpinnerModule, typeof i44.MatRadioModule, typeof i45.MatSliderModule, typeof i46.MatSlideToggleModule, typeof i47.MatMenuModule, typeof i48.MatSidenavModule, typeof i49.MatToolbarModule, typeof i50.MatCardModule, typeof i51.MatDividerModule, typeof i52.MatGridListModule, typeof i53.MatListModule, typeof i54.MatTabsModule, typeof i55.MatStepperModule, typeof i56.MatDialogModule, typeof i57.MatSnackBarModule, typeof i58.MatTableModule], [typeof i31.FormsModule, typeof i31.ReactiveFormsModule, typeof i1.AddCommentComponent, typeof i2.AvatarComponent, typeof i4.StepperComponent, typeof i5.ConfirmModalComponent, typeof i6.DatepickerComponent, typeof i7.DotsStepperComponent, typeof i8.EllipsisDirective, typeof i15.LabelComponent, typeof i9.LabelListComponent, typeof i11.MediaDisplayOverlayDialogComponent, typeof i12.ModalComponent, typeof i13.PasswordInputComponent, typeof i14.SnackBarComponent, typeof i10.LabelsSelectorComponent, typeof i16.NotificationComponent, typeof i17.PaginatorComponent, typeof i18.PaginatorButtonComponent, typeof i19.SlideToggleComponent, typeof i20.SnackbarsThreadComponent, typeof i3.AutosizeTextareaDirective, typeof i22.DefaultImageDirective, typeof i23.FrozenGifDirective, typeof i24.EqualValidatorDirective, typeof i25.MultiStyleTextDirective, typeof i26.TruncateTooltipDirective, typeof i27.TooltipNeoDirective, typeof i32.NgSelectModule, typeof i33.PopmenuModule, typeof i35.MatBadgeModule, typeof i36.MatButtonModule, typeof i37.MatButtonToggleModule, typeof i40.MatCheckboxModule, typeof i38.MatChipsModule, typeof i39.MatExpansionModule, typeof i41.MatIconModule, typeof i42.MatProgressBarModule, typeof i43.MatProgressSpinnerModule, typeof i44.MatRadioModule, typeof i45.MatSliderModule, typeof i46.MatSlideToggleModule, typeof i47.MatMenuModule, typeof i48.MatSidenavModule, typeof i49.MatToolbarModule, typeof i50.MatCardModule, typeof i51.MatDividerModule, typeof i52.MatGridListModule, typeof i53.MatListModule, typeof i54.MatTabsModule, typeof i55.MatStepperModule, typeof i56.MatDialogModule, typeof i57.MatSnackBarModule, typeof i58.MatTableModule]>;
|
|
66
63
|
static ɵinj: i0.ɵɵInjectorDeclaration<AgorapulseUiComponentsModule>;
|
|
67
64
|
}
|
|
@@ -9,8 +9,8 @@ export declare class AvatarComponent implements OnInit, OnChanges {
|
|
|
9
9
|
imageUrl: string;
|
|
10
10
|
loading: 'auto' | 'lazy' | 'eager';
|
|
11
11
|
outerBorderHidden: boolean;
|
|
12
|
-
size: 'large' | 'normal' | 'medium' | 'medium-sm' | 'small' | 'mini' | 'mini-sm' | 'micro' | 'facebook' | 'twitter' | 'linkedin' | 'instagram' | 'youtube' | 'google';
|
|
13
|
-
social: 'facebook' | 'instagram' | 'linkedin' | 'twitter' | 'youtube' | 'google';
|
|
12
|
+
size: 'large' | 'large-sm' | 'normal' | 'medium' | 'medium-sm' | 'small' | 'mini' | 'mini-sm' | 'micro' | 'facebook' | 'twitter' | 'linkedin' | 'instagram' | 'youtube' | 'google';
|
|
13
|
+
social: 'facebook' | 'instagram' | 'linkedin' | 'tiktok' | 'twitter' | 'youtube' | 'google';
|
|
14
14
|
username: string;
|
|
15
15
|
rounded: boolean;
|
|
16
16
|
online: boolean;
|
|
Binary file
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/material/dialog";
|
|
4
|
-
import * as i2 from "../dots-stepper/dots-stepper.component";
|
|
5
|
-
import * as i3 from "@agorapulse/ui-symbol";
|
|
6
|
-
import * as i4 from "@angular/material/button";
|
|
7
|
-
import * as i5 from "../modal/modal.component";
|
|
8
|
-
import * as i6 from "@angular/common";
|
|
9
|
-
export class FeatureOnboardingComponent {
|
|
10
|
-
constructor(dialogRef) {
|
|
11
|
-
this.dialogRef = dialogRef;
|
|
12
|
-
// translations
|
|
13
|
-
this.backButtonLabel = '';
|
|
14
|
-
this.finishButtonLabel = '';
|
|
15
|
-
this.nextButtonLabel = '';
|
|
16
|
-
this.arrowsDisplayed = false; // To display arrows to switch element on carousel
|
|
17
|
-
this.slideDisplayedIndex = 0; // The current element displayed
|
|
18
|
-
}
|
|
19
|
-
onClickNext() {
|
|
20
|
-
this.slideDisplayedIndex !== this.templates.length - 1 ? this.slideDisplayedIndex = this.slideDisplayedIndex + 1 : this.onCloseCarousel();
|
|
21
|
-
}
|
|
22
|
-
onClickPrevious() {
|
|
23
|
-
this.slideDisplayedIndex = this.slideDisplayedIndex - 1;
|
|
24
|
-
}
|
|
25
|
-
onCloseCarousel() {
|
|
26
|
-
this.dialogRef.close(true);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
/** @nocollapse */ /** @nocollapse */ FeatureOnboardingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FeatureOnboardingComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
-
/** @nocollapse */ /** @nocollapse */ FeatureOnboardingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: FeatureOnboardingComponent, selector: "ap-feature-onboarding", ngImport: i0, template: "<ng-template #mainTemplate>\n <div class=\"carousel-main-container\">\n <div class=\"carousel-content\">\n <div *ngFor=\"let template of templates; let i = index\"\n class=\"carousel-slide-element\"\n [class.carousel-slide-element-not-displayed]=\"i !== slideDisplayedIndex\"\n [class.carousel-slide-element-active]=\"i === slideDisplayedIndex\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <div class=\"carousel-dots-container\">\n <ap-dots-stepper\n fxLayout=\"row\"\n fxLayoutAlign=\"center\"\n size=\"small\"\n *ngIf=\"templates.length > 1\"\n [items]=\"templates\"\n [index]=\"slideDisplayedIndex\"\n (dotClick)=\"slideDisplayedIndex = $event\"></ap-dots-stepper>\n </div>\n </div>\n\n <div *ngIf=\"arrowsDisplayed\">\n <ap-symbol *ngIf=\"slideDisplayedIndex !== 0\"\n class=\"nav-button prev\"\n [symbolId]=\"'arrow-button-left'\"\n (click)=\"onClickPrevious()\">\n </ap-symbol>\n\n <ap-symbol class=\"nav-button next\"\n [symbolId]=\"'arrow-button-right'\"\n (click)=\"onClickNext(); $event.stopPropagation();\">\n </ap-symbol>\n </div>\n </div>\n\n <div class=\"carousel-footer\">\n <div class=\"button-container\">\n <button *ngIf=\"slideDisplayedIndex !== 0\"\n mat-flat-button\n class=\"carousel-previous-button\"\n (click)=\"onClickPrevious()\">\n {{backButtonLabel}}\n </button>\n <button mat-flat-button\n [color]=\"'primary'\"\n (click)=\"onClickNext()\">\n <div *ngIf=\"slideDisplayedIndex !== templates.length - 1\">{{nextButtonLabel}}</div>\n <div *ngIf=\"slideDisplayedIndex === templates.length - 1\">{{finishButtonLabel}}</div>\n </button>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ap-modal class=\"design-system\"\n [closable]=\"false\"\n [mainTemplate]=\"mainTemplate\"\n></ap-modal>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}ap-modal ::ng-deep .modal-wrapper{padding:0!important}ap-modal ::ng-deep .modal-wrapper .content{padding:0!important}.carousel-main-container{display:flex;flex-direction:column;overflow:hidden}.carousel-main-container .carousel-content{width:100%;height:100%;position:relative;margin:auto;justify-content:center;align-items:center}.carousel-main-container .carousel-content .carousel-slide-element,.carousel-main-container .carousel-content .carousel-slide-element.carousel-slide-element-not-displayed{display:none}.carousel-main-container .carousel-content .carousel-slide-element.carousel-slide-element-active{display:flex;flex-direction:column;justify-content:center;align-items:center}.carousel-main-container .carousel-content .nav-button{width:30px;height:30px;position:absolute;top:0;bottom:0;cursor:pointer;margin:auto;opacity:.4;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}.carousel-main-container .carousel-content .nav-button.tiny{width:20px;height:20px}.carousel-main-container .carousel-content .nav-button path{fill:#fffc}.carousel-main-container .carousel-content .nav-button.prev{left:12px}.carousel-main-container .carousel-content .nav-button.next{right:12px}.carousel-main-container .carousel-content .nav-button.disabled{display:none}.carousel-main-container .carousel-content .carousel-dots-container{height:28px;margin-bottom:16px}.carousel-main-container .carousel-footer{align-items:center;justify-content:flex-end;display:flex;padding:0 16px;height:68px;border-top:1px solid #eaecef}.carousel-main-container .carousel-footer .button-container{margin-right:24px}.carousel-main-container .carousel-footer .button-container .carousel-previous-button{margin-right:8px}\n"], components: [{ type: i2.DotsStepperComponent, selector: "ap-dots-stepper", inputs: ["disabled", "forwardAllowed", "index", "items", "size"], outputs: ["dotClick"] }, { type: i3.SymbolComponent, selector: "ap-symbol", inputs: ["color", "id", "symbolId", "size", "state"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.ModalComponent, selector: "ap-modal", inputs: ["closable", "headerBottomBorderEnabled", "footerTemplate", "footerVisible", "headerTemplate", "headerVisible", "mainTemplate", "config", "containerStyle", "headerStyle", "contentStyle", "footerStyle", "defaultLayout"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: FeatureOnboardingComponent, decorators: [{
|
|
32
|
-
type: Component,
|
|
33
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-feature-onboarding', template: "<ng-template #mainTemplate>\n <div class=\"carousel-main-container\">\n <div class=\"carousel-content\">\n <div *ngFor=\"let template of templates; let i = index\"\n class=\"carousel-slide-element\"\n [class.carousel-slide-element-not-displayed]=\"i !== slideDisplayedIndex\"\n [class.carousel-slide-element-active]=\"i === slideDisplayedIndex\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <div class=\"carousel-dots-container\">\n <ap-dots-stepper\n fxLayout=\"row\"\n fxLayoutAlign=\"center\"\n size=\"small\"\n *ngIf=\"templates.length > 1\"\n [items]=\"templates\"\n [index]=\"slideDisplayedIndex\"\n (dotClick)=\"slideDisplayedIndex = $event\"></ap-dots-stepper>\n </div>\n </div>\n\n <div *ngIf=\"arrowsDisplayed\">\n <ap-symbol *ngIf=\"slideDisplayedIndex !== 0\"\n class=\"nav-button prev\"\n [symbolId]=\"'arrow-button-left'\"\n (click)=\"onClickPrevious()\">\n </ap-symbol>\n\n <ap-symbol class=\"nav-button next\"\n [symbolId]=\"'arrow-button-right'\"\n (click)=\"onClickNext(); $event.stopPropagation();\">\n </ap-symbol>\n </div>\n </div>\n\n <div class=\"carousel-footer\">\n <div class=\"button-container\">\n <button *ngIf=\"slideDisplayedIndex !== 0\"\n mat-flat-button\n class=\"carousel-previous-button\"\n (click)=\"onClickPrevious()\">\n {{backButtonLabel}}\n </button>\n <button mat-flat-button\n [color]=\"'primary'\"\n (click)=\"onClickNext()\">\n <div *ngIf=\"slideDisplayedIndex !== templates.length - 1\">{{nextButtonLabel}}</div>\n <div *ngIf=\"slideDisplayedIndex === templates.length - 1\">{{finishButtonLabel}}</div>\n </button>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ap-modal class=\"design-system\"\n [closable]=\"false\"\n [mainTemplate]=\"mainTemplate\"\n></ap-modal>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}ap-modal ::ng-deep .modal-wrapper{padding:0!important}ap-modal ::ng-deep .modal-wrapper .content{padding:0!important}.carousel-main-container{display:flex;flex-direction:column;overflow:hidden}.carousel-main-container .carousel-content{width:100%;height:100%;position:relative;margin:auto;justify-content:center;align-items:center}.carousel-main-container .carousel-content .carousel-slide-element,.carousel-main-container .carousel-content .carousel-slide-element.carousel-slide-element-not-displayed{display:none}.carousel-main-container .carousel-content .carousel-slide-element.carousel-slide-element-active{display:flex;flex-direction:column;justify-content:center;align-items:center}.carousel-main-container .carousel-content .nav-button{width:30px;height:30px;position:absolute;top:0;bottom:0;cursor:pointer;margin:auto;opacity:.4;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}.carousel-main-container .carousel-content .nav-button.tiny{width:20px;height:20px}.carousel-main-container .carousel-content .nav-button path{fill:#fffc}.carousel-main-container .carousel-content .nav-button.prev{left:12px}.carousel-main-container .carousel-content .nav-button.next{right:12px}.carousel-main-container .carousel-content .nav-button.disabled{display:none}.carousel-main-container .carousel-content .carousel-dots-container{height:28px;margin-bottom:16px}.carousel-main-container .carousel-footer{align-items:center;justify-content:flex-end;display:flex;padding:0 16px;height:68px;border-top:1px solid #eaecef}.carousel-main-container .carousel-footer .button-container{margin-right:24px}.carousel-main-container .carousel-footer .button-container .carousel-previous-button{margin-right:8px}\n"] }]
|
|
34
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }]; } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1vbmJvYXJkaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9zcmMvbGliL2ZlYXR1cmUtb25ib2FyZGluZy9mZWF0dXJlLW9uYm9hcmRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NyYy9saWIvZmVhdHVyZS1vbmJvYXJkaW5nL2ZlYXR1cmUtb25ib2FyZGluZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFVdkIsTUFBTSxPQUFPLDBCQUEwQjtJQVduQyxZQUFtQixTQUEyQztRQUEzQyxjQUFTLEdBQVQsU0FBUyxDQUFrQztRQVQ5RCxlQUFlO1FBQ2Ysb0JBQWUsR0FBVyxFQUFFLENBQUM7UUFDN0Isc0JBQWlCLEdBQVcsRUFBRSxDQUFDO1FBQy9CLG9CQUFlLEdBQVcsRUFBRSxDQUFDO1FBRTdCLG9CQUFlLEdBQVksS0FBSyxDQUFDLENBQUMsa0RBQWtEO1FBRXBGLHdCQUFtQixHQUFXLENBQUMsQ0FBQyxDQUFDLGdDQUFnQztJQUdqRSxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDOUksQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7OzZKQXhCUSwwQkFBMEI7aUpBQTFCLDBCQUEwQiw2RENidkMscS9FQXlEQTsyRkQ1Q2EsMEJBQTBCO2tCQU50QyxTQUFTO3NDQUNXLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZ1JlZn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcblxuQENvbXBvbmVudCh7XG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc2VsZWN0b3I6ICdhcC1mZWF0dXJlLW9uYm9hcmRpbmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWF0dXJlLW9uYm9hcmRpbmcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZlYXR1cmUtb25ib2FyZGluZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVPbmJvYXJkaW5nQ29tcG9uZW50IHtcblxuICAgIC8vIHRyYW5zbGF0aW9uc1xuICAgIGJhY2tCdXR0b25MYWJlbDogc3RyaW5nID0gJyc7XG4gICAgZmluaXNoQnV0dG9uTGFiZWw6IHN0cmluZyA9ICcnO1xuICAgIG5leHRCdXR0b25MYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgICBhcnJvd3NEaXNwbGF5ZWQ6IGJvb2xlYW4gPSBmYWxzZTsgLy8gVG8gZGlzcGxheSBhcnJvd3MgdG8gc3dpdGNoIGVsZW1lbnQgb24gY2Fyb3VzZWxcbiAgICB0ZW1wbGF0ZXM6IGFueVtdOyAvLyBPbmUgdGVtcGxhdGUgcmVwcmVzZW50IG9uZSBlbGVtZW50IG9mIHRoZSBjYXJvdXNlbFxuICAgIHNsaWRlRGlzcGxheWVkSW5kZXg6IG51bWJlciA9IDA7IC8vIFRoZSBjdXJyZW50IGVsZW1lbnQgZGlzcGxheWVkXG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tcG9uZW50VHlwZTxhbnk+Pikge1xuICAgIH1cblxuICAgIG9uQ2xpY2tOZXh0KCkge1xuICAgICAgICB0aGlzLnNsaWRlRGlzcGxheWVkSW5kZXggIT09IHRoaXMudGVtcGxhdGVzLmxlbmd0aCAtIDEgPyB0aGlzLnNsaWRlRGlzcGxheWVkSW5kZXggPSB0aGlzLnNsaWRlRGlzcGxheWVkSW5kZXggKyAxIDogdGhpcy5vbkNsb3NlQ2Fyb3VzZWwoKTtcbiAgICB9XG5cbiAgICBvbkNsaWNrUHJldmlvdXMoKSB7XG4gICAgICAgIHRoaXMuc2xpZGVEaXNwbGF5ZWRJbmRleCA9IHRoaXMuc2xpZGVEaXNwbGF5ZWRJbmRleCAtIDE7XG4gICAgfVxuXG4gICAgb25DbG9zZUNhcm91c2VsKCkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0cnVlKTtcbiAgICB9XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjbWFpblRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJvdXNlbC1tYWluLWNvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGVtcGxhdGUgb2YgdGVtcGxhdGVzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJvdXNlbC1zbGlkZS1lbGVtZW50XCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmNhcm91c2VsLXNsaWRlLWVsZW1lbnQtbm90LWRpc3BsYXllZF09XCJpICE9PSBzbGlkZURpc3BsYXllZEluZGV4XCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmNhcm91c2VsLXNsaWRlLWVsZW1lbnQtYWN0aXZlXT1cImkgPT09IHNsaWRlRGlzcGxheWVkSW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtZG90cy1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFwLWRvdHMtc3RlcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0ZW1wbGF0ZXMubGVuZ3RoID4gMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwidGVtcGxhdGVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbmRleF09XCJzbGlkZURpc3BsYXllZEluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChkb3RDbGljayk9XCJzbGlkZURpc3BsYXllZEluZGV4ID0gJGV2ZW50XCI+PC9hcC1kb3RzLXN0ZXBwZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImFycm93c0Rpc3BsYXllZFwiPlxuICAgICAgICAgICAgICAgIDxhcC1zeW1ib2wgKm5nSWY9XCJzbGlkZURpc3BsYXllZEluZGV4ICE9PSAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWJ1dHRvbiBwcmV2XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzeW1ib2xJZF09XCInYXJyb3ctYnV0dG9uLWxlZnQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrUHJldmlvdXMoKVwiPlxuICAgICAgICAgICAgICAgIDwvYXAtc3ltYm9sPlxuXG4gICAgICAgICAgICAgICAgPGFwLXN5bWJvbCBjbGFzcz1cIm5hdi1idXR0b24gbmV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbc3ltYm9sSWRdPVwiJ2Fycm93LWJ1dHRvbi1yaWdodCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tOZXh0KCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIj5cbiAgICAgICAgICAgICAgICA8L2FwLXN5bWJvbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtZm9vdGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJzbGlkZURpc3BsYXllZEluZGV4ICE9PSAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdC1mbGF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJvdXNlbC1wcmV2aW91cy1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tQcmV2aW91cygpXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7YmFja0J1dHRvbkxhYmVsfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIidwcmltYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja05leHQoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2xpZGVEaXNwbGF5ZWRJbmRleCAhPT0gdGVtcGxhdGVzLmxlbmd0aCAtIDFcIj57e25leHRCdXR0b25MYWJlbH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzbGlkZURpc3BsYXllZEluZGV4ID09PSB0ZW1wbGF0ZXMubGVuZ3RoIC0gMVwiPnt7ZmluaXNoQnV0dG9uTGFiZWx9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPGFwLW1vZGFsIGNsYXNzPVwiZGVzaWduLXN5c3RlbVwiXG4gICAgICAgICAgW2Nsb3NhYmxlXT1cImZhbHNlXCJcbiAgICAgICAgICBbbWFpblRlbXBsYXRlXT1cIm1haW5UZW1wbGF0ZVwiXG4+PC9hcC1tb2RhbD5cbiJdfQ==
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { animate, style } from '@angular/animations';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/animations";
|
|
5
|
-
import * as i2 from "../users-tag/users-tag.component";
|
|
6
|
-
import * as i3 from "@angular/material/icon";
|
|
7
|
-
import * as i4 from "../dots-stepper/dots-stepper.component";
|
|
8
|
-
import * as i5 from "@angular/common";
|
|
9
|
-
import * as i6 from "../directives/frozen-gif.directive";
|
|
10
|
-
import * as i7 from "../directives/default-image.directive";
|
|
11
|
-
export var InstagramCarouselItemType;
|
|
12
|
-
(function (InstagramCarouselItemType) {
|
|
13
|
-
InstagramCarouselItemType["IMAGE"] = "photo";
|
|
14
|
-
InstagramCarouselItemType["VIDEO"] = "video";
|
|
15
|
-
})(InstagramCarouselItemType || (InstagramCarouselItemType = {}));
|
|
16
|
-
export class ImageCarouselComponent {
|
|
17
|
-
constructor(animationBuilder) {
|
|
18
|
-
this.animationBuilder = animationBuilder;
|
|
19
|
-
this.InstagramCarouselItemType = InstagramCarouselItemType;
|
|
20
|
-
this.items = [];
|
|
21
|
-
this.dotsInside = false;
|
|
22
|
-
this.soundEnabled = false;
|
|
23
|
-
this.supportGif = true;
|
|
24
|
-
this.tinyMode = false;
|
|
25
|
-
this.tagOverlayShown = true;
|
|
26
|
-
this.currentImageChanged = new EventEmitter();
|
|
27
|
-
this._selectedIndex = 0;
|
|
28
|
-
this.carouselOffset = 0;
|
|
29
|
-
this.videoPlayers = [];
|
|
30
|
-
}
|
|
31
|
-
get selectedIndex() {
|
|
32
|
-
return this._selectedIndex;
|
|
33
|
-
}
|
|
34
|
-
set selectedIndex(value) {
|
|
35
|
-
this.videoPause(this.selectedIndex);
|
|
36
|
-
if (value < 0) {
|
|
37
|
-
value = 0;
|
|
38
|
-
}
|
|
39
|
-
if (value > this.items.length - 1) {
|
|
40
|
-
value = this.items.length - 1;
|
|
41
|
-
}
|
|
42
|
-
this._selectedIndex = value;
|
|
43
|
-
this.move();
|
|
44
|
-
if (this.tinyMode && this.mouseOver) {
|
|
45
|
-
this.videoPlay(this.selectedIndex);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
ngOnChanges(changes) {
|
|
49
|
-
if (changes.items && changes.items.previousValue?.length > changes.items.currentValue.length) {
|
|
50
|
-
const itemsLength = changes.items.currentValue.length - 1;
|
|
51
|
-
if (this._selectedIndex > itemsLength) {
|
|
52
|
-
this._selectedIndex = itemsLength;
|
|
53
|
-
this.move();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
isPrevButtonEnabled() {
|
|
58
|
-
return this.selectedIndex > 0;
|
|
59
|
-
}
|
|
60
|
-
isNextButtonEnabled() {
|
|
61
|
-
if (this.items && this.items[this.selectedIndex]) {
|
|
62
|
-
return this.selectedIndex < this.items.length - 1;
|
|
63
|
-
}
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
isVideo() {
|
|
67
|
-
if (this.items && this.items[this.selectedIndex]) {
|
|
68
|
-
return this.items[this.selectedIndex].type === InstagramCarouselItemType.VIDEO;
|
|
69
|
-
}
|
|
70
|
-
return false;
|
|
71
|
-
}
|
|
72
|
-
dotsDisplayed() {
|
|
73
|
-
if (this.items && this.items[this.selectedIndex]) {
|
|
74
|
-
return this.items.length > 1;
|
|
75
|
-
}
|
|
76
|
-
return false;
|
|
77
|
-
}
|
|
78
|
-
prev() {
|
|
79
|
-
this.selectedIndex -= 1;
|
|
80
|
-
this.currentImageChanged.emit(this.items[this.selectedIndex]);
|
|
81
|
-
}
|
|
82
|
-
next() {
|
|
83
|
-
this.selectedIndex += 1;
|
|
84
|
-
this.currentImageChanged.emit(this.items[this.selectedIndex]);
|
|
85
|
-
}
|
|
86
|
-
play(event, index) {
|
|
87
|
-
if (!this.tinyMode) {
|
|
88
|
-
const videoPlayer = this.videoPlayers[index];
|
|
89
|
-
if (videoPlayer) {
|
|
90
|
-
videoPlayer.paused ? this.videoPlay(index) : this.videoPause(index);
|
|
91
|
-
}
|
|
92
|
-
event.stopPropagation();
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
move(instantaneous = false) {
|
|
96
|
-
this.carouselOffset = -this.carousel.nativeElement.offsetWidth * this.selectedIndex;
|
|
97
|
-
this.animationBuilder.build(animate(instantaneous ? '1ms' : '250ms ease-in', style({ transform: `translateX(${this.carouselOffset}px)` }))).create(this.carousel.nativeElement).play();
|
|
98
|
-
}
|
|
99
|
-
onMouseEntersVideo(event, index) {
|
|
100
|
-
this.mouseOver = true;
|
|
101
|
-
if (this.tinyMode) {
|
|
102
|
-
this.videoPlay(index);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
onMouseLeavesVideo(event, index) {
|
|
106
|
-
this.mouseOver = false;
|
|
107
|
-
if (this.tinyMode) {
|
|
108
|
-
this.videoPause(index);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
onResize(event) {
|
|
112
|
-
this.move(true);
|
|
113
|
-
}
|
|
114
|
-
registerVideoPlayer(event, index) {
|
|
115
|
-
this.videoPlayers[index] = event.target;
|
|
116
|
-
event.target.muted = !this.soundEnabled;
|
|
117
|
-
}
|
|
118
|
-
videoPause(index) {
|
|
119
|
-
const videoPlayer = this.videoPlayers[index];
|
|
120
|
-
if (videoPlayer) {
|
|
121
|
-
videoPlayer.pause();
|
|
122
|
-
this.isPlaying = false;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
videoPlay(index) {
|
|
126
|
-
const videoPlayer = this.videoPlayers[index];
|
|
127
|
-
if (videoPlayer) {
|
|
128
|
-
videoPlayer.play();
|
|
129
|
-
this.isPlaying = true;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
switchSound() {
|
|
133
|
-
this.soundEnabled = !this.soundEnabled;
|
|
134
|
-
for (const player of this.videoPlayers) {
|
|
135
|
-
player.muted = !this.soundEnabled;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
/** @nocollapse */ /** @nocollapse */ ImageCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: ImageCarouselComponent, deps: [{ token: i1.AnimationBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
140
|
-
/** @nocollapse */ /** @nocollapse */ ImageCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: ImageCarouselComponent, selector: "ap-image-carousel", inputs: { items: "items", dotsInside: "dotsInside", soundEnabled: "soundEnabled", supportGif: "supportGif", tinyMode: "tinyMode", tagOverlayShown: "tagOverlayShown" }, outputs: { currentImageChanged: "currentImageChanged" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<section *ngIf=\"items && items.length > 0 && items[0].url\">\n <div class=\"carousel-wrapper\"\n (mouseenter)=\"onMouseEntersVideo($event, selectedIndex)\"\n (mouseleave)=\"onMouseLeavesVideo($event, selectedIndex)\">\n <ul class=\"carousel-inner\" #carousel>\n <li *ngFor=\"let item of items; let i = index\" class=\"carousel-item\">\n <ng-template [ngIf]=\"item.type === InstagramCarouselItemType.IMAGE && item.url\">\n <img apFrozenGif\n id=\"imagePreview\"\n [apFrozen]=\"!supportGif\"\n [default]=\"'assets/img/default.png'\"\n [src]=\"item.url\">\n <ap-users-tag *ngIf=\"item.userTags?.length\"\n [userTags]=\"item.userTags\"\n [tagOverlayShown]=\"tagOverlayShown\"\n ></ap-users-tag>\n </ng-template>\n <ng-template [ngIf]=\"item.type === InstagramCarouselItemType.VIDEO && item.url\">\n <video [id]=\"'video-' + i\"\n [attr.poster]=\"item.thumbnailUrl\"\n [loop]=\"tinyMode\"\n [src]=\"item.url\"\n (click)=\"play($event, i)\"\n (ended)=\"isPlaying = false\"\n (loadstart)=\"registerVideoPlayer($event, i)\">\n </video>\n <svg class=\"play-button\"\n xmlns=\"http://www.w3.org/2000/svg\"\n (click)=\"play($event, i)\">\n <path *ngIf=\"!isPlaying\" d=\"M11,10 L18,13.74 18,22.28 11,26 M18,13.74 L26,18 26,18 18,22.28\"/>\n </svg>\n <mat-icon class=\"sound-button\"\n *ngIf=\"!tinyMode\"\n (click)=\"switchSound(); $event.stopPropagation();\">\n {{soundEnabled ? 'volume_up' : 'volume_off'}}\n </mat-icon>\n </ng-template>\n </li>\n </ul>\n\n <svg class=\"nav-button prev\"\n [ngClass]=\"{'disabled': !isPrevButtonEnabled(), 'tiny': tinyMode}\"\n (click)=\"prev(); $event.stopPropagation();\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 455 455\">\n <path d=\"M227.5,0C101.855,0,0,101.855,0,227.5S101.855,455,227.5,455S455,353.145,455,227.5S353.145,0,227.5,0z M199.476,355.589\n l-21.248-21.178L284.791,227.5L178.228,120.589l21.248-21.178L327.148,227.5L199.476,355.589z\"/>\n </svg>\n\n <svg class=\"nav-button next\"\n [ngClass]=\"{'disabled': !isNextButtonEnabled(), 'tiny': tinyMode}\"\n (click)=\"next(); $event.stopPropagation();\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 455 455\">\n <path d=\"M227.5,0C101.855,0,0,101.855,0,227.5S101.855,455,227.5,455S455,353.145,455,227.5S353.145,0,227.5,0z M199.476,355.589\n\t l-21.248-21.178L284.791,227.5L178.228,120.589l21.248-21.178L327.148,227.5L199.476,355.589z\"/>\n </svg>\n </div>\n <div [ngClass]=\"{'inside': dotsInside}\">\n <ap-dots-stepper\n fxLayout=\"row\"\n fxLayoutAlign=\"center\"\n size=\"small\"\n *ngIf=\"dotsDisplayed()\"\n [items]=\"items\"\n [index]=\"selectedIndex\"\n (dotClick)=\"selectedIndex = $event\"></ap-dots-stepper>\n </div>\n</section>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}section{position:relative}section .carousel-wrapper{overflow:hidden;width:100%;padding-top:100%;position:relative}section .carousel-wrapper .carousel-inner{position:absolute;top:0;margin:0;padding:0;width:100%;height:100%;display:flex;list-style:none}section .carousel-wrapper .carousel-inner .carousel-item{position:relative;width:100%;flex-shrink:0;text-align:center}section .carousel-wrapper .carousel-inner .carousel-item img,section .carousel-wrapper .carousel-inner .carousel-item video{height:100%;width:100%;object-fit:cover;object-position:center}section .carousel-wrapper .carousel-inner .carousel-item .play-button{z-index:1000;position:absolute;top:0;right:0;bottom:0;left:0;width:32px;height:32px;transform:scale(2);margin:auto;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}section .carousel-wrapper .carousel-inner .carousel-item .play-button path{fill:#fffc}section .carousel-wrapper .carousel-inner .carousel-item .sound-button{z-index:1000;position:absolute;right:8px;bottom:8px;color:#fff}section .carousel-wrapper .nav-button{width:30px;height:30px;position:absolute;top:0;bottom:0;cursor:pointer;margin:auto;opacity:.4;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}section .carousel-wrapper .nav-button.tiny{width:20px;height:20px}section .carousel-wrapper .nav-button path{fill:#fffc}section .carousel-wrapper .nav-button.prev{left:12px;transform:rotate(180deg)}section .carousel-wrapper .nav-button.next{right:12px}section .carousel-wrapper .nav-button.disabled{display:none}section ::ng-deep div.inside ap-dots-stepper div.dots{bottom:0;width:100%}\n"], components: [{ type: i2.UsersTagComponent, selector: "ap-users-tag", inputs: ["userTags", "tagOverlayShown"] }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4.DotsStepperComponent, selector: "ap-dots-stepper", inputs: ["disabled", "forwardAllowed", "index", "items", "size"], outputs: ["dotClick"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.FrozenGifDirective, selector: "img[apFrozenGif]", inputs: ["src", "apFrozen", "apGifEvents"] }, { type: i7.DefaultImageDirective, selector: "img[default]", inputs: ["src", "default"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: ImageCarouselComponent, decorators: [{
|
|
142
|
-
type: Component,
|
|
143
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-image-carousel', template: "<section *ngIf=\"items && items.length > 0 && items[0].url\">\n <div class=\"carousel-wrapper\"\n (mouseenter)=\"onMouseEntersVideo($event, selectedIndex)\"\n (mouseleave)=\"onMouseLeavesVideo($event, selectedIndex)\">\n <ul class=\"carousel-inner\" #carousel>\n <li *ngFor=\"let item of items; let i = index\" class=\"carousel-item\">\n <ng-template [ngIf]=\"item.type === InstagramCarouselItemType.IMAGE && item.url\">\n <img apFrozenGif\n id=\"imagePreview\"\n [apFrozen]=\"!supportGif\"\n [default]=\"'assets/img/default.png'\"\n [src]=\"item.url\">\n <ap-users-tag *ngIf=\"item.userTags?.length\"\n [userTags]=\"item.userTags\"\n [tagOverlayShown]=\"tagOverlayShown\"\n ></ap-users-tag>\n </ng-template>\n <ng-template [ngIf]=\"item.type === InstagramCarouselItemType.VIDEO && item.url\">\n <video [id]=\"'video-' + i\"\n [attr.poster]=\"item.thumbnailUrl\"\n [loop]=\"tinyMode\"\n [src]=\"item.url\"\n (click)=\"play($event, i)\"\n (ended)=\"isPlaying = false\"\n (loadstart)=\"registerVideoPlayer($event, i)\">\n </video>\n <svg class=\"play-button\"\n xmlns=\"http://www.w3.org/2000/svg\"\n (click)=\"play($event, i)\">\n <path *ngIf=\"!isPlaying\" d=\"M11,10 L18,13.74 18,22.28 11,26 M18,13.74 L26,18 26,18 18,22.28\"/>\n </svg>\n <mat-icon class=\"sound-button\"\n *ngIf=\"!tinyMode\"\n (click)=\"switchSound(); $event.stopPropagation();\">\n {{soundEnabled ? 'volume_up' : 'volume_off'}}\n </mat-icon>\n </ng-template>\n </li>\n </ul>\n\n <svg class=\"nav-button prev\"\n [ngClass]=\"{'disabled': !isPrevButtonEnabled(), 'tiny': tinyMode}\"\n (click)=\"prev(); $event.stopPropagation();\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 455 455\">\n <path d=\"M227.5,0C101.855,0,0,101.855,0,227.5S101.855,455,227.5,455S455,353.145,455,227.5S353.145,0,227.5,0z M199.476,355.589\n l-21.248-21.178L284.791,227.5L178.228,120.589l21.248-21.178L327.148,227.5L199.476,355.589z\"/>\n </svg>\n\n <svg class=\"nav-button next\"\n [ngClass]=\"{'disabled': !isNextButtonEnabled(), 'tiny': tinyMode}\"\n (click)=\"next(); $event.stopPropagation();\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 455 455\">\n <path d=\"M227.5,0C101.855,0,0,101.855,0,227.5S101.855,455,227.5,455S455,353.145,455,227.5S353.145,0,227.5,0z M199.476,355.589\n\t l-21.248-21.178L284.791,227.5L178.228,120.589l21.248-21.178L327.148,227.5L199.476,355.589z\"/>\n </svg>\n </div>\n <div [ngClass]=\"{'inside': dotsInside}\">\n <ap-dots-stepper\n fxLayout=\"row\"\n fxLayoutAlign=\"center\"\n size=\"small\"\n *ngIf=\"dotsDisplayed()\"\n [items]=\"items\"\n [index]=\"selectedIndex\"\n (dotClick)=\"selectedIndex = $event\"></ap-dots-stepper>\n </div>\n</section>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}section{position:relative}section .carousel-wrapper{overflow:hidden;width:100%;padding-top:100%;position:relative}section .carousel-wrapper .carousel-inner{position:absolute;top:0;margin:0;padding:0;width:100%;height:100%;display:flex;list-style:none}section .carousel-wrapper .carousel-inner .carousel-item{position:relative;width:100%;flex-shrink:0;text-align:center}section .carousel-wrapper .carousel-inner .carousel-item img,section .carousel-wrapper .carousel-inner .carousel-item video{height:100%;width:100%;object-fit:cover;object-position:center}section .carousel-wrapper .carousel-inner .carousel-item .play-button{z-index:1000;position:absolute;top:0;right:0;bottom:0;left:0;width:32px;height:32px;transform:scale(2);margin:auto;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}section .carousel-wrapper .carousel-inner .carousel-item .play-button path{fill:#fffc}section .carousel-wrapper .carousel-inner .carousel-item .sound-button{z-index:1000;position:absolute;right:8px;bottom:8px;color:#fff}section .carousel-wrapper .nav-button{width:30px;height:30px;position:absolute;top:0;bottom:0;cursor:pointer;margin:auto;opacity:.4;filter:drop-shadow(0 0 1px rgba(0,0,0,.25))}section .carousel-wrapper .nav-button.tiny{width:20px;height:20px}section .carousel-wrapper .nav-button path{fill:#fffc}section .carousel-wrapper .nav-button.prev{left:12px;transform:rotate(180deg)}section .carousel-wrapper .nav-button.next{right:12px}section .carousel-wrapper .nav-button.disabled{display:none}section ::ng-deep div.inside ap-dots-stepper div.dots{bottom:0;width:100%}\n"] }]
|
|
144
|
-
}], ctorParameters: function () { return [{ type: i1.AnimationBuilder }]; }, propDecorators: { carousel: [{
|
|
145
|
-
type: ViewChild,
|
|
146
|
-
args: ['carousel']
|
|
147
|
-
}], items: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], dotsInside: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}], soundEnabled: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}], supportGif: [{
|
|
154
|
-
type: Input
|
|
155
|
-
}], tinyMode: [{
|
|
156
|
-
type: Input
|
|
157
|
-
}], tagOverlayShown: [{
|
|
158
|
-
type: Input
|
|
159
|
-
}], currentImageChanged: [{
|
|
160
|
-
type: Output
|
|
161
|
-
}], onResize: [{
|
|
162
|
-
type: HostListener,
|
|
163
|
-
args: ['window:resize', ['$event']]
|
|
164
|
-
}] } });
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NyYy9saWIvaW1hZ2UtY2Fyb3VzZWwvaW1hZ2UtY2Fyb3VzZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NyYy9saWIvaW1hZ2UtY2Fyb3VzZWwvaW1hZ2UtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsT0FBTyxFQUFvQixLQUFLLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7O0FBR3JFLE1BQU0sQ0FBTixJQUFZLHlCQUdYO0FBSEQsV0FBWSx5QkFBeUI7SUFDakMsNENBQWUsQ0FBQTtJQUNmLDRDQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUhXLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFHcEM7QUFlRCxNQUFNLE9BQU8sc0JBQXNCO0lBcUIvQixZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5CL0MsOEJBQXlCLEdBQUcseUJBQXlCLENBQUM7UUFJcEQsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFDcEMsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFFdEIsd0JBQW1CLEdBQXdDLElBQUksWUFBWSxFQUF5QixDQUFDO1FBRXZHLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBR25CLGlCQUFZLEdBQXVCLEVBQUUsQ0FBQztJQUc3QyxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxhQUFhLENBQUMsS0FBYTtRQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNwQyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUU7WUFDWCxLQUFLLEdBQUcsQ0FBQyxDQUFDO1NBQ2I7UUFDRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDL0IsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUNqQztRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUMxRixNQUFNLFdBQVcsR0FBVyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLElBQUksSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxjQUFjLEdBQUcsV0FBVyxDQUFDO2dCQUNsQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDZjtTQUNKO0lBQ0wsQ0FBQztJQUVELG1CQUFtQjtRQUNmLE9BQU8sSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELG1CQUFtQjtRQUNmLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM5QyxPQUFPLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ3JEO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDOUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLEtBQUsseUJBQXlCLENBQUMsS0FBSyxDQUFDO1NBQ2xGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDOUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7U0FDaEM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFhO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLE1BQU0sV0FBVyxHQUFxQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9ELElBQUksV0FBVyxFQUFFO2dCQUNiLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdkU7WUFDRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRUQsSUFBSSxDQUFDLGdCQUF5QixLQUFLO1FBQy9CLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUNwRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUN2QixPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsY0FBYyxJQUFJLENBQUMsY0FBYyxLQUFLLEVBQUMsQ0FBQyxDQUFDLENBQy9HLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQUssRUFBRSxLQUFLO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDekI7SUFDTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBSyxFQUFFLEtBQUs7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjtJQUNMLENBQUM7SUFHRCxRQUFRLENBQUMsS0FBSztRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVNLG1CQUFtQixDQUFDLEtBQUssRUFBRSxLQUFhO1FBQzNDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN4QyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDNUMsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUFhO1FBQzVCLE1BQU0sV0FBVyxHQUFxQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9ELElBQUksV0FBVyxFQUFFO1lBQ2IsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFhO1FBQzNCLE1BQU0sV0FBVyxHQUFxQixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9ELElBQUksV0FBVyxFQUFFO1lBQ2IsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN2QyxLQUFLLE1BQU0sTUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDcEMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDckM7SUFDTCxDQUFDOzt5SkF0SlEsc0JBQXNCOzZJQUF0QixzQkFBc0IsbWRDakNuQyw4bEhBcUVBOzJGRHBDYSxzQkFBc0I7a0JBTmxDLFNBQVM7c0NBQ1csdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxtQkFBbUI7dUdBUUUsUUFBUTtzQkFBdEMsU0FBUzt1QkFBQyxVQUFVO2dCQUVaLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUksbUJBQW1CO3NCQUE1QixNQUFNO2dCQTJHUCxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2FuaW1hdGUsIEFuaW1hdGlvbkJ1aWxkZXIsIHN0eWxlfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7SW5zdGFncmFtVXNlclRhZ30gZnJvbSBcIi4uL3VzZXJzLXRhZy91c2Vycy10YWcuY29tcG9uZW50XCI7XG5cbmV4cG9ydCBlbnVtIEluc3RhZ3JhbUNhcm91c2VsSXRlbVR5cGUge1xuICAgIElNQUdFID0gJ3Bob3RvJyxcbiAgICBWSURFTyA9ICd2aWRlbydcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnN0YWdyYW1DYXJvdXNlbEl0ZW0ge1xuICAgIHR5cGU6IEluc3RhZ3JhbUNhcm91c2VsSXRlbVR5cGU7XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgdGh1bWJuYWlsVXJsPzogc3RyaW5nO1xuICAgIHVzZXJUYWdzPzogSW5zdGFncmFtVXNlclRhZ1tdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ2FwLWltYWdlLWNhcm91c2VsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2UtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ltYWdlLWNhcm91c2VsLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VDYXJvdXNlbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgICBwdWJsaWMgSW5zdGFncmFtQ2Fyb3VzZWxJdGVtVHlwZSA9IEluc3RhZ3JhbUNhcm91c2VsSXRlbVR5cGU7XG5cbiAgICBAVmlld0NoaWxkKCdjYXJvdXNlbCcpIHByaXZhdGUgY2Fyb3VzZWw6IEVsZW1lbnRSZWY7XG5cbiAgICBASW5wdXQoKSBpdGVtczogSW5zdGFncmFtQ2Fyb3VzZWxJdGVtW10gPSBbXTtcbiAgICBASW5wdXQoKSBkb3RzSW5zaWRlID0gZmFsc2U7XG4gICAgQElucHV0KCkgc291bmRFbmFibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgc3VwcG9ydEdpZiA9IHRydWU7XG4gICAgQElucHV0KCkgdGlueU1vZGUgPSBmYWxzZTtcbiAgICBASW5wdXQoKSB0YWdPdmVybGF5U2hvd24gPSB0cnVlO1xuXG4gICAgQE91dHB1dCgpIGN1cnJlbnRJbWFnZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnN0YWdyYW1DYXJvdXNlbEl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnN0YWdyYW1DYXJvdXNlbEl0ZW0+KCk7XG5cbiAgICBwcml2YXRlIF9zZWxlY3RlZEluZGV4ID0gMDtcbiAgICBwdWJsaWMgY2Fyb3VzZWxPZmZzZXQgPSAwO1xuICAgIHB1YmxpYyBpc1BsYXlpbmc6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBtb3VzZU92ZXI6IGJvb2xlYW47XG4gICAgcHVibGljIHZpZGVvUGxheWVyczogSFRNTFZpZGVvRWxlbWVudFtdID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFuaW1hdGlvbkJ1aWxkZXI6IEFuaW1hdGlvbkJ1aWxkZXIpIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNlbGVjdGVkSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkSW5kZXg7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCBzZWxlY3RlZEluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy52aWRlb1BhdXNlKHRoaXMuc2VsZWN0ZWRJbmRleCk7XG4gICAgICAgIGlmICh2YWx1ZSA8IDApIHtcbiAgICAgICAgICAgIHZhbHVlID0gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFsdWUgPiB0aGlzLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdGhpcy5pdGVtcy5sZW5ndGggLSAxO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSW5kZXggPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5tb3ZlKCk7XG4gICAgICAgIGlmICh0aGlzLnRpbnlNb2RlICYmIHRoaXMubW91c2VPdmVyKSB7XG4gICAgICAgICAgICB0aGlzLnZpZGVvUGxheSh0aGlzLnNlbGVjdGVkSW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoY2hhbmdlcy5pdGVtcyAmJiBjaGFuZ2VzLml0ZW1zLnByZXZpb3VzVmFsdWU/Lmxlbmd0aCA+IGNoYW5nZXMuaXRlbXMuY3VycmVudFZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgaXRlbXNMZW5ndGg6IG51bWJlciA9IGNoYW5nZXMuaXRlbXMuY3VycmVudFZhbHVlLmxlbmd0aCAtIDE7XG4gICAgICAgICAgICBpZiAodGhpcy5fc2VsZWN0ZWRJbmRleCA+IGl0ZW1zTGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJbmRleCA9IGl0ZW1zTGVuZ3RoO1xuICAgICAgICAgICAgICAgIHRoaXMubW92ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNQcmV2QnV0dG9uRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJbmRleCA+IDA7XG4gICAgfVxuXG4gICAgaXNOZXh0QnV0dG9uRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEluZGV4IDwgdGhpcy5pdGVtcy5sZW5ndGggLSAxO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpc1ZpZGVvKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5pdGVtcyAmJiB0aGlzLml0ZW1zW3RoaXMuc2VsZWN0ZWRJbmRleF0pIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLml0ZW1zW3RoaXMuc2VsZWN0ZWRJbmRleF0udHlwZSA9PT0gSW5zdGFncmFtQ2Fyb3VzZWxJdGVtVHlwZS5WSURFTztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgZG90c0Rpc3BsYXllZCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pdGVtcy5sZW5ndGggPiAxO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcmV2KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggLT0gMTtcbiAgICAgICAgdGhpcy5jdXJyZW50SW1hZ2VDaGFuZ2VkLmVtaXQodGhpcy5pdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKTtcbiAgICB9XG5cbiAgICBuZXh0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggKz0gMTtcbiAgICAgICAgdGhpcy5jdXJyZW50SW1hZ2VDaGFuZ2VkLmVtaXQodGhpcy5pdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKTtcbiAgICB9XG5cbiAgICBwbGF5KGV2ZW50LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy50aW55TW9kZSkge1xuICAgICAgICAgICAgY29uc3QgdmlkZW9QbGF5ZXI6IEhUTUxWaWRlb0VsZW1lbnQgPSB0aGlzLnZpZGVvUGxheWVyc1tpbmRleF07XG4gICAgICAgICAgICBpZiAodmlkZW9QbGF5ZXIpIHtcbiAgICAgICAgICAgICAgICB2aWRlb1BsYXllci5wYXVzZWQgPyB0aGlzLnZpZGVvUGxheShpbmRleCkgOiB0aGlzLnZpZGVvUGF1c2UoaW5kZXgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBtb3ZlKGluc3RhbnRhbmVvdXM6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhcm91c2VsT2Zmc2V0ID0gLXRoaXMuY2Fyb3VzZWwubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCAqIHRoaXMuc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgdGhpcy5hbmltYXRpb25CdWlsZGVyLmJ1aWxkKFxuICAgICAgICAgICAgYW5pbWF0ZShpbnN0YW50YW5lb3VzID8gJzFtcycgOiAnMjUwbXMgZWFzZS1pbicsIHN0eWxlKHt0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKCR7dGhpcy5jYXJvdXNlbE9mZnNldH1weClgfSkpXG4gICAgICAgICkuY3JlYXRlKHRoaXMuY2Fyb3VzZWwubmF0aXZlRWxlbWVudCkucGxheSgpO1xuICAgIH1cblxuICAgIG9uTW91c2VFbnRlcnNWaWRlbyhldmVudCwgaW5kZXgpIHtcbiAgICAgICAgdGhpcy5tb3VzZU92ZXIgPSB0cnVlO1xuICAgICAgICBpZiAodGhpcy50aW55TW9kZSkge1xuICAgICAgICAgICAgdGhpcy52aWRlb1BsYXkoaW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Nb3VzZUxlYXZlc1ZpZGVvKGV2ZW50LCBpbmRleCkge1xuICAgICAgICB0aGlzLm1vdXNlT3ZlciA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy50aW55TW9kZSkge1xuICAgICAgICAgICAgdGhpcy52aWRlb1BhdXNlKGluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50KSB7XG4gICAgICAgIHRoaXMubW92ZSh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJWaWRlb1BsYXllcihldmVudCwgaW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLnZpZGVvUGxheWVyc1tpbmRleF0gPSBldmVudC50YXJnZXQ7XG4gICAgICAgIGV2ZW50LnRhcmdldC5tdXRlZCA9ICF0aGlzLnNvdW5kRW5hYmxlZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZpZGVvUGF1c2UoaW5kZXg6IG51bWJlcikge1xuICAgICAgICBjb25zdCB2aWRlb1BsYXllcjogSFRNTFZpZGVvRWxlbWVudCA9IHRoaXMudmlkZW9QbGF5ZXJzW2luZGV4XTtcbiAgICAgICAgaWYgKHZpZGVvUGxheWVyKSB7XG4gICAgICAgICAgICB2aWRlb1BsYXllci5wYXVzZSgpO1xuICAgICAgICAgICAgdGhpcy5pc1BsYXlpbmcgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmlkZW9QbGF5KGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgdmlkZW9QbGF5ZXI6IEhUTUxWaWRlb0VsZW1lbnQgPSB0aGlzLnZpZGVvUGxheWVyc1tpbmRleF07XG4gICAgICAgIGlmICh2aWRlb1BsYXllcikge1xuICAgICAgICAgICAgdmlkZW9QbGF5ZXIucGxheSgpO1xuICAgICAgICAgICAgdGhpcy5pc1BsYXlpbmcgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN3aXRjaFNvdW5kKCkge1xuICAgICAgICB0aGlzLnNvdW5kRW5hYmxlZCA9ICF0aGlzLnNvdW5kRW5hYmxlZDtcbiAgICAgICAgZm9yIChjb25zdCBwbGF5ZXIgb2YgdGhpcy52aWRlb1BsYXllcnMpIHtcbiAgICAgICAgICAgIHBsYXllci5tdXRlZCA9ICF0aGlzLnNvdW5kRW5hYmxlZDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxzZWN0aW9uICpuZ0lmPVwiaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMCAmJiBpdGVtc1swXS51cmxcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtd3JhcHBlclwiXG4gICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXJzVmlkZW8oJGV2ZW50LCBzZWxlY3RlZEluZGV4KVwiXG4gICAgICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlTGVhdmVzVmlkZW8oJGV2ZW50LCBzZWxlY3RlZEluZGV4KVwiPlxuICAgICAgICA8dWwgY2xhc3M9XCJjYXJvdXNlbC1pbm5lclwiICNjYXJvdXNlbD5cbiAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwiY2Fyb3VzZWwtaXRlbVwiPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJpdGVtLnR5cGUgPT09IEluc3RhZ3JhbUNhcm91c2VsSXRlbVR5cGUuSU1BR0UgJiYgaXRlbS51cmxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBhcEZyb3plbkdpZlxuICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiaW1hZ2VQcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbYXBGcm96ZW5dPVwiIXN1cHBvcnRHaWZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0XT1cIidhc3NldHMvaW1nL2RlZmF1bHQucG5nJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpdGVtLnVybFwiPlxuICAgICAgICAgICAgICAgICAgICA8YXAtdXNlcnMtdGFnICpuZ0lmPVwiaXRlbS51c2VyVGFncz8ubGVuZ3RoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdXNlclRhZ3NdPVwiaXRlbS51c2VyVGFnc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ092ZXJsYXlTaG93bl09XCJ0YWdPdmVybGF5U2hvd25cIlxuICAgICAgICAgICAgICAgICAgICA+PC9hcC11c2Vycy10YWc+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaXRlbS50eXBlID09PSBJbnN0YWdyYW1DYXJvdXNlbEl0ZW1UeXBlLlZJREVPICYmIGl0ZW0udXJsXCI+XG4gICAgICAgICAgICAgICAgICAgIDx2aWRlbyBbaWRdPVwiJ3ZpZGVvLScgKyBpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnBvc3Rlcl09XCJpdGVtLnRodW1ibmFpbFVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9vcF09XCJ0aW55TW9kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cIml0ZW0udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwbGF5KCRldmVudCwgaSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVuZGVkKT1cImlzUGxheWluZyA9IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsb2Fkc3RhcnQpPVwicmVnaXN0ZXJWaWRlb1BsYXllcigkZXZlbnQsIGkpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlkZW8+XG4gICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJwbGF5LWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInBsYXkoJGV2ZW50LCBpKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggKm5nSWY9XCIhaXNQbGF5aW5nXCIgZD1cIk0xMSwxMCBMMTgsMTMuNzQgMTgsMjIuMjggMTEsMjYgTTE4LDEzLjc0IEwyNiwxOCAyNiwxOCAxOCwyMi4yOFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInNvdW5kLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiF0aW55TW9kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3dpdGNoU291bmQoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3tzb3VuZEVuYWJsZWQgPyAndm9sdW1lX3VwJyA6ICd2b2x1bWVfb2ZmJ319XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG5cbiAgICAgICAgPHN2ZyBjbGFzcz1cIm5hdi1idXR0b24gcHJldlwiXG4gICAgICAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFpc1ByZXZCdXR0b25FbmFibGVkKCksICd0aW55JzogdGlueU1vZGV9XCJcbiAgICAgICAgICAgICAoY2xpY2spPVwicHJldigpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XCJcbiAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDQ1NSA0NTVcIj5cbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMjI3LjUsMEMxMDEuODU1LDAsMCwxMDEuODU1LDAsMjI3LjVTMTAxLjg1NSw0NTUsMjI3LjUsNDU1UzQ1NSwzNTMuMTQ1LDQ1NSwyMjcuNVMzNTMuMTQ1LDAsMjI3LjUsMHogTTE5OS40NzYsMzU1LjU4OVxuICAgICAgICAgICAgICAgICAgbC0yMS4yNDgtMjEuMTc4TDI4NC43OTEsMjI3LjVMMTc4LjIyOCwxMjAuNTg5bDIxLjI0OC0yMS4xNzhMMzI3LjE0OCwyMjcuNUwxOTkuNDc2LDM1NS41ODl6XCIvPlxuICAgICAgICA8L3N2Zz5cblxuICAgICAgICA8c3ZnIGNsYXNzPVwibmF2LWJ1dHRvbiBuZXh0XCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogIWlzTmV4dEJ1dHRvbkVuYWJsZWQoKSwgJ3RpbnknOiB0aW55TW9kZX1cIlxuICAgICAgICAgICAgIChjbGljayk9XCJuZXh0KCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIlxuICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNDU1IDQ1NVwiPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0yMjcuNSwwQzEwMS44NTUsMCwwLDEwMS44NTUsMCwyMjcuNVMxMDEuODU1LDQ1NSwyMjcuNSw0NTVTNDU1LDM1My4xNDUsNDU1LDIyNy41UzM1My4xNDUsMCwyMjcuNSwweiBNMTk5LjQ3NiwzNTUuNTg5XG5cdCAgICAgICAgICAgICAgbC0yMS4yNDgtMjEuMTc4TDI4NC43OTEsMjI3LjVMMTc4LjIyOCwxMjAuNTg5bDIxLjI0OC0yMS4xNzhMMzI3LjE0OCwyMjcuNUwxOTkuNDc2LDM1NS41ODl6XCIvPlxuICAgICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuZ0NsYXNzXT1cInsnaW5zaWRlJzogZG90c0luc2lkZX1cIj5cbiAgICAgICAgPGFwLWRvdHMtc3RlcHBlclxuICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlclwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgKm5nSWY9XCJkb3RzRGlzcGxheWVkKClcIlxuICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJzZWxlY3RlZEluZGV4XCJcbiAgICAgICAgICAgIChkb3RDbGljayk9XCJzZWxlY3RlZEluZGV4ID0gJGV2ZW50XCI+PC9hcC1kb3RzLXN0ZXBwZXI+XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
|