@wizishop/img-manager 18.2.0 → 18.2.2-beta
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/esm2022/lib/components/canva-btn/canva-btn.component.mjs +73 -0
- package/esm2022/lib/components/images-view/images-actions-handler.mjs +168 -0
- package/esm2022/lib/components/images-view/images-view.component.mjs +391 -0
- package/esm2022/lib/components/images-view/mosaic-view/img-card/img-card.component.mjs +70 -0
- package/esm2022/lib/components/images-view/mosaic-view/mosaic-view.component.mjs +73 -0
- package/esm2022/lib/components/images-view/table-view/table-view.component.mjs +48 -0
- package/esm2022/lib/components/img-editor/cropper/cropper.component.mjs +313 -0
- package/esm2022/lib/components/img-editor/img-editor.component.mjs +129 -0
- package/esm2022/lib/components/img-editor/info-section/info-section.component.mjs +58 -0
- package/esm2022/lib/components/img-selection/img-selection.component.mjs +58 -0
- package/esm2022/lib/components/img-tabs/img-tabs.component.mjs +128 -0
- package/esm2022/lib/components/img-upload/img-upload.component.mjs +133 -0
- package/esm2022/lib/components/loader/loader.component.mjs +21 -0
- package/esm2022/lib/components/pexels-lib/pexels-lib.component.mjs +211 -0
- package/esm2022/lib/components/shared/alert/alert.component.mjs +26 -0
- package/esm2022/lib/components/shared/checkbox/checkbox.component.mjs +56 -0
- package/esm2022/lib/components/shared/dropdown/dropdown.component.mjs +21 -0
- package/esm2022/lib/components/shared/input-search/input-search.component.mjs +53 -0
- package/esm2022/lib/components/shared/pagination/page-selector/page-selector.component.mjs +50 -0
- package/esm2022/lib/components/shared/pagination/pagination.component.mjs +49 -0
- package/esm2022/lib/components/shared/select/select.component.mjs +117 -0
- package/esm2022/lib/components/shared/table/table.component.mjs +124 -0
- package/esm2022/lib/components/upload-list/upload-list.component.mjs +85 -0
- package/esm2022/lib/directives/abstract-debounce/abstract-debounce.directive.mjs +41 -0
- package/{esm2020 → esm2022}/lib/directives/abstract-debounce/debounce-keyup.directive.mjs +5 -5
- package/esm2022/lib/directives/auto-hide.directive.mjs +51 -0
- package/esm2022/lib/directives/copy-to-clipboard.directive.mjs +36 -0
- package/esm2022/lib/directives/drag-drop.directive.mjs +55 -0
- package/esm2022/lib/directives/loading.directive.mjs +43 -0
- package/esm2022/lib/directives/table/checkBoxRow.directive.mjs +130 -0
- package/esm2022/lib/directives/table/column.directive.mjs +50 -0
- package/esm2022/lib/directives/table/columnHeader.directive.mjs +215 -0
- package/esm2022/lib/directives/table/raw.directive.mjs +34 -0
- package/esm2022/lib/directives/zindex-toggle.directive.mjs +45 -0
- package/esm2022/lib/dto/canva-create-design.dto.mjs +9 -0
- package/esm2022/lib/dto/canva.dto.mjs +6 -0
- package/esm2022/lib/dto/config/apis/api.dto.mjs +11 -0
- package/esm2022/lib/dto/config/external/external-config.dto.mjs +5 -0
- package/esm2022/lib/dto/wizi-block-media.dto.mjs +7 -0
- package/esm2022/lib/pipes/images/img-src.pipe.mjs +29 -0
- package/{esm2020 → esm2022}/lib/pipes/number-to-array.pipe.mjs +4 -4
- package/esm2022/lib/pipes/pagination/array-total-pages/array-pages.pipe.mjs +28 -0
- package/esm2022/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.mjs +53 -0
- package/esm2022/lib/pipes/pagination/text/custom-text.pipe.mjs +36 -0
- package/esm2022/lib/pipes/pagination/total-pages/is-last-page.pipe.mjs +25 -0
- package/{esm2020 → esm2022}/lib/pipes/select/select-filters.pipe.mjs +4 -4
- package/esm2022/lib/services/alert.service.mjs +53 -0
- package/{esm2020 → esm2022}/lib/services/api.service.mjs +4 -4
- package/esm2022/lib/services/canva.service.mjs +165 -0
- package/esm2022/lib/services/config/img-cdn.service.mjs +21 -0
- package/esm2022/lib/services/dom.service.mjs +31 -0
- package/{esm2020 → esm2022}/lib/services/icon.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/image-not-found.service.mjs +4 -4
- package/esm2022/lib/services/img-event.service.mjs +33 -0
- package/esm2022/lib/services/img-manager.service.mjs +134 -0
- package/esm2022/lib/services/img-selection.service.mjs +75 -0
- package/esm2022/lib/services/pexels.service.mjs +66 -0
- package/esm2022/lib/services/rename-picture.service.mjs +66 -0
- package/esm2022/lib/services/snackbar.service.mjs +67 -0
- package/esm2022/lib/services/table/filters-table.service.mjs +61 -0
- package/esm2022/lib/services/upload.service.mjs +20 -0
- package/esm2022/lib/services/user-settings.service.mjs +23 -0
- package/esm2022/lib/wz-img-manager.component.mjs +209 -0
- package/{esm2020 → esm2022}/lib/wz-img-manager.module.mjs +61 -61
- package/{fesm2020 → fesm2022}/wizishop-img-manager.mjs +1018 -830
- package/fesm2022/wizishop-img-manager.mjs.map +1 -0
- package/lib/components/canva-btn/canva-btn.component.d.ts +1 -1
- package/lib/components/images-view/images-actions-handler.d.ts +2 -1
- package/lib/components/images-view/images-view.component.d.ts +4 -9
- package/lib/components/images-view/mosaic-view/img-card/img-card.component.d.ts +1 -1
- package/lib/components/images-view/mosaic-view/mosaic-view.component.d.ts +1 -1
- package/lib/components/img-editor/cropper/cropper.component.d.ts +1 -1
- package/lib/components/img-editor/img-editor.component.d.ts +1 -1
- package/lib/components/img-editor/info-section/info-section.component.d.ts +1 -1
- package/lib/components/img-selection/img-selection.component.d.ts +4 -5
- package/lib/components/img-tabs/img-tabs.component.d.ts +1 -1
- package/lib/components/img-upload/img-upload.component.d.ts +1 -1
- package/lib/components/loader/loader.component.d.ts +1 -1
- package/lib/components/pexels-lib/pexels-lib.component.d.ts +1 -1
- package/lib/components/shared/alert/alert.component.d.ts +1 -1
- package/lib/components/shared/checkbox/checkbox.component.d.ts +1 -1
- package/lib/components/shared/dropdown/dropdown.component.d.ts +1 -1
- package/lib/components/shared/input-search/input-search.component.d.ts +1 -1
- package/lib/components/shared/pagination/page-selector/page-selector.component.d.ts +1 -1
- package/lib/components/shared/pagination/pagination.component.d.ts +1 -1
- package/lib/components/shared/select/select.component.d.ts +1 -1
- package/lib/components/shared/table/table.component.d.ts +1 -1
- package/lib/components/upload-list/upload-list.component.d.ts +1 -1
- package/lib/directives/abstract-debounce/abstract-debounce.directive.d.ts +1 -1
- package/lib/directives/auto-hide.directive.d.ts +1 -1
- package/lib/directives/copy-to-clipboard.directive.d.ts +1 -1
- package/lib/directives/table/checkBoxRow.directive.d.ts +1 -1
- package/lib/directives/table/column.directive.d.ts +1 -1
- package/lib/directives/table/columnHeader.directive.d.ts +1 -1
- package/lib/directives/zindex-toggle.directive.d.ts +1 -1
- package/lib/wz-img-manager.component.d.ts +3 -3
- package/package.json +6 -12
- package/wizishop-img-manager-18.2.2-beta.tgz +0 -0
- package/wz-img-manager.scss +77 -60
- package/esm2020/lib/components/canva-btn/canva-btn.component.mjs +0 -67
- package/esm2020/lib/components/images-view/images-actions-handler.mjs +0 -154
- package/esm2020/lib/components/images-view/images-view.component.mjs +0 -369
- package/esm2020/lib/components/images-view/mosaic-view/img-card/img-card.component.mjs +0 -66
- package/esm2020/lib/components/images-view/mosaic-view/mosaic-view.component.mjs +0 -71
- package/esm2020/lib/components/images-view/table-view/table-view.component.mjs +0 -48
- package/esm2020/lib/components/img-editor/cropper/cropper.component.mjs +0 -307
- package/esm2020/lib/components/img-editor/img-editor.component.mjs +0 -124
- package/esm2020/lib/components/img-editor/info-section/info-section.component.mjs +0 -54
- package/esm2020/lib/components/img-selection/img-selection.component.mjs +0 -53
- package/esm2020/lib/components/img-tabs/img-tabs.component.mjs +0 -122
- package/esm2020/lib/components/img-upload/img-upload.component.mjs +0 -126
- package/esm2020/lib/components/loader/loader.component.mjs +0 -21
- package/esm2020/lib/components/pexels-lib/pexels-lib.component.mjs +0 -203
- package/esm2020/lib/components/shared/alert/alert.component.mjs +0 -27
- package/esm2020/lib/components/shared/checkbox/checkbox.component.mjs +0 -52
- package/esm2020/lib/components/shared/dropdown/dropdown.component.mjs +0 -21
- package/esm2020/lib/components/shared/input-search/input-search.component.mjs +0 -54
- package/esm2020/lib/components/shared/pagination/page-selector/page-selector.component.mjs +0 -49
- package/esm2020/lib/components/shared/pagination/pagination.component.mjs +0 -49
- package/esm2020/lib/components/shared/select/select.component.mjs +0 -110
- package/esm2020/lib/components/shared/table/table.component.mjs +0 -116
- package/esm2020/lib/components/upload-list/upload-list.component.mjs +0 -79
- package/esm2020/lib/directives/abstract-debounce/abstract-debounce.directive.mjs +0 -37
- package/esm2020/lib/directives/auto-hide.directive.mjs +0 -48
- package/esm2020/lib/directives/copy-to-clipboard.directive.mjs +0 -37
- package/esm2020/lib/directives/drag-drop.directive.mjs +0 -57
- package/esm2020/lib/directives/loading.directive.mjs +0 -42
- package/esm2020/lib/directives/table/checkBoxRow.directive.mjs +0 -114
- package/esm2020/lib/directives/table/column.directive.mjs +0 -45
- package/esm2020/lib/directives/table/columnHeader.directive.mjs +0 -204
- package/esm2020/lib/directives/table/raw.directive.mjs +0 -31
- package/esm2020/lib/directives/zindex-toggle.directive.mjs +0 -42
- package/esm2020/lib/dto/canva-create-design.dto.mjs +0 -4
- package/esm2020/lib/dto/canva.dto.mjs +0 -4
- package/esm2020/lib/dto/config/apis/api.dto.mjs +0 -9
- package/esm2020/lib/dto/config/external/external-config.dto.mjs +0 -3
- package/esm2020/lib/dto/wizi-block-media.dto.mjs +0 -3
- package/esm2020/lib/pipes/images/img-src.pipe.mjs +0 -28
- package/esm2020/lib/pipes/pagination/array-total-pages/array-pages.pipe.mjs +0 -28
- package/esm2020/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.mjs +0 -53
- package/esm2020/lib/pipes/pagination/text/custom-text.pipe.mjs +0 -35
- package/esm2020/lib/pipes/pagination/total-pages/is-last-page.pipe.mjs +0 -25
- package/esm2020/lib/services/alert.service.mjs +0 -50
- package/esm2020/lib/services/canva.service.mjs +0 -159
- package/esm2020/lib/services/config/img-cdn.service.mjs +0 -23
- package/esm2020/lib/services/dom.service.mjs +0 -33
- package/esm2020/lib/services/img-event.service.mjs +0 -35
- package/esm2020/lib/services/img-manager.service.mjs +0 -136
- package/esm2020/lib/services/img-selection.service.mjs +0 -76
- package/esm2020/lib/services/pexels.service.mjs +0 -62
- package/esm2020/lib/services/rename-picture.service.mjs +0 -63
- package/esm2020/lib/services/snackbar.service.mjs +0 -64
- package/esm2020/lib/services/table/filters-table.service.mjs +0 -60
- package/esm2020/lib/services/upload.service.mjs +0 -22
- package/esm2020/lib/services/user-settings.service.mjs +0 -25
- package/esm2020/lib/wz-img-manager.component.mjs +0 -192
- package/fesm2015/wizishop-img-manager.mjs +0 -4035
- package/fesm2015/wizishop-img-manager.mjs.map +0 -1
- package/fesm2020/wizishop-img-manager.mjs.map +0 -1
- package/wizishop-img-manager-18.2.0.tgz +0 -0
- /package/{esm2020 → esm2022}/lib/animations/easeInOut/ease-in-out.animation.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/animations/insertRemove/insert-remove.animation.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/animations/listAnnimation/list.animation.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/shared/select/call-to-action.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/shared/select/select-items.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/ImgManagerDisplayConfig.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/config/image-cdn/image-cdn-config.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/config/img-manager.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/export-dtos.api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/img-editor-config.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/img-manager.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/pexels-img.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/picture-name-update.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/stateDisplayed.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dto/tabDisplayed.dto.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/wizishop-img-manager.mjs +0 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { Component, ElementRef, ViewChild, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import { PexelsService } from '../../services/pexels.service';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
5
|
+
import { easeInOut } from '../../animations/easeInOut/ease-in-out.animation';
|
|
6
|
+
import { listAnnimation } from '../../animations/listAnnimation/list.animation';
|
|
7
|
+
import { AlertService } from '../../services/alert.service';
|
|
8
|
+
import { UploadService } from '../../services/upload.service';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../../services/pexels.service";
|
|
11
|
+
import * as i2 from "../../services/alert.service";
|
|
12
|
+
import * as i3 from "@ngx-translate/core";
|
|
13
|
+
import * as i4 from "../../services/upload.service";
|
|
14
|
+
import * as i5 from "@angular/common";
|
|
15
|
+
import * as i6 from "@angular/forms";
|
|
16
|
+
import * as i7 from "ngx-scrollbar";
|
|
17
|
+
import * as i8 from "ngx-scrollbar/reached-event";
|
|
18
|
+
import * as i9 from "../loader/loader.component";
|
|
19
|
+
import * as i10 from "../shared/input-search/input-search.component";
|
|
20
|
+
import * as i11 from "../shared/alert/alert.component";
|
|
21
|
+
import * as i12 from "../../directives/loading.directive";
|
|
22
|
+
export class PexelLibComponent {
|
|
23
|
+
wzImgLibService;
|
|
24
|
+
alertService;
|
|
25
|
+
translateService;
|
|
26
|
+
uploadService;
|
|
27
|
+
changeDetectorRef;
|
|
28
|
+
stateDisplayed;
|
|
29
|
+
searchValue = '';
|
|
30
|
+
/** Pass to true to hide search input */
|
|
31
|
+
disableSearch = false;
|
|
32
|
+
perPage = 30;
|
|
33
|
+
searchUpdated = new Subject();
|
|
34
|
+
oldSearchValue;
|
|
35
|
+
nbResult = 0;
|
|
36
|
+
wzImgLibDto;
|
|
37
|
+
currentPage = 1;
|
|
38
|
+
isLoading = true;
|
|
39
|
+
initComponent = true;
|
|
40
|
+
photosColumns = [];
|
|
41
|
+
nbColumns = 6;
|
|
42
|
+
responsiveColumns = [1250, 1050, 750, 500];
|
|
43
|
+
outerElement = null;
|
|
44
|
+
uploadingImg = 'ImgManager.PexelLib.uploadingImg';
|
|
45
|
+
untitled = 'ImgManager.PexelLib.untitled';
|
|
46
|
+
successUploadPhoto = 'ImgManager.PexelLib.successImport';
|
|
47
|
+
errorUploadPhoto = 'ImgManager.PexelLib.errorUploadPhoto';
|
|
48
|
+
errorRetrievePhotos = 'ImgManager.PexelLib.errorRetrievePhotos';
|
|
49
|
+
subs = [];
|
|
50
|
+
set content(control) {
|
|
51
|
+
this.outerElement = control;
|
|
52
|
+
}
|
|
53
|
+
constructor(wzImgLibService, alertService, translateService, uploadService, changeDetectorRef) {
|
|
54
|
+
this.wzImgLibService = wzImgLibService;
|
|
55
|
+
this.alertService = alertService;
|
|
56
|
+
this.translateService = translateService;
|
|
57
|
+
this.uploadService = uploadService;
|
|
58
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
59
|
+
}
|
|
60
|
+
ngAfterViewInit() {
|
|
61
|
+
this.oldSearchValue = this.searchValue;
|
|
62
|
+
this.isLoading = false;
|
|
63
|
+
this.setNbColumnsToDisplayPhoto();
|
|
64
|
+
this.setPhotosColumns();
|
|
65
|
+
this.search();
|
|
66
|
+
}
|
|
67
|
+
setNbColumnsToDisplayPhoto() {
|
|
68
|
+
const width = this.outerElement.nativeElement.offsetWidth;
|
|
69
|
+
if (this.stateDisplayed !== 'window') {
|
|
70
|
+
this.nbColumns = 8;
|
|
71
|
+
}
|
|
72
|
+
this.responsiveColumns.forEach(value => {
|
|
73
|
+
if (width < value) {
|
|
74
|
+
this.nbColumns--;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
onSearchNameChanged() {
|
|
79
|
+
this.onSearchChange();
|
|
80
|
+
}
|
|
81
|
+
onBottomReached() {
|
|
82
|
+
this.scrollHandler();
|
|
83
|
+
}
|
|
84
|
+
onSearchChange() {
|
|
85
|
+
this.search();
|
|
86
|
+
}
|
|
87
|
+
search() {
|
|
88
|
+
if (this.isLoading) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
if (this.searchValue !== this.oldSearchValue) {
|
|
92
|
+
this.resetSearch();
|
|
93
|
+
}
|
|
94
|
+
// All the picture are displayed
|
|
95
|
+
if (this.nbResult && this.nbResult <= (this.currentPage - 1) * this.perPage) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
this.isLoading = true;
|
|
99
|
+
const searchSub = this.wzImgLibService.searchOnPexels(this.searchValue, this.perPage, this.currentPage).subscribe({
|
|
100
|
+
next: (data) => {
|
|
101
|
+
this.wzImgLibDto = data;
|
|
102
|
+
this.nbResult = this.wzImgLibDto.total_results;
|
|
103
|
+
if (this.nbResult) {
|
|
104
|
+
data.photos.forEach(photo => {
|
|
105
|
+
const bestColumnIndex = this.getBestColumn();
|
|
106
|
+
const height = (photo.height / photo.width) * 1000;
|
|
107
|
+
this.photosColumns[bestColumnIndex].height += height;
|
|
108
|
+
this.photosColumns[bestColumnIndex].photos.push(photo);
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
this.isLoading = false;
|
|
112
|
+
this.initComponent = false;
|
|
113
|
+
this.changeDetectorRef.markForCheck();
|
|
114
|
+
},
|
|
115
|
+
error: error => {
|
|
116
|
+
this.isLoading = false;
|
|
117
|
+
this.initComponent = false;
|
|
118
|
+
this.alertService.openAlert(this.errorRetrievePhotos);
|
|
119
|
+
this.changeDetectorRef.markForCheck();
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
this.subs.push(searchSub);
|
|
123
|
+
}
|
|
124
|
+
scrollHandler() {
|
|
125
|
+
if (this.isLoading) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const bestColumnIndex = this.getBestColumn();
|
|
129
|
+
const lastPic = this.photosColumns[bestColumnIndex].photos[this.photosColumns[bestColumnIndex].photos.length - 1];
|
|
130
|
+
const lastPhoto = lastPic ? document.querySelector('img[src="' + lastPic.src.medium + '"]') : null;
|
|
131
|
+
if (lastPhoto) {
|
|
132
|
+
if (!this.isLoading) {
|
|
133
|
+
this.currentPage += 1;
|
|
134
|
+
this.search();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
setPhotosColumns() {
|
|
139
|
+
for (let indexColumn = 0; indexColumn < this.nbColumns; indexColumn++) {
|
|
140
|
+
const photosColumn = {
|
|
141
|
+
height: 0,
|
|
142
|
+
photos: []
|
|
143
|
+
};
|
|
144
|
+
this.photosColumns.push(photosColumn);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
getBestColumn() {
|
|
148
|
+
const bestColumn = {
|
|
149
|
+
index: 0,
|
|
150
|
+
height: this.photosColumns[0].height
|
|
151
|
+
};
|
|
152
|
+
this.photosColumns.forEach((photosColumn, index) => {
|
|
153
|
+
if (bestColumn.height > photosColumn.height) {
|
|
154
|
+
bestColumn.index = index;
|
|
155
|
+
bestColumn.height = photosColumn.height;
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
return bestColumn.index;
|
|
159
|
+
}
|
|
160
|
+
resetSearch() {
|
|
161
|
+
this.oldSearchValue = this.searchValue;
|
|
162
|
+
this.photosColumns = [];
|
|
163
|
+
this.currentPage = 1;
|
|
164
|
+
this.setPhotosColumns();
|
|
165
|
+
this.changeDetectorRef.markForCheck();
|
|
166
|
+
}
|
|
167
|
+
uploadPhoto(photo, url) {
|
|
168
|
+
photo.uploading = true;
|
|
169
|
+
const uploadSub = this.uploadService.uploadFileByUrl(url, photo.alt).subscribe(img => {
|
|
170
|
+
photo.uploading = false;
|
|
171
|
+
photo.uploaded = true;
|
|
172
|
+
this.alertService.openAlert(this.successUploadPhoto);
|
|
173
|
+
}, error => {
|
|
174
|
+
photo.uploading = false;
|
|
175
|
+
if (error.error.code === 406 && error.error.message) {
|
|
176
|
+
this.alertService.openAlertWithBackendResponse(this.errorUploadPhoto, error.error.message);
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
this.alertService.openAlert(this.errorUploadPhoto);
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
// Display img uploading msg
|
|
183
|
+
this.alertService.openAlert(this.uploadingImg);
|
|
184
|
+
this.subs.push(uploadSub);
|
|
185
|
+
}
|
|
186
|
+
ngOnDestroy() {
|
|
187
|
+
this.subs.forEach(sub => sub.unsubscribe());
|
|
188
|
+
}
|
|
189
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PexelLibComponent, deps: [{ token: i1.PexelsService }, { token: i2.AlertService }, { token: i3.TranslateService }, { token: i4.UploadService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
190
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: PexelLibComponent, selector: "pexels-lib", inputs: { stateDisplayed: "stateDisplayed", searchValue: "searchValue", disableSearch: "disableSearch" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["outerElement"], descendants: true }], ngImport: i0, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\r\n\r\n <ng-scrollbar\r\n [reachedOffset]=\"300\"\r\n class=\"pexels-lib__scroll\"\r\n [ngClass]=\"{\r\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\r\n 'pexels-lib__scroll--noResult': !nbResult,\r\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\r\n }\"\r\n (reachedBottom)=\"onBottomReached()\"\r\n >\r\n <div\r\n *ngIf=\"!disableSearch\"\r\n class=\"pexels-lib__search\"\r\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\r\n >\r\n <wz-input-search\r\n [(ngModel)]=\"searchValue\"\r\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\r\n (changeDebounced)=\"onSearchNameChanged()\"\r\n [smallPadding]=\"stateDisplayed === 'small'\">\r\n </wz-input-search>\r\n </div>\r\n\r\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\r\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\r\n\r\n <div class=\"pexels-lib__wrapper__result\">\r\n\r\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\r\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\r\n\r\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\r\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\r\n\r\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\r\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\r\n {{ photo.width }} x {{ photo.height}}\r\n </span>\r\n\r\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\r\n <div class=\"dropdown-trigger\">\r\n <button\r\n type=\"button\"\r\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\r\n aria-haspopup=\"true\"\r\n aria-controls=\"dropdown-menu\">\r\n\r\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\r\n <span class=\"icon is-small\">\r\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\r\n </span>\r\n <ng-container *ngIf=\"photo.uploaded\">\r\n <i class=\"fal fa-check\"></i>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"photo.uploading\">\r\n {{ 'ImgManager.PexelLib.importation' | translate }}\r\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\r\n </ng-container>\r\n\r\n </button>\r\n </div>\r\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\r\n <div class=\"dropdown-content\">\r\n <div class=\"dropdown-content__wrapper\">\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\r\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\r\n <i class=\"fal fa-check iPortrait\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\r\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\r\n <i class=\"fal fa-check iLandscape\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\r\n <i class=\"fal fa-check iOriginal\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </ng-scrollbar>\r\n\r\n <ng-container *ngIf=\"isLoading\">\r\n <wz-loader></wz-loader>\r\n </ng-container>\r\n <div\r\n *ngIf=\"!isLoading && !nbResult\"\r\n class=\"pexels-lib__alert\"\r\n [@easeInOut]=\"'in'\">\r\n <wz-alert [warning]=\"true\">\r\n {{ 'ImgManager.PexelLib.noResult' | translate }}\r\n </wz-alert>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.NgScrollbar, selector: "ng-scrollbar", inputs: ["disabled", "sensorDisabled", "pointerEventsDisabled", "viewportPropagateMouseMove", "autoHeightDisabled", "autoWidthDisabled", "viewClass", "trackClass", "thumbClass", "minThumbSize", "trackClickScrollDuration", "pointerEventsMethod", "track", "visibility", "appearance", "position", "sensorDebounce", "scrollAuditTime"], outputs: ["updated"], exportAs: ["ngScrollbar"] }, { kind: "directive", type: i8.NgScrollbarReachedBottom, selector: "[reachedBottom], [reached-bottom]", outputs: ["reachedBottom"] }, { kind: "component", type: i9.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "component", type: i10.InputSearchComponent, selector: "wz-input-search", inputs: ["placeholder", "smallPadding", "id"], outputs: ["changeDebounced"] }, { kind: "component", type: i11.AlertComponent, selector: "wz-alert", inputs: ["icon", "warning", "success", "iconClass"] }, { kind: "directive", type: i12.LoadingDirective, selector: "[btnLoadingAnim]" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
|
|
191
|
+
easeInOut,
|
|
192
|
+
listAnnimation
|
|
193
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
194
|
+
}
|
|
195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PexelLibComponent, decorators: [{
|
|
196
|
+
type: Component,
|
|
197
|
+
args: [{ selector: 'pexels-lib', animations: [
|
|
198
|
+
easeInOut,
|
|
199
|
+
listAnnimation
|
|
200
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\r\n\r\n <ng-scrollbar\r\n [reachedOffset]=\"300\"\r\n class=\"pexels-lib__scroll\"\r\n [ngClass]=\"{\r\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\r\n 'pexels-lib__scroll--noResult': !nbResult,\r\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\r\n }\"\r\n (reachedBottom)=\"onBottomReached()\"\r\n >\r\n <div\r\n *ngIf=\"!disableSearch\"\r\n class=\"pexels-lib__search\"\r\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\r\n >\r\n <wz-input-search\r\n [(ngModel)]=\"searchValue\"\r\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\r\n (changeDebounced)=\"onSearchNameChanged()\"\r\n [smallPadding]=\"stateDisplayed === 'small'\">\r\n </wz-input-search>\r\n </div>\r\n\r\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\r\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\r\n\r\n <div class=\"pexels-lib__wrapper__result\">\r\n\r\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\r\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\r\n\r\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\r\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\r\n\r\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\r\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\r\n {{ photo.width }} x {{ photo.height}}\r\n </span>\r\n\r\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\r\n <div class=\"dropdown-trigger\">\r\n <button\r\n type=\"button\"\r\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\r\n aria-haspopup=\"true\"\r\n aria-controls=\"dropdown-menu\">\r\n\r\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\r\n <span class=\"icon is-small\">\r\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\r\n </span>\r\n <ng-container *ngIf=\"photo.uploaded\">\r\n <i class=\"fal fa-check\"></i>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"photo.uploading\">\r\n {{ 'ImgManager.PexelLib.importation' | translate }}\r\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\r\n </ng-container>\r\n\r\n </button>\r\n </div>\r\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\r\n <div class=\"dropdown-content\">\r\n <div class=\"dropdown-content__wrapper\">\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\r\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\r\n <i class=\"fal fa-check iPortrait\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\r\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\r\n <i class=\"fal fa-check iLandscape\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\r\n <i class=\"fal fa-check iOriginal\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </ng-scrollbar>\r\n\r\n <ng-container *ngIf=\"isLoading\">\r\n <wz-loader></wz-loader>\r\n </ng-container>\r\n <div\r\n *ngIf=\"!isLoading && !nbResult\"\r\n class=\"pexels-lib__alert\"\r\n [@easeInOut]=\"'in'\">\r\n <wz-alert [warning]=\"true\">\r\n {{ 'ImgManager.PexelLib.noResult' | translate }}\r\n </wz-alert>\r\n </div>\r\n</div>\r\n" }]
|
|
201
|
+
}], ctorParameters: () => [{ type: i1.PexelsService }, { type: i2.AlertService }, { type: i3.TranslateService }, { type: i4.UploadService }, { type: i0.ChangeDetectorRef }], propDecorators: { stateDisplayed: [{
|
|
202
|
+
type: Input
|
|
203
|
+
}], searchValue: [{
|
|
204
|
+
type: Input
|
|
205
|
+
}], disableSearch: [{
|
|
206
|
+
type: Input
|
|
207
|
+
}], content: [{
|
|
208
|
+
type: ViewChild,
|
|
209
|
+
args: ['outerElement']
|
|
210
|
+
}] } });
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV4ZWxzLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvcGV4ZWxzLWxpYi9wZXhlbHMtbGliLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wZXhlbHMtbGliL3BleGVscy1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBQyxPQUFPLEVBQThCLE1BQU0sTUFBTSxDQUFDO0FBRTFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFXOUQsTUFBTSxPQUFPLGlCQUFpQjtJQW9DbEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQXJDVixjQUFjLENBQWlCO0lBRS9CLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDdkIsd0NBQXdDO0lBRTFDLGFBQWEsR0FBWSxLQUFLLENBQUM7SUFFL0IsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNiLGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxD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QWE7c0JBRFosS0FBSztnQkF3QnlCLE9BQU87c0JBQXJDLFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQsIElucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1BleGVsc1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BleGVscy5zZXJ2aWNlJztcclxuaW1wb3J0IHtTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3R9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1d6SW1nTGliRHRvLCBQaG90b3NDb2x1bW5zLCBXekltZ0xpYlBob3RvRHRvfSBmcm9tICcuLi8uLi9kdG8vcGV4ZWxzLWltZy5kdG8nO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IGVhc2VJbk91dCB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvZWFzZUluT3V0L2Vhc2UtaW4tb3V0LmFuaW1hdGlvbic7XHJcbmltcG9ydCB7IGxpc3RBbm5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9ucy9saXN0QW5uaW1hdGlvbi9saXN0LmFuaW1hdGlvbic7XHJcbmltcG9ydCB7IHN0YXRlRGlzcGxheWVkIH0gZnJvbSAnLi4vLi4vZHRvL2V4cG9ydC1kdG9zLmFwaSc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXBsb2FkLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwZXhlbHMtbGliJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGV4ZWxzLWxpYi5jb21wb25lbnQuaHRtbCcsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgZWFzZUluT3V0LFxyXG4gICAgbGlzdEFubmltYXRpb25cclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXhlbExpYkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHN0YXRlRGlzcGxheWVkOiBzdGF0ZURpc3BsYXllZDtcclxuICBASW5wdXQoKVxyXG4gIHNlYXJjaFZhbHVlOiBzdHJpbmcgPSAnJztcclxuICAgIC8qKiBQYXNzIHRvIHRydWUgdG8gaGlkZSBzZWFyY2ggaW5wdXQgKi9cclxuICBASW5wdXQoKVxyXG4gIGRpc2FibGVTZWFyY2g6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcGVyUGFnZSA9IDMwO1xyXG4gIHNlYXJjaFVwZGF0ZWQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIG9sZFNlYXJjaFZhbHVlOiBzdHJpbmc7XHJcbiAgbmJSZXN1bHQgPSAwO1xyXG4gIHd6SW1nTGliRHRvOiBXekltZ0xpYkR0bztcclxuICBjdXJyZW50UGFnZSA9IDE7XHJcbiAgaXNMb2FkaW5nID0gdHJ1ZTtcclxuICBpbml0Q29tcG9uZW50ID0gdHJ1ZTtcclxuICBwaG90b3NDb2x1bW5zOiBQaG90b3NDb2x1bW5zW10gPSBbXTtcclxuICBuYkNvbHVtbnMgPSA2O1xyXG4gIHJlc3BvbnNpdmVDb2x1bW5zID0gWzEyNTAsIDEwNTAsIDc1MCwgNTAwXTtcclxuICBvdXRlckVsZW1lbnQgPSBudWxsO1xyXG5cclxuICB1cGxvYWRpbmdJbWcgPSAnSW1nTWFuYWdlci5QZXhlbExpYi51cGxvYWRpbmdJbWcnO1xyXG4gIHVudGl0bGVkID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIudW50aXRsZWQnO1xyXG4gIHN1Y2Nlc3NVcGxvYWRQaG90byA9ICdJbWdNYW5hZ2VyLlBleGVsTGliLnN1Y2Nlc3NJbXBvcnQnO1xyXG4gIGVycm9yVXBsb2FkUGhvdG8gPSAnSW1nTWFuYWdlci5QZXhlbExpYi5lcnJvclVwbG9hZFBob3RvJztcclxuICBlcnJvclJldHJpZXZlUGhvdG9zID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIuZXJyb3JSZXRyaWV2ZVBob3Rvcyc7XHJcblxyXG4gIHByaXZhdGUgc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnb3V0ZXJFbGVtZW50Jykgc2V0IGNvbnRlbnQoY29udHJvbDogRWxlbWVudFJlZikge1xyXG4gICAgdGhpcy5vdXRlckVsZW1lbnQgPSBjb250cm9sO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHd6SW1nTGliU2VydmljZTogUGV4ZWxzU2VydmljZSxcclxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVwbG9hZFNlcnZpY2U6IFVwbG9hZFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICAgKSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5vbGRTZWFyY2hWYWx1ZSA9IHRoaXMuc2VhcmNoVmFsdWU7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuc2V0TmJDb2x1bW5zVG9EaXNwbGF5UGhvdG8oKTtcclxuICAgIHRoaXMuc2V0UGhvdG9zQ29sdW1ucygpO1xyXG4gICAgdGhpcy5zZWFyY2goKTtcclxuICB9XHJcblxyXG4gIHNldE5iQ29sdW1uc1RvRGlzcGxheVBob3RvKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLm91dGVyRWxlbWVudC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG5cclxuICAgIGlmICh0aGlzLnN0YXRlRGlzcGxheWVkICE9PSAnd2luZG93Jykge1xyXG4gICAgICB0aGlzLm5iQ29sdW1ucyA9IDg7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZXNwb25zaXZlQ29sdW1ucy5mb3JFYWNoKHZhbHVlID0+IHtcclxuICAgICAgaWYgKHdpZHRoIDwgdmFsdWUpIHtcclxuICAgICAgICB0aGlzLm5iQ29sdW1ucy0tO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoTmFtZUNoYW5nZWQoKSB7XHJcbiAgICB0aGlzLm9uU2VhcmNoQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuICBvbkJvdHRvbVJlYWNoZWQoKSB7XHJcbiAgICB0aGlzLnNjcm9sbEhhbmRsZXIoKTtcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoQ2hhbmdlKCkge1xyXG4gICAgdGhpcy5zZWFyY2goKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaCgpIHtcclxuICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWFyY2hWYWx1ZSAhPT0gdGhpcy5vbGRTZWFyY2hWYWx1ZSkge1xyXG4gICAgICB0aGlzLnJlc2V0U2VhcmNoKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWxsIHRoZSBwaWN0dXJlIGFyZSBkaXNwbGF5ZWRcclxuICAgIGlmICh0aGlzLm5iUmVzdWx0ICYmIHRoaXMubmJSZXN1bHQgPD0gKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGVyUGFnZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3Qgc2VhcmNoU3ViID0gdGhpcy53ekltZ0xpYlNlcnZpY2Uuc2VhcmNoT25QZXhlbHModGhpcy5zZWFyY2hWYWx1ZSwgdGhpcy5wZXJQYWdlLCB0aGlzLmN1cnJlbnRQYWdlKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAoZGF0YTogV3pJbWdMaWJEdG8pID0+IHtcclxuICAgICAgICB0aGlzLnd6SW1nTGliRHRvID0gZGF0YTtcclxuICAgICAgICB0aGlzLm5iUmVzdWx0ID0gdGhpcy53ekltZ0xpYkR0by50b3RhbF9yZXN1bHRzO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5uYlJlc3VsdCkge1xyXG4gICAgICAgICAgZGF0YS5waG90b3MuZm9yRWFjaChwaG90byA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGJlc3RDb2x1bW5JbmRleCA9IHRoaXMuZ2V0QmVzdENvbHVtbigpO1xyXG4gICAgICAgICAgICBjb25zdCBoZWlnaHQgPSAocGhvdG8uaGVpZ2h0IC8gcGhvdG8ud2lkdGgpICogMTAwMDtcclxuXHJcbiAgICAgICAgICAgIHRoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLmhlaWdodCArPSBoZWlnaHQ7XHJcbiAgICAgICAgICAgIHRoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLnBob3Rvcy5wdXNoKHBob3RvKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmluaXRDb21wb25lbnQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogZXJyb3IgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pbml0Q29tcG9uZW50ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KHRoaXMuZXJyb3JSZXRyaWV2ZVBob3Rvcyk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5zdWJzLnB1c2goc2VhcmNoU3ViKTtcclxuICB9XHJcblxyXG4gIHNjcm9sbEhhbmRsZXIoKSB7XHJcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgYmVzdENvbHVtbkluZGV4ID0gdGhpcy5nZXRCZXN0Q29sdW1uKCk7XHJcbiAgICBjb25zdCBsYXN0UGljID0gdGhpcy5waG90b3NDb2x1bW5zW2Jlc3RDb2x1bW5JbmRleF0ucGhvdG9zW3RoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLnBob3Rvcy5sZW5ndGggLSAxXTtcclxuICAgIGNvbnN0IGxhc3RQaG90byA9IGxhc3RQaWMgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxJbWFnZUVsZW1lbnQ+KCdpbWdbc3JjPVwiJyArIGxhc3RQaWMuc3JjLm1lZGl1bSArICdcIl0nKSA6IG51bGw7XHJcblxyXG4gICAgaWYgKGxhc3RQaG90bykge1xyXG4gICAgICBpZiAoIXRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZSArPSAxO1xyXG4gICAgICAgIHRoaXMuc2VhcmNoKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFBob3Rvc0NvbHVtbnMoKSB7XHJcbiAgICBmb3IgKGxldCBpbmRleENvbHVtbj0wOyBpbmRleENvbHVtbiA8IHRoaXMubmJDb2x1bW5zIDsgaW5kZXhDb2x1bW4rKykge1xyXG4gICAgICBjb25zdCBwaG90b3NDb2x1bW46IFBob3Rvc0NvbHVtbnMgPSB7XHJcbiAgICAgICAgaGVpZ2h0OiAwLFxyXG4gICAgICAgIHBob3RvczogW11cclxuICAgICAgfTtcclxuICAgICAgdGhpcy5waG90b3NDb2x1bW5zLnB1c2gocGhvdG9zQ29sdW1uKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEJlc3RDb2x1bW4oKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IGJlc3RDb2x1bW4gPSB7XHJcbiAgICAgIGluZGV4OiAwLFxyXG4gICAgICBoZWlnaHQ6IHRoaXMucGhvdG9zQ29sdW1uc1swXS5oZWlnaHRcclxuICAgIH07XHJcbiAgICB0aGlzLnBob3Rvc0NvbHVtbnMuZm9yRWFjaCgocGhvdG9zQ29sdW1uLCBpbmRleCkgPT4ge1xyXG4gICAgICBpZiAoYmVzdENvbHVtbi5oZWlnaHQgPiBwaG90b3NDb2x1bW4uaGVpZ2h0KSB7XHJcbiAgICAgICAgYmVzdENvbHVtbi5pbmRleCA9IGluZGV4O1xyXG4gICAgICAgIGJlc3RDb2x1bW4uaGVpZ2h0ID0gcGhvdG9zQ29sdW1uLmhlaWdodDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYmVzdENvbHVtbi5pbmRleDtcclxuICB9XHJcblxyXG4gIHJlc2V0U2VhcmNoKCkge1xyXG4gICAgdGhpcy5vbGRTZWFyY2hWYWx1ZSA9IHRoaXMuc2VhcmNoVmFsdWU7XHJcbiAgICB0aGlzLnBob3Rvc0NvbHVtbnMgPSBbXTtcclxuICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xyXG4gICAgdGhpcy5zZXRQaG90b3NDb2x1bW5zKCk7XHJcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkUGhvdG8ocGhvdG86IFd6SW1nTGliUGhvdG9EdG8sIHVybDogc3RyaW5nKSB7XHJcbiAgICBwaG90by51cGxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0IHVwbG9hZFN1YiA9IHRoaXMudXBsb2FkU2VydmljZS51cGxvYWRGaWxlQnlVcmwodXJsLCBwaG90by5hbHQpLnN1YnNjcmliZShcclxuICAgICAgaW1nID0+IHtcclxuICAgICAgICBwaG90by51cGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICBwaG90by51cGxvYWRlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KHRoaXMuc3VjY2Vzc1VwbG9hZFBob3RvKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3IgPT4ge1xyXG4gICAgICAgIHBob3RvLnVwbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIGlmKGVycm9yLmVycm9yLmNvZGUgPT09IDQwNiAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnRXaXRoQmFja2VuZFJlc3BvbnNlKHRoaXMuZXJyb3JVcGxvYWRQaG90bywgZXJyb3IuZXJyb3IubWVzc2FnZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLmVycm9yVXBsb2FkUGhvdG8pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICAvLyBEaXNwbGF5IGltZyB1cGxvYWRpbmcgbXNnXHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLnVwbG9hZGluZ0ltZyk7XHJcbiAgICAgIHRoaXMuc3Vicy5wdXNoKHVwbG9hZFN1Yik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJwZXhlbHMtbGliXCIgI291dGVyRWxlbWVudCBbQGVhc2VJbk91dF09XCInaW4nXCI+XHJcblxyXG4gIDxuZy1zY3JvbGxiYXJcclxuICAgIFtyZWFjaGVkT2Zmc2V0XT1cIjMwMFwiXHJcbiAgICBjbGFzcz1cInBleGVscy1saWJfX3Njcm9sbFwiXHJcbiAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICdwZXhlbHMtbGliX19zY3JvbGwtLXNtYWxsRGlzcGxheSc6IHN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnLFxyXG4gICAgICAncGV4ZWxzLWxpYl9fc2Nyb2xsLS1ub1Jlc3VsdCc6ICFuYlJlc3VsdCxcclxuICAgICAgJ3BleGVscy1saWJfX3Njcm9sbC0taGlkZSc6ICghbmJSZXN1bHQgJiYgZGlzYWJsZVNlYXJjaClcclxuICAgIH1cIlxyXG4gICAgKHJlYWNoZWRCb3R0b20pPVwib25Cb3R0b21SZWFjaGVkKClcIlxyXG4gID5cclxuICAgICAgPGRpdlxyXG4gICAgICAgICpuZ0lmPVwiIWRpc2FibGVTZWFyY2hcIlxyXG4gICAgICAgIGNsYXNzPVwicGV4ZWxzLWxpYl9fc2VhcmNoXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7J3BleGVscy1saWJfX3NlYXJjaC0tc21hbGxEaXNwbGF5Jzogc3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCd9XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPHd6LWlucHV0LXNlYXJjaFxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiXHJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0ltZ01hbmFnZXIuU2VhcmNoQmFyLnBsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAoY2hhbmdlRGVib3VuY2VkKT1cIm9uU2VhcmNoTmFtZUNoYW5nZWQoKVwiXHJcbiAgICAgICAgICBbc21hbGxQYWRkaW5nXT1cInN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnXCI+XHJcbiAgICAgICAgPC93ei1pbnB1dC1zZWFyY2g+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cIiFpbml0Q29tcG9uZW50XCIgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyXCI+XHJcbiAgICAgICAgPHAgKm5nSWY9XCJuYlJlc3VsdFwiIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0LW5iXCI+e3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIubmJJbWdGb3VuZCcgfCB0cmFuc2xhdGUgfX0gOiB7eyBuYlJlc3VsdCB9fTwvcD5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdFwiPlxyXG5cclxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHBob3Rvc0NvbHVtbiBvZiBwaG90b3NDb2x1bW5zOyBsZXQgaW5kZXhDb2wgPSBpbmRleDtcIiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uXCIgIFtAbGlzdEFuaW1hdGlvbl09XCJwaG90b3NDb2x1bW4ucGhvdG9zLmxlbmd0aFwiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwaG90byBvZiBwaG90b3NDb2x1bW4ucGhvdG9zOyBsZXQgaW5kZXhQaG90byA9IGluZGV4O1wiIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRcIj5cclxuXHJcbiAgICAgICAgICAgICAgPGltZyBbYWx0XT1cInBob3RvLnNyYy5tZWRpdW1cIiBbc3JjXT1cInBob3RvLnNyYy5tZWRpdW1cIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50X19pbWdcIi8+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9fd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9fd3JhcHBlcl9faW5mb3NcIj5cclxuICAgICAgICAgICAgICAgICAge3sgcGhvdG8ud2lkdGggfX0geCB7eyBwaG90by5oZWlnaHR9fVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93biBpcy11cFwiIFtuZ0NsYXNzXT1cInsnaXMtaG92ZXJhYmxlJzogIXBob3RvLnVwbG9hZGluZ31cIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXRyaWdnZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uIHBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50X193cmFwcGVyX19idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz1cImRyb3Bkb3duLW1lbnVcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXBob3RvLnVwbG9hZGluZ1wiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLmxhcmdlMngpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLmltcG9ydCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpcy1zbWFsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtYW5nbGUtdXBcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBob3RvLnVwbG9hZGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJm5ic3A7PGkgY2xhc3M9XCJmYWwgZmEtY2hlY2tcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBob3RvLnVwbG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnSW1nTWFuYWdlci5QZXhlbExpYi5pbXBvcnRhdGlvbicgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gYnRuTG9hZGluZ0FuaW0gY2xhc3M9XCJidG5Mb2FkaW5nQW5uaW1hdGlvblwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51IHBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50X193cmFwcGVyX19kcm9wZG93blwiIGlkPVwiZHJvcGRvd24tbWVudVwiIHJvbGU9XCJtZW51XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1jb250ZW50X193cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKGNsaWNrKT1cInVwbG9hZFBob3RvKHBob3RvLCBwaG90by5zcmMucG9ydHJhaXQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIucG9ydHJhaXQnIHwgdHJhbnNsYXRlIH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWNoZWNrIGlQb3J0cmFpdFwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKGNsaWNrKT1cInVwbG9hZFBob3RvKHBob3RvLCBwaG90by5zcmMubGFuZHNjYXBlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLmxhbmRzY2FwZScgfCB0cmFuc2xhdGUgfX08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtY2hlY2sgaUxhbmRzY2FwZVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKGNsaWNrKT1cInVwbG9hZFBob3RvKHBob3RvLCBwaG90by5zcmMubGFyZ2UyeClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5QZXhlbExpYi5vcmlnaW5hbCcgfCB0cmFuc2xhdGUgfX08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtY2hlY2sgaU9yaWdpbmFsXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gIDwvbmctc2Nyb2xsYmFyPlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+XHJcbiAgICA8d3otbG9hZGVyPjwvd3otbG9hZGVyPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxkaXZcclxuICAgICpuZ0lmPVwiIWlzTG9hZGluZyAmJiAhbmJSZXN1bHRcIlxyXG4gICAgY2xhc3M9XCJwZXhlbHMtbGliX19hbGVydFwiXHJcbiAgICBbQGVhc2VJbk91dF09XCInaW4nXCI+XHJcbiAgICAgIDx3ei1hbGVydCBbd2FybmluZ109XCJ0cnVlXCI+XHJcbiAgICAgICAge3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIubm9SZXN1bHQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvd3otYWxlcnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class AlertComponent {
|
|
5
|
+
icon = true;
|
|
6
|
+
warning = false;
|
|
7
|
+
success = false;
|
|
8
|
+
iconClass = 'fa-solid fa-info';
|
|
9
|
+
constructor() { }
|
|
10
|
+
ngOnInit() { }
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: AlertComponent, selector: "wz-alert", inputs: { icon: "icon", warning: "warning", success: "success", iconClass: "iconClass" }, ngImport: i0, template: "<div class=\"wz-alert\" [ngClass]=\"{ success: success, warning: warning }\">\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\n <p><ng-content></ng-content></p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: AlertComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'wz-alert', template: "<div class=\"wz-alert\" [ngClass]=\"{ success: success, warning: warning }\">\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\n <p><ng-content></ng-content></p>\n</div>\n" }]
|
|
17
|
+
}], ctorParameters: () => [], propDecorators: { icon: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}], warning: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}], success: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}], iconClass: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}] } });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC9hbGVydC9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFNekQsTUFBTSxPQUFPLGNBQWM7SUFDaEIsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNaLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDaEIsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixTQUFTLEdBQUcsa0JBQWtCLENBQUM7SUFDeEMsZ0JBQWUsQ0FBQztJQUNoQixRQUFRLEtBQVUsQ0FBQzt1R0FOUixjQUFjOzJGQUFkLGNBQWMsMElDTjNCLCtLQUlBOzsyRkRFYSxjQUFjO2tCQUoxQixTQUFTOytCQUNFLFVBQVU7d0RBSVgsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd3ei1hbGVydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWxlcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGljb24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHdhcm5pbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdWNjZXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaWNvbkNsYXNzID0gJ2ZhLXNvbGlkIGZhLWluZm8nO1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInd6LWFsZXJ0XCIgW25nQ2xhc3NdPVwieyBzdWNjZXNzOiBzdWNjZXNzLCB3YXJuaW5nOiB3YXJuaW5nIH1cIj5cbiAgPGkgKm5nSWY9XCJpY29uXCIgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCI+PC9pPlxuICA8cD48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9wPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
export class CheckboxComponent {
|
|
7
|
+
label = '';
|
|
8
|
+
value;
|
|
9
|
+
type;
|
|
10
|
+
alone = false;
|
|
11
|
+
checked = false;
|
|
12
|
+
id = '';
|
|
13
|
+
name;
|
|
14
|
+
disabled = false;
|
|
15
|
+
constructor() { }
|
|
16
|
+
_onChange;
|
|
17
|
+
_onTouched;
|
|
18
|
+
registerOnChange(fn) {
|
|
19
|
+
this._onChange = fn;
|
|
20
|
+
}
|
|
21
|
+
registerOnTouched(fn) {
|
|
22
|
+
this._onTouched = fn;
|
|
23
|
+
}
|
|
24
|
+
setDisabledState(isDisabled) {
|
|
25
|
+
this.disabled = isDisabled;
|
|
26
|
+
}
|
|
27
|
+
writeValue(obj) {
|
|
28
|
+
this.value = obj;
|
|
29
|
+
}
|
|
30
|
+
onChange(value) {
|
|
31
|
+
if (this._onChange) {
|
|
32
|
+
this._onChange(value);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: CheckboxComponent, selector: "wz-checkbox", inputs: { label: "label", value: "value", type: "type", alone: "alone", checked: "checked", id: "id", name: "name" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], ngImport: i0, template: "<div class=\"checkBoxField field\" [ngClass]=\"{ 'field--nowrap': type === 'column', alone: alone }\">\n <div class=\"field__row\">\n <input\n type=\"checkbox\"\n [id]=\"id\"\n class=\"is-checkradio\"\n [name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"value\"\n [checked]=\"checked\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"id\">{{ label }}</label>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: 'wz-checkbox', encapsulation: ViewEncapsulation.None, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }], template: "<div class=\"checkBoxField field\" [ngClass]=\"{ 'field--nowrap': type === 'column', alone: alone }\">\n <div class=\"field__row\">\n <input\n type=\"checkbox\"\n [id]=\"id\"\n class=\"is-checkradio\"\n [name]=\"name\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"value\"\n [checked]=\"checked\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"id\">{{ label }}</label>\n </div>\n</div>\n" }]
|
|
41
|
+
}], ctorParameters: () => [], propDecorators: { label: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], value: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], type: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], alone: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], checked: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], id: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], name: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}] } });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVF6RSxNQUFNLE9BQU8saUJBQWlCO0lBRTVCLEtBQUssR0FBRyxFQUFFLENBQUM7SUFFWCxLQUFLLENBQU07SUFFWCxJQUFJLENBQVM7SUFFYixLQUFLLEdBQUcsS0FBSyxDQUFDO0lBRWQsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUVoQixFQUFFLEdBQUcsRUFBRSxDQUFDO0lBRVIsSUFBSSxDQUFTO0lBQ2IsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixnQkFBZSxDQUFDO0lBQ1IsU0FBUyxDQUFXO0lBQ3BCLFVBQVUsQ0FBVztJQUU3QixnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVE7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDbkIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFLO1FBQ1osSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQzt1R0F4Q1UsaUJBQWlCOzJGQUFqQixpQkFBaUIsNEpBRmpCLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQywwQkNQMUYsZ2VBZ0JBOzsyRkRQYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsYUFBYSxpQkFFUixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7d0RBSXhGLEtBQUs7c0JBREosS0FBSztnQkFHTixLQUFLO3NCQURKLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLEtBQUs7c0JBREosS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUs7Z0JBR04sRUFBRTtzQkFERCxLQUFLO2dCQUdOLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3d6LWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IENoZWNrYm94Q29tcG9uZW50LCBtdWx0aTogdHJ1ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JveENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQElucHV0KClcbiAgbGFiZWwgPSAnJztcbiAgQElucHV0KClcbiAgdmFsdWU6IGFueTtcbiAgQElucHV0KClcbiAgdHlwZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBhbG9uZSA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBjaGVja2VkID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIGlkID0gJyc7XG4gIEBJbnB1dCgpXG4gIG5hbWU6IHN0cmluZztcbiAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgY29uc3RydWN0b3IoKSB7fVxuICBwcml2YXRlIF9vbkNoYW5nZTogRnVuY3Rpb247XG4gIHByaXZhdGUgX29uVG91Y2hlZDogRnVuY3Rpb247XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSBvYmo7XG4gIH1cblxuICBvbkNoYW5nZSh2YWx1ZSkge1xuICAgIGlmICh0aGlzLl9vbkNoYW5nZSkge1xuICAgICAgdGhpcy5fb25DaGFuZ2UodmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNoZWNrQm94RmllbGQgZmllbGRcIiBbbmdDbGFzc109XCJ7ICdmaWVsZC0tbm93cmFwJzogdHlwZSA9PT0gJ2NvbHVtbicsIGFsb25lOiBhbG9uZSB9XCI+XG4gIDxkaXYgY2xhc3M9XCJmaWVsZF9fcm93XCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIGNsYXNzPVwiaXMtY2hlY2tyYWRpb1wiXG4gICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuICAgIC8+XG4gICAgPGxhYmVsIFthdHRyLmZvcl09XCJpZFwiPnt7IGxhYmVsIH19PC9sYWJlbD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class DropdownComponent {
|
|
5
|
+
dropDownMenuClass;
|
|
6
|
+
disable = false;
|
|
7
|
+
constructor() { }
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
}
|
|
10
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: DropdownComponent, selector: "dropdown", inputs: { dropDownMenuClass: "dropDownMenuClass", disable: "disable" }, ngImport: i0, template: "<div class=\"dropdown dropdownWizi\" [ngClass]=\"{'is-hoverable': !disable}\">\n <div class=\"dropdown-trigger\">\n\n <!-- Label -->\n <ng-content select=\"[label]\"></ng-content>\n\n </div>\n <div class=\"dropdown-menu\" [ngClass]=\"dropDownMenuClass\" role=\"menu\">\n <div class=\"dropdown-content\">\n\n <!-- Content -->\n <ng-content select=\"[item]\"></ng-content>\n\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'dropdown', template: "<div class=\"dropdown dropdownWizi\" [ngClass]=\"{'is-hoverable': !disable}\">\n <div class=\"dropdown-trigger\">\n\n <!-- Label -->\n <ng-content select=\"[label]\"></ng-content>\n\n </div>\n <div class=\"dropdown-menu\" [ngClass]=\"dropDownMenuClass\" role=\"menu\">\n <div class=\"dropdown-content\">\n\n <!-- Content -->\n <ng-content select=\"[item]\"></ng-content>\n\n </div>\n </div>\n</div>" }]
|
|
16
|
+
}], ctorParameters: () => [], propDecorators: { dropDownMenuClass: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}], disable: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}] } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFNekQsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixpQkFBaUIsQ0FBUztJQUUxQixPQUFPLEdBQVksS0FBSyxDQUFDO0lBRXpCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDO3VHQVZVLGlCQUFpQjsyRkFBakIsaUJBQWlCLHdIQ045Qiw4Y0FlTTs7MkZEVE8saUJBQWlCO2tCQUo3QixTQUFTOytCQUNFLFVBQVU7d0RBTXBCLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBkcm9wRG93bk1lbnVDbGFzczogc3RyaW5nO1xuICBASW5wdXQoKVxuICBkaXNhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiZHJvcGRvd24gZHJvcGRvd25XaXppXCIgW25nQ2xhc3NdPVwieydpcy1ob3ZlcmFibGUnOiAhZGlzYWJsZX1cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tdHJpZ2dlclwiPlxuXG4gICAgICAgIDwhLS0gTGFiZWwgLS0+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltsYWJlbF1cIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudVwiIFtuZ0NsYXNzXT1cImRyb3BEb3duTWVudUNsYXNzXCIgcm9sZT1cIm1lbnVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWNvbnRlbnRcIj5cblxuICAgICAgICAgICAgPCEtLSBDb250ZW50IC0tPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2l0ZW1dXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "../../../directives/abstract-debounce/debounce-keyup.directive";
|
|
7
|
+
export class InputSearchComponent {
|
|
8
|
+
placeholder = '';
|
|
9
|
+
smallPadding = false;
|
|
10
|
+
id;
|
|
11
|
+
innerValue = '';
|
|
12
|
+
changeDebounced = new EventEmitter(); // debounced
|
|
13
|
+
onTouchedCallback = () => { };
|
|
14
|
+
onChangeCallback = () => { };
|
|
15
|
+
get value() {
|
|
16
|
+
return this.innerValue;
|
|
17
|
+
}
|
|
18
|
+
set value(v) {
|
|
19
|
+
if (v !== this.innerValue) {
|
|
20
|
+
this.innerValue = v;
|
|
21
|
+
this.onChangeCallback(v);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
writeValue(value) {
|
|
25
|
+
if (value !== this.innerValue) {
|
|
26
|
+
this.innerValue = value;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
registerOnChange(fn) {
|
|
30
|
+
this.onChangeCallback = fn;
|
|
31
|
+
}
|
|
32
|
+
registerOnTouched(fn) {
|
|
33
|
+
this.onTouchedCallback = fn;
|
|
34
|
+
}
|
|
35
|
+
handleDebouncedKeyUp(event) {
|
|
36
|
+
this.changeDebounced.emit(event.target.value);
|
|
37
|
+
}
|
|
38
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: InputSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: InputSearchComponent, selector: "wz-input-search", inputs: { placeholder: "placeholder", smallPadding: "smallPadding", id: "id" }, outputs: { changeDebounced: "changeDebounced" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], ngImport: i0, template: "<div class=\"input-search field\" [ngClass]=\"smallPadding ? 'small-padding' : ''\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp($event)\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.DebounceKeyupDirective, selector: "input[debounceKeyUp]" }] });
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: InputSearchComponent, decorators: [{
|
|
42
|
+
type: Component,
|
|
43
|
+
args: [{ selector: 'wz-input-search', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }], template: "<div class=\"input-search field\" [ngClass]=\"smallPadding ? 'small-padding' : ''\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp($event)\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n" }]
|
|
44
|
+
}], propDecorators: { placeholder: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], smallPadding: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], id: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], changeDebounced: [{
|
|
51
|
+
type: Output
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvaW5wdXQtc2VhcmNoL2lucHV0LXNlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2lucHV0LXNlYXJjaC9pbnB1dC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBT3pFLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUVqQixZQUFZLEdBQUcsS0FBSyxDQUFDO0lBRXJCLEVBQUUsQ0FBQztJQUNLLFVBQVUsR0FBUSxFQUFFLENBQUM7SUFDbkIsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUMsQ0FBQyxZQUFZO0lBRXpELGlCQUFpQixHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUN6QyxnQkFBZ0IsR0FBcUIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBRXRELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsQ0FBTTtRQUNkLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU0sb0JBQW9CLENBQUMsS0FBSztRQUMvQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7dUdBeENVLG9CQUFvQjsyRkFBcEIsb0JBQW9CLDJLQUZwQixDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsMEJDTjdGLGtlQWdCQTs7MkZEUmEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGlCQUFpQixhQUVoQixDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzhCQUkzRixXQUFXO3NCQURWLEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUdOLEVBQUU7c0JBREQsS0FBSztnQkFHSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3otaW5wdXQtc2VhcmNoJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBJbnB1dFNlYXJjaENvbXBvbmVudCwgbXVsdGk6IHRydWUgfV1cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpXG4gIHBsYWNlaG9sZGVyID0gJyc7XG4gIEBJbnB1dCgpXG4gIHNtYWxsUGFkZGluZyA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBpZDtcbiAgcHJpdmF0ZSBpbm5lclZhbHVlOiBhbnkgPSAnJztcbiAgQE91dHB1dCgpIGNoYW5nZURlYm91bmNlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpOyAvLyBkZWJvdW5jZWRcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHByaXZhdGUgb25DaGFuZ2VDYWxsYmFjazogKF86IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWU7XG4gIH1cblxuICBzZXQgdmFsdWUodjogYW55KSB7XG4gICAgaWYgKHYgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xuICAgICAgdGhpcy5pbm5lclZhbHVlID0gdjtcbiAgICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayh2KTtcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xuICAgICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZURlYm91bmNlZEtleVVwKGV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VEZWJvdW5jZWQuZW1pdChldmVudC50YXJnZXQudmFsdWUpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaW5wdXQtc2VhcmNoIGZpZWxkXCIgW25nQ2xhc3NdPVwic21hbGxQYWRkaW5nID8gJ3NtYWxsLXBhZGRpbmcnIDogJydcIj5cbiAgPHAgY2xhc3M9XCJjb250cm9sIGhhcy1pY29ucy1sZWZ0IGhhcy1pY29ucy1yaWdodFwiPlxuICAgIDxpbnB1dFxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIHZhbHVlPVwiXCJcbiAgICAgIGNsYXNzPVwiaW5wdXRcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICBkZWJvdW5jZUtleVVwXG4gICAgICBbZGVib3VuY2VUaW1lXT1cIjEwMDBcIlxuICAgICAgKG9uRXZlbnRDaGFuZ2UpPVwiaGFuZGxlRGVib3VuY2VkS2V5VXAoJGV2ZW50KVwiXG4gICAgLz5cbiAgICA8aSBjbGFzcz1cImljb24gZmFsIGZhLXNlYXJjaFwiPjwvaT5cbiAgPC9wPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "../../../../pipes/pagination/array-total-pages/array-pages.pipe";
|
|
6
|
+
import * as i4 from "../../../../pipes/pagination/large-number-of-page/large-number-of-page.pipe";
|
|
7
|
+
export class PageSelectorComponent {
|
|
8
|
+
set pagination(pagination) {
|
|
9
|
+
this._pagination = pagination;
|
|
10
|
+
}
|
|
11
|
+
get pagination() {
|
|
12
|
+
return this._pagination;
|
|
13
|
+
}
|
|
14
|
+
_pagination;
|
|
15
|
+
set totalItems(totalItems) {
|
|
16
|
+
this.numberOfPage = Math.ceil(totalItems / this.pagination.itemsPerPage);
|
|
17
|
+
this.largeNumberOfPage = this.numberOfPage > 30;
|
|
18
|
+
}
|
|
19
|
+
get totalItems() {
|
|
20
|
+
return this._totalItems;
|
|
21
|
+
}
|
|
22
|
+
_totalItems;
|
|
23
|
+
openAbsoluteSelect = false;
|
|
24
|
+
largeNumberOfPage = false;
|
|
25
|
+
numberOfPage = 0;
|
|
26
|
+
pageChange = new EventEmitter();
|
|
27
|
+
constructor() { }
|
|
28
|
+
onGotoPageChange(event, directValue) {
|
|
29
|
+
if (directValue) {
|
|
30
|
+
this.pageChange.emit(event);
|
|
31
|
+
this.openAbsoluteSelect = false;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.pageChange.emit(parseInt(event.target.value));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
38
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: PageSelectorComponent, selector: "wz-page-selector", inputs: { pagination: "pagination", totalItems: "totalItems" }, outputs: { pageChange: "pageChange" }, ngImport: i0, template: "<div class=\"wz-selector\">\r\n\r\n <div class=\"wz-selector__default\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\">\r\n <div class=\"wz-selector__default__base\" *ngIf=\"largeNumberOfPage;\" (click)=\"openAbsoluteSelect = !openAbsoluteSelect\">\r\n <input name=\"page-input\" [value]=\"pagination.currentPage\" (change)=\"onGotoPageChange($event, false);openAbsoluteSelect = false;\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\" />\r\n <i class=\"fa-solid fa-sort-down\"></i>\r\n </div>\r\n <div class=\"wz-selector__default__absolute\" *ngIf=\"openAbsoluteSelect\">\r\n <div class=\"wz-selector__default__absolute__wrapper\" *ngFor=\"let pageIndex of (pagination.totalItems | LargeNumberOfPage: pagination.itemsPerPage : pagination.currentPage).slice().reverse() as result\">\r\n <div class=\"wz-selector__default__absolute__wrapper__item\" [ngClass]=\"{'selected': pageIndex.value === pagination.currentPage}\" (click)=\"onGotoPageChange(pageIndex.value, true)\">\r\n <span>{{ pageIndex.display }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!largeNumberOfPage\">\r\n <select name=\"page\" (change)=\"onGotoPageChange($event, false)\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\">\r\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\r\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\r\n {{ pageIndex }}\r\n </option>\r\n </ng-container>\r\n </select>\r\n </ng-container>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "pipe", type: i3.PagniationArrayTotalPages, name: "ArrayTotalPages" }, { kind: "pipe", type: i4.LargeNumberOfPagePipe, name: "LargeNumberOfPage" }] });
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PageSelectorComponent, decorators: [{
|
|
41
|
+
type: Component,
|
|
42
|
+
args: [{ selector: 'wz-page-selector', template: "<div class=\"wz-selector\">\r\n\r\n <div class=\"wz-selector__default\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\">\r\n <div class=\"wz-selector__default__base\" *ngIf=\"largeNumberOfPage;\" (click)=\"openAbsoluteSelect = !openAbsoluteSelect\">\r\n <input name=\"page-input\" [value]=\"pagination.currentPage\" (change)=\"onGotoPageChange($event, false);openAbsoluteSelect = false;\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\" />\r\n <i class=\"fa-solid fa-sort-down\"></i>\r\n </div>\r\n <div class=\"wz-selector__default__absolute\" *ngIf=\"openAbsoluteSelect\">\r\n <div class=\"wz-selector__default__absolute__wrapper\" *ngFor=\"let pageIndex of (pagination.totalItems | LargeNumberOfPage: pagination.itemsPerPage : pagination.currentPage).slice().reverse() as result\">\r\n <div class=\"wz-selector__default__absolute__wrapper__item\" [ngClass]=\"{'selected': pageIndex.value === pagination.currentPage}\" (click)=\"onGotoPageChange(pageIndex.value, true)\">\r\n <span>{{ pageIndex.display }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!largeNumberOfPage\">\r\n <select name=\"page\" (change)=\"onGotoPageChange($event, false)\" [ngStyle]=\"{'width': 40 + (10*pagination.currentPage.toString().length) + 'px'}\">\r\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\r\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\r\n {{ pageIndex }}\r\n </option>\r\n </ng-container>\r\n </select>\r\n </ng-container>\r\n</div>\r\n" }]
|
|
43
|
+
}], ctorParameters: () => [], propDecorators: { pagination: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], totalItems: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], pageChange: [{
|
|
48
|
+
type: Output
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL3BhZ2luYXRpb24vcGFnZS1zZWxlY3Rvci9wYWdlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvcGFnaW5hdGlvbi9wYWdlLXNlbGVjdG9yL3BhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBWXZFLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsSUFBYSxVQUFVLENBQUMsVUFBNkI7UUFDbkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7SUFDaEMsQ0FBQztJQUNELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBQ08sV0FBVyxDQUFvQjtJQUV2QyxJQUFhLFVBQVUsQ0FBQyxVQUFrQjtRQUN4QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFDRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUNPLFdBQVcsQ0FBUztJQUM1QixrQkFBa0IsR0FBVyxLQUFLLENBQUM7SUFFbkMsaUJBQWlCLEdBQVksS0FBSyxDQUFDO0lBQ25DLFlBQVksR0FBVyxDQUFDLENBQUM7SUFFZixVQUFVLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFaEUsZ0JBQWUsQ0FBQztJQUVoQixnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsV0FBVztRQUNqQyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDbEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7SUFDSCxDQUFDO3VHQWxDVSxxQkFBcUI7MkZBQXJCLHFCQUFxQiwrSkNabEMsd3NEQTBCQTs7MkZEZGEscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLGtCQUFrQjt3REFLZixVQUFVO3NCQUF0QixLQUFLO2dCQVFPLFVBQVU7c0JBQXRCLEtBQUs7Z0JBYUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGlvbkZpbHRlcnMge1xuICB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gIGl0ZW1zUGVyUGFnZTogbnVtYmVyO1xuICBjdXJyZW50UGFnZTogbnVtYmVyO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3ei1wYWdlLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VTZWxlY3RvckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgc2V0IHBhZ2luYXRpb24ocGFnaW5hdGlvbjogUGFnaW5hdGlvbkZpbHRlcnMpIHtcbiAgICB0aGlzLl9wYWdpbmF0aW9uID0gcGFnaW5hdGlvbjtcbiAgfVxuICBnZXQgcGFnaW5hdGlvbigpOiBQYWdpbmF0aW9uRmlsdGVycyB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2luYXRpb247XG4gIH1cbiAgcHJpdmF0ZSBfcGFnaW5hdGlvbjogUGFnaW5hdGlvbkZpbHRlcnM7XG5cbiAgQElucHV0KCkgc2V0IHRvdGFsSXRlbXModG90YWxJdGVtczogbnVtYmVyKSB7XG4gICAgdGhpcy5udW1iZXJPZlBhZ2UgPSBNYXRoLmNlaWwodG90YWxJdGVtcyAvIHRoaXMucGFnaW5hdGlvbi5pdGVtc1BlclBhZ2UpO1xuICAgIHRoaXMubGFyZ2VOdW1iZXJPZlBhZ2UgPSB0aGlzLm51bWJlck9mUGFnZSA+IDMwO1xuICB9XG4gIGdldCB0b3RhbEl0ZW1zKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3RvdGFsSXRlbXM7XG4gIH1cbiAgcHJpdmF0ZSBfdG90YWxJdGVtczogbnVtYmVyO1xuICBvcGVuQWJzb2x1dGVTZWxlY3Q6Ym9vbGVhbiA9IGZhbHNlO1xuXG4gIGxhcmdlTnVtYmVyT2ZQYWdlOiBib29sZWFuID0gZmFsc2U7XG4gIG51bWJlck9mUGFnZTogbnVtYmVyID0gMDtcblxuICBAT3V0cHV0KCkgcGFnZUNoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG9uR290b1BhZ2VDaGFuZ2UoZXZlbnQsIGRpcmVjdFZhbHVlKSB7XG4gICAgaWYgKGRpcmVjdFZhbHVlKSB7XG4gICAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdChldmVudCk7XG4gICAgICB0aGlzLm9wZW5BYnNvbHV0ZVNlbGVjdCA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdChwYXJzZUludChldmVudC50YXJnZXQudmFsdWUpKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3ei1zZWxlY3RvclwiPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwid3otc2VsZWN0b3JfX2RlZmF1bHRcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogNDAgKyAoMTAqcGFnaW5hdGlvbi5jdXJyZW50UGFnZS50b1N0cmluZygpLmxlbmd0aCkgKyAncHgnfVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInd6LXNlbGVjdG9yX19kZWZhdWx0X19iYXNlXCIgKm5nSWY9XCJsYXJnZU51bWJlck9mUGFnZTtcIiAoY2xpY2spPVwib3BlbkFic29sdXRlU2VsZWN0ID0gIW9wZW5BYnNvbHV0ZVNlbGVjdFwiPlxyXG4gICAgICA8aW5wdXQgbmFtZT1cInBhZ2UtaW5wdXRcIiBbdmFsdWVdPVwicGFnaW5hdGlvbi5jdXJyZW50UGFnZVwiIChjaGFuZ2UpPVwib25Hb3RvUGFnZUNoYW5nZSgkZXZlbnQsIGZhbHNlKTtvcGVuQWJzb2x1dGVTZWxlY3QgPSBmYWxzZTtcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogNDAgKyAoMTAqcGFnaW5hdGlvbi5jdXJyZW50UGFnZS50b1N0cmluZygpLmxlbmd0aCkgKyAncHgnfVwiIC8+XHJcbiAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtc29ydC1kb3duXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwid3otc2VsZWN0b3JfX2RlZmF1bHRfX2Fic29sdXRlXCIgKm5nSWY9XCJvcGVuQWJzb2x1dGVTZWxlY3RcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInd6LXNlbGVjdG9yX19kZWZhdWx0X19hYnNvbHV0ZV9fd3JhcHBlclwiICpuZ0Zvcj1cImxldCBwYWdlSW5kZXggb2YgKHBhZ2luYXRpb24udG90YWxJdGVtcyB8IExhcmdlTnVtYmVyT2ZQYWdlOiBwYWdpbmF0aW9uLml0ZW1zUGVyUGFnZSA6IHBhZ2luYXRpb24uY3VycmVudFBhZ2UpLnNsaWNlKCkucmV2ZXJzZSgpIGFzIHJlc3VsdFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3ei1zZWxlY3Rvcl9fZGVmYXVsdF9fYWJzb2x1dGVfX3dyYXBwZXJfX2l0ZW1cIiBbbmdDbGFzc109XCJ7J3NlbGVjdGVkJzogcGFnZUluZGV4LnZhbHVlID09PSBwYWdpbmF0aW9uLmN1cnJlbnRQYWdlfVwiIChjbGljayk9XCJvbkdvdG9QYWdlQ2hhbmdlKHBhZ2VJbmRleC52YWx1ZSwgdHJ1ZSlcIj5cclxuICAgICAgICAgIDxzcGFuPnt7IHBhZ2VJbmRleC5kaXNwbGF5IH19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxhcmdlTnVtYmVyT2ZQYWdlXCI+XHJcbiAgICA8c2VsZWN0IG5hbWU9XCJwYWdlXCIgKGNoYW5nZSk9XCJvbkdvdG9QYWdlQ2hhbmdlKCRldmVudCwgZmFsc2UpXCIgW25nU3R5bGVdPVwieyd3aWR0aCc6IDQwICsgKDEwKnBhZ2luYXRpb24uY3VycmVudFBhZ2UudG9TdHJpbmcoKS5sZW5ndGgpICsgJ3B4J31cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcGFnZUluZGV4IG9mIHBhZ2luYXRpb24udG90YWxJdGVtcyB8IEFycmF5VG90YWxQYWdlczogcGFnaW5hdGlvbi5pdGVtc1BlclBhZ2VcIj5cclxuICAgICAgICA8b3B0aW9uIFtzZWxlY3RlZF09XCJwYWdlSW5kZXggPT09IHBhZ2luYXRpb24uY3VycmVudFBhZ2VcIiBbdmFsdWVdPVwicGFnZUluZGV4XCI+XHJcbiAgICAgICAgICB7eyBwYWdlSW5kZXggfX1cclxuICAgICAgICA8L29wdGlvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3NlbGVjdD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbiJdfQ==
|