@wizishop/img-manager 18.2.0 → 18.2.1-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.1-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,75 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ImgSelectionService {
|
|
5
|
+
multipleImgMode = false;
|
|
6
|
+
imgSelection$ = new BehaviorSubject([]);
|
|
7
|
+
imgSelectedListLoading$ = new BehaviorSubject(false);
|
|
8
|
+
constructor() { }
|
|
9
|
+
getImgSelection() {
|
|
10
|
+
return this.imgSelection$.getValue();
|
|
11
|
+
}
|
|
12
|
+
// Use in img manager webelement, when the product img selection is retrieved
|
|
13
|
+
setImgSelection(imgSelectedList) {
|
|
14
|
+
this.imgSelection$.next(imgSelectedList || []);
|
|
15
|
+
}
|
|
16
|
+
addImgSelected(picture) {
|
|
17
|
+
if (this.multipleImgMode) {
|
|
18
|
+
this.imgSelection$.next([...this.imgSelection$.getValue(), picture]);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
this.imgSelection$.next([picture]);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
removeImgSelectedByIndex(index) {
|
|
25
|
+
const imgSelectedList = this.imgSelection$.getValue();
|
|
26
|
+
imgSelectedList.splice(index, 1);
|
|
27
|
+
this.imgSelection$.next(imgSelectedList);
|
|
28
|
+
}
|
|
29
|
+
removeImgSelectedById(id_file) {
|
|
30
|
+
if (!this.multipleImgMode) {
|
|
31
|
+
this.imgSelection$.next([]);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
this.imgSelection$.next(this.imgSelection$.getValue().filter(img => img.id_file !== id_file));
|
|
35
|
+
}
|
|
36
|
+
removeImgSelectionByIds(id_file_list) {
|
|
37
|
+
if (!this.multipleImgMode) {
|
|
38
|
+
this.imgSelection$.next([]);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
this.imgSelection$.next(this.imgSelection$.getValue().filter(img => id_file_list.includes(img.id_file)));
|
|
42
|
+
}
|
|
43
|
+
removeAllImgSelected() {
|
|
44
|
+
this.imgSelection$.next([]);
|
|
45
|
+
}
|
|
46
|
+
setMultipleImgMode(activated) {
|
|
47
|
+
this.multipleImgMode = activated;
|
|
48
|
+
}
|
|
49
|
+
initImgSelectedList(imgSelectedList) {
|
|
50
|
+
// Retrieve the imgSelectedList from parameter
|
|
51
|
+
if (imgSelectedList) {
|
|
52
|
+
this.imgSelection$.next(imgSelectedList);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
this.imgSelection$.next([]);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Use angular cdk function
|
|
59
|
+
* Called by img selection component
|
|
60
|
+
* @param event
|
|
61
|
+
*/
|
|
62
|
+
moveImgOrder(event) {
|
|
63
|
+
const fromIndex = event.previousIndex;
|
|
64
|
+
const toIndex = event.currentIndex;
|
|
65
|
+
const imgSelectedList = this.imgSelection$.getValue();
|
|
66
|
+
imgSelectedList.splice(toIndex, 0, imgSelectedList.splice(fromIndex, 1)[0]);
|
|
67
|
+
this.imgSelection$.next(imgSelectedList);
|
|
68
|
+
}
|
|
69
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ImgSelectionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
70
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ImgSelectionService });
|
|
71
|
+
}
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ImgSelectionService, decorators: [{
|
|
73
|
+
type: Injectable
|
|
74
|
+
}], ctorParameters: () => [] });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXNlbGVjdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9zZXJ2aWNlcy9pbWctc2VsZWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBc0IsTUFBTSxlQUFlLENBQUM7QUFFL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFJdkMsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixlQUFlLEdBQVksS0FBSyxDQUFDO0lBQ2pDLGFBQWEsR0FBcUMsSUFBSSxlQUFlLENBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQzNGLHVCQUF1QixHQUE2QixJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUV4RixnQkFBZSxDQUFDO0lBRWhCLGVBQWU7UUFDWCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSxlQUFlLENBQUMsZUFBZ0M7UUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxjQUFjLENBQUMsT0FBdUI7UUFDbEMsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUN6RSxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDO0lBQ0wsQ0FBQztJQUVELHdCQUF3QixDQUFDLEtBQWE7UUFDbEMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0RCxlQUFlLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUU3QyxDQUFDO0lBRUQscUJBQXFCLENBQUMsT0FBZTtRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzVCLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELHVCQUF1QixDQUFDLFlBQXNCO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUIsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsb0JBQW9CO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFrQjtRQUNqQyxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsZUFBZ0M7UUFDaEQsOENBQThDO1FBQzlDLElBQUksZUFBZSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDekMsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFlBQVksQ0FBQyxLQUE0QjtRQUNyQyxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDbkMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0RCxlQUFlLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM3QyxDQUFDO3VHQTVFUSxtQkFBbUI7MkdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbWdQaWN0dXJlRFRPIH0gZnJvbSAnLi4vZHRvL2ltZy1tYW5hZ2VyLmR0byc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDZGtEcmFnRHJvcCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSW1nU2VsZWN0aW9uU2VydmljZSB7XHJcblxyXG4gICAgbXVsdGlwbGVJbWdNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBpbWdTZWxlY3Rpb24kOiBCZWhhdmlvclN1YmplY3Q8SW1nUGljdHVyZURUT1tdPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SW1nUGljdHVyZURUT1tdPihbXSk7XHJcbiAgICBpbWdTZWxlY3RlZExpc3RMb2FkaW5nJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICAgIGdldEltZ1NlbGVjdGlvbigpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pbWdTZWxlY3Rpb24kLmdldFZhbHVlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVXNlIGluIGltZyBtYW5hZ2VyIHdlYmVsZW1lbnQsIHdoZW4gdGhlIHByb2R1Y3QgaW1nIHNlbGVjdGlvbiBpcyByZXRyaWV2ZWRcclxuICAgIHNldEltZ1NlbGVjdGlvbihpbWdTZWxlY3RlZExpc3Q6IEltZ1BpY3R1cmVEVE9bXSkge1xyXG4gICAgICAgIHRoaXMuaW1nU2VsZWN0aW9uJC5uZXh0KGltZ1NlbGVjdGVkTGlzdCB8fCBbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkSW1nU2VsZWN0ZWQocGljdHVyZSA6IEltZ1BpY3R1cmVEVE8pIHtcclxuICAgICAgICBpZiAodGhpcy5tdWx0aXBsZUltZ01vZGUpIHtcclxuICAgICAgICAgICAgdGhpcy5pbWdTZWxlY3Rpb24kLm5leHQoWy4uLnRoaXMuaW1nU2VsZWN0aW9uJC5nZXRWYWx1ZSgpLCBwaWN0dXJlXSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pbWdTZWxlY3Rpb24kLm5leHQoW3BpY3R1cmVdKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlSW1nU2VsZWN0ZWRCeUluZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgICAgICBjb25zdCBpbWdTZWxlY3RlZExpc3QgPSB0aGlzLmltZ1NlbGVjdGlvbiQuZ2V0VmFsdWUoKTtcclxuICAgICAgICBpbWdTZWxlY3RlZExpc3Quc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB0aGlzLmltZ1NlbGVjdGlvbiQubmV4dChpbWdTZWxlY3RlZExpc3QpO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVJbWdTZWxlY3RlZEJ5SWQoaWRfZmlsZTogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm11bHRpcGxlSW1nTW9kZSkge1xyXG4gICAgICAgICAgICB0aGlzLmltZ1NlbGVjdGlvbiQubmV4dChbXSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbWdTZWxlY3Rpb24kLm5leHQodGhpcy5pbWdTZWxlY3Rpb24kLmdldFZhbHVlKCkuZmlsdGVyKGltZyA9PiBpbWcuaWRfZmlsZSAhPT0gaWRfZmlsZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUltZ1NlbGVjdGlvbkJ5SWRzKGlkX2ZpbGVfbGlzdDogc3RyaW5nW10pIHtcclxuICAgICAgICBpZiAoIXRoaXMubXVsdGlwbGVJbWdNb2RlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW1nU2VsZWN0aW9uJC5uZXh0KFtdKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmltZ1NlbGVjdGlvbiQubmV4dCh0aGlzLmltZ1NlbGVjdGlvbiQuZ2V0VmFsdWUoKS5maWx0ZXIoaW1nID0+IGlkX2ZpbGVfbGlzdC5pbmNsdWRlcyhpbWcuaWRfZmlsZSkpKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVBbGxJbWdTZWxlY3RlZCgpIHsgLy8gVE9ETyB0ZXN0IGl0XHJcbiAgICAgICAgdGhpcy5pbWdTZWxlY3Rpb24kLm5leHQoW10pO1xyXG4gICAgfVxyXG5cclxuICAgIHNldE11bHRpcGxlSW1nTW9kZShhY3RpdmF0ZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLm11bHRpcGxlSW1nTW9kZSA9IGFjdGl2YXRlZDtcclxuICAgIH1cclxuXHJcbiAgICBpbml0SW1nU2VsZWN0ZWRMaXN0KGltZ1NlbGVjdGVkTGlzdDogSW1nUGljdHVyZURUT1tdKSB7XHJcbiAgICAgICAgLy8gUmV0cmlldmUgdGhlIGltZ1NlbGVjdGVkTGlzdCBmcm9tIHBhcmFtZXRlclxyXG4gICAgICAgIGlmIChpbWdTZWxlY3RlZExpc3QpIHtcclxuICAgICAgICAgICAgdGhpcy5pbWdTZWxlY3Rpb24kLm5leHQoaW1nU2VsZWN0ZWRMaXN0KTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmltZ1NlbGVjdGlvbiQubmV4dChbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBVc2UgYW5ndWxhciBjZGsgZnVuY3Rpb25cclxuICAgICAqIENhbGxlZCBieSBpbWcgc2VsZWN0aW9uIGNvbXBvbmVudFxyXG4gICAgICogQHBhcmFtIGV2ZW50XHJcbiAgICAgKi9cclxuICAgIG1vdmVJbWdPcmRlcihldmVudDogQ2RrRHJhZ0Ryb3A8c3RyaW5nW10+KSB7XHJcbiAgICAgICAgY29uc3QgZnJvbUluZGV4ID0gZXZlbnQucHJldmlvdXNJbmRleDtcclxuICAgICAgICBjb25zdCB0b0luZGV4ID0gZXZlbnQuY3VycmVudEluZGV4O1xyXG4gICAgICAgIGNvbnN0IGltZ1NlbGVjdGVkTGlzdCA9IHRoaXMuaW1nU2VsZWN0aW9uJC5nZXRWYWx1ZSgpO1xyXG4gICAgICAgIGltZ1NlbGVjdGVkTGlzdC5zcGxpY2UodG9JbmRleCwgMCwgaW1nU2VsZWN0ZWRMaXN0LnNwbGljZShmcm9tSW5kZXgsIDEpWzBdKTtcclxuICAgICAgICB0aGlzLmltZ1NlbGVjdGlvbiQubmV4dChpbWdTZWxlY3RlZExpc3QpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
3
|
+
import { map } from "rxjs/operators";
|
|
4
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
5
|
+
import { ApiService } from './api.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
import * as i2 from "./api.service";
|
|
9
|
+
import * as i3 from "@ngx-translate/core";
|
|
10
|
+
export class PexelsService {
|
|
11
|
+
http;
|
|
12
|
+
apiService;
|
|
13
|
+
translateService;
|
|
14
|
+
get apiBaseUrl() {
|
|
15
|
+
return this.apiService.CONFIG.pexels_route;
|
|
16
|
+
}
|
|
17
|
+
;
|
|
18
|
+
get apiKey() {
|
|
19
|
+
return this.apiService.CONFIG.pexels_token;
|
|
20
|
+
}
|
|
21
|
+
lang;
|
|
22
|
+
languages = { 'fr': 'fr-FR', 'en': 'en-US', 'it': 'it-IT', 'es': 'es-ES' };
|
|
23
|
+
constructor(http, apiService, translateService) {
|
|
24
|
+
this.http = http;
|
|
25
|
+
this.apiService = apiService;
|
|
26
|
+
this.translateService = translateService;
|
|
27
|
+
this.setLang(this.translateService.currentLang);
|
|
28
|
+
this.translateService.onLangChange.subscribe(langData => {
|
|
29
|
+
this.setLang(langData.lang);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
setLang(lang) {
|
|
33
|
+
this.lang = this.languages[lang] ? this.languages[lang] : 'fr-FR';
|
|
34
|
+
}
|
|
35
|
+
searchOnPexels(toSearch, perPage, page) {
|
|
36
|
+
const httpOptions = {
|
|
37
|
+
headers: new HttpHeaders({
|
|
38
|
+
Authorization: this.apiKey
|
|
39
|
+
})
|
|
40
|
+
};
|
|
41
|
+
let request;
|
|
42
|
+
// If search value is not empty or blank
|
|
43
|
+
if (toSearch && !/^\s*$/.test(toSearch)) {
|
|
44
|
+
request = `/search?query=${toSearch}&per_page=${perPage}&page=${page}&locale=${this.lang}`;
|
|
45
|
+
}
|
|
46
|
+
else { // Search by category or display Pexels selection
|
|
47
|
+
const shopCategory = this.apiService.getShopCategory();
|
|
48
|
+
// Search by shop category
|
|
49
|
+
if (shopCategory && shopCategory !== 'other' && shopCategory !== 'btob' && shopCategory !== 'default') {
|
|
50
|
+
request = `/search?query=${shopCategory}&per_page=${perPage}&page=${page}&locale=en-US`;
|
|
51
|
+
}
|
|
52
|
+
else { // Display Pexels selection
|
|
53
|
+
request = `/curated?per_page=${perPage}&page=${page}`;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return this.http.get(this.apiBaseUrl + request, httpOptions).pipe(map((data) => {
|
|
57
|
+
return data;
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PexelsService, deps: [{ token: i1.HttpClient }, { token: i2.ApiService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
61
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PexelsService });
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: PexelsService, decorators: [{
|
|
64
|
+
type: Injectable
|
|
65
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ApiService }, { type: i3.TranslateService }] });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV4ZWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL3NlcnZpY2VzL3BleGVscy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFHM0MsTUFBTSxPQUFPLGFBQWE7SUFXZDtJQUNBO0lBQ0E7SUFaVixJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztJQUM3QyxDQUFDO0lBQUEsQ0FBQztJQUNGLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO0lBQzdDLENBQUM7SUFDRCxJQUFJLENBQVM7SUFDYixTQUFTLEdBQUcsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDLENBQUM7SUFFekUsWUFDVSxJQUFnQixFQUNoQixVQUFzQixFQUN0QixnQkFBa0M7UUFGbEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFFMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUE7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVk7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDbkUsQ0FBQztJQUVGLGNBQWMsQ0FBQyxRQUFnQixFQUFFLE9BQWUsRUFBRSxJQUFZO1FBQzVELE1BQU0sV0FBVyxHQUFHO1lBQ2xCLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDdkIsYUFBYSxFQUFFLElBQUksQ0FBQyxNQUFNO2FBQzNCLENBQUM7U0FDSCxDQUFDO1FBRUYsSUFBSSxPQUFPLENBQUM7UUFFWix3Q0FBd0M7UUFDeEMsSUFBSSxRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDeEMsT0FBTyxHQUFHLGlCQUFpQixRQUFRLGFBQWEsT0FBTyxTQUFTLElBQUksV0FBVyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFN0YsQ0FBQzthQUFNLENBQUMsQ0FBQyxpREFBaUQ7WUFDeEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUV2RCwwQkFBMEI7WUFDMUIsSUFBSSxZQUFZLElBQUksWUFBWSxLQUFLLE9BQU8sSUFBSSxZQUFZLEtBQUssTUFBTSxJQUFJLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDdEcsT0FBTyxHQUFHLGlCQUFpQixZQUFZLGFBQWEsT0FBTyxTQUFTLElBQUksZUFBZSxDQUFDO1lBQzFGLENBQUM7aUJBQU0sQ0FBQyxDQUFDLDJCQUEyQjtnQkFDbEMsT0FBTyxHQUFHLHFCQUFxQixPQUFPLFNBQVMsSUFBSSxFQUFFLENBQUM7WUFDeEQsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDL0QsR0FBRyxDQUFDLENBQUMsSUFBaUIsRUFBRSxFQUFFO1lBQ3hCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7dUdBdERVLGFBQWE7MkdBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7SHR0cENsaWVudCwgSHR0cEhlYWRlcnN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgbWFwfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1d6SW1nTGliRHRvfSBmcm9tIFwiLi4vZHRvL3BleGVscy1pbWcuZHRvXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUGV4ZWxzU2VydmljZSB7XHJcbiAgZ2V0IGFwaUJhc2VVcmwoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLkNPTkZJRy5wZXhlbHNfcm91dGU7XHJcbiAgfTtcclxuICBnZXQgYXBpS2V5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5DT05GSUcucGV4ZWxzX3Rva2VuO1xyXG4gIH1cclxuICBsYW5nOiBzdHJpbmc7XHJcbiAgbGFuZ3VhZ2VzID0geydmcic6ICdmci1GUicsICdlbic6ICdlbi1VUycsICdpdCc6ICdpdC1JVCcsICdlcyc6ICdlcy1FUyd9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgYXBpU2VydmljZTogQXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5zZXRMYW5nKHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyk7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlLnN1YnNjcmliZShsYW5nRGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0TGFuZyhsYW5nRGF0YS5sYW5nKTtcclxuICAgIH0pXHJcbiAgIH1cclxuXHJcbiAgIHNldExhbmcobGFuZzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmxhbmcgPSB0aGlzLmxhbmd1YWdlc1tsYW5nXSA/IHRoaXMubGFuZ3VhZ2VzW2xhbmddIDogJ2ZyLUZSJztcclxuICAgfVxyXG5cclxuICBzZWFyY2hPblBleGVscyh0b1NlYXJjaDogc3RyaW5nLCBwZXJQYWdlOiBudW1iZXIsIHBhZ2U6IG51bWJlcik6IE9ic2VydmFibGU8V3pJbWdMaWJEdG8+IHtcclxuICAgIGNvbnN0IGh0dHBPcHRpb25zID0ge1xyXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAgIEF1dGhvcml6YXRpb246IHRoaXMuYXBpS2V5XHJcbiAgICAgIH0pXHJcbiAgICB9O1xyXG5cclxuICAgIGxldCByZXF1ZXN0O1xyXG5cclxuICAgIC8vIElmIHNlYXJjaCB2YWx1ZSBpcyBub3QgZW1wdHkgb3IgYmxhbmtcclxuICAgIGlmICh0b1NlYXJjaCAmJiAhL15cXHMqJC8udGVzdCh0b1NlYXJjaCkpIHtcclxuICAgICAgcmVxdWVzdCA9IGAvc2VhcmNoP3F1ZXJ5PSR7dG9TZWFyY2h9JnBlcl9wYWdlPSR7cGVyUGFnZX0mcGFnZT0ke3BhZ2V9JmxvY2FsZT0ke3RoaXMubGFuZ31gO1xyXG5cclxuICAgIH0gZWxzZSB7IC8vIFNlYXJjaCBieSBjYXRlZ29yeSBvciBkaXNwbGF5IFBleGVscyBzZWxlY3Rpb25cclxuICAgICAgY29uc3Qgc2hvcENhdGVnb3J5ID0gdGhpcy5hcGlTZXJ2aWNlLmdldFNob3BDYXRlZ29yeSgpO1xyXG5cclxuICAgICAgLy8gU2VhcmNoIGJ5IHNob3AgY2F0ZWdvcnlcclxuICAgICAgaWYgKHNob3BDYXRlZ29yeSAmJiBzaG9wQ2F0ZWdvcnkgIT09ICdvdGhlcicgJiYgc2hvcENhdGVnb3J5ICE9PSAnYnRvYicgJiYgc2hvcENhdGVnb3J5ICE9PSAnZGVmYXVsdCcpIHtcclxuICAgICAgICByZXF1ZXN0ID0gYC9zZWFyY2g/cXVlcnk9JHtzaG9wQ2F0ZWdvcnl9JnBlcl9wYWdlPSR7cGVyUGFnZX0mcGFnZT0ke3BhZ2V9JmxvY2FsZT1lbi1VU2A7XHJcbiAgICAgIH0gZWxzZSB7IC8vIERpc3BsYXkgUGV4ZWxzIHNlbGVjdGlvblxyXG4gICAgICAgIHJlcXVlc3QgPSBgL2N1cmF0ZWQ/cGVyX3BhZ2U9JHtwZXJQYWdlfSZwYWdlPSR7cGFnZX1gO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5hcGlCYXNlVXJsICsgcmVxdWVzdCwgaHR0cE9wdGlvbnMpLnBpcGUoXHJcbiAgICAgIG1hcCgoZGF0YTogV3pJbWdMaWJEdG8pID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { AlertService } from './alert.service';
|
|
3
|
+
import { ApiService } from './api.service';
|
|
4
|
+
import { ImgManagerService } from './img-manager.service';
|
|
5
|
+
import { tap } from 'rxjs';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "./api.service";
|
|
8
|
+
import * as i2 from "./alert.service";
|
|
9
|
+
import * as i3 from "./img-manager.service";
|
|
10
|
+
export class RenamePictureService {
|
|
11
|
+
apiService;
|
|
12
|
+
alertService;
|
|
13
|
+
imgManagerService;
|
|
14
|
+
picturesList = [];
|
|
15
|
+
errorRenameImg = 'ImgManager.ImgList.errorRenameImg';
|
|
16
|
+
msgSavingImgName = 'ImgManager.ImgLib.savingImgName';
|
|
17
|
+
msgImgNameSaved = 'ImgManager.ImgLib.imgNameSaved';
|
|
18
|
+
constructor(apiService, alertService, imgManagerService) {
|
|
19
|
+
this.apiService = apiService;
|
|
20
|
+
this.alertService = alertService;
|
|
21
|
+
this.imgManagerService = imgManagerService;
|
|
22
|
+
}
|
|
23
|
+
setPicturesList(picturesList) {
|
|
24
|
+
this.picturesList = picturesList;
|
|
25
|
+
}
|
|
26
|
+
renamePicture(pictureNameUpdate) {
|
|
27
|
+
const picture = this.getPictureById(pictureNameUpdate.id);
|
|
28
|
+
if (!picture) {
|
|
29
|
+
this.alertService.openAlert(this.errorRenameImg);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
this.alertService.openAlert(this.msgSavingImgName);
|
|
33
|
+
this.apiService
|
|
34
|
+
.changeImgName(picture.display_name, picture.id_file).pipe(tap(() => this.imgManagerService.refreshImageList$.next()))
|
|
35
|
+
.subscribe({
|
|
36
|
+
next: (data) => {
|
|
37
|
+
picture.display_name = data.display_name;
|
|
38
|
+
this.alertService.openAlert(this.msgImgNameSaved);
|
|
39
|
+
},
|
|
40
|
+
error: () => {
|
|
41
|
+
picture.display_name = pictureNameUpdate.previousName;
|
|
42
|
+
this.alertService.openAlert(this.errorRenameImg);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
changeImageName(name, idFile) {
|
|
47
|
+
return this.apiService.changeImgName(name, idFile).pipe(tap(() => this.imgManagerService.refreshImageList$.next()));
|
|
48
|
+
}
|
|
49
|
+
getPictureById(id_file) {
|
|
50
|
+
if (!this.picturesList) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
for (const picture of this.picturesList) {
|
|
54
|
+
if (picture.id_file === id_file) {
|
|
55
|
+
return picture;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: RenamePictureService, deps: [{ token: i1.ApiService }, { token: i2.AlertService }, { token: i3.ImgManagerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
61
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: RenamePictureService });
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: RenamePictureService, decorators: [{
|
|
64
|
+
type: Injectable
|
|
65
|
+
}], ctorParameters: () => [{ type: i1.ApiService }, { type: i2.AlertService }, { type: i3.ImgManagerService }] });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuYW1lLXBpY3R1cmUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvc2VydmljZXMvcmVuYW1lLXBpY3R1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBRzNCLE1BQU0sT0FBTyxvQkFBb0I7SUFRbkI7SUFDQTtJQUNBO0lBUkYsWUFBWSxHQUFvQixFQUFFLENBQUM7SUFDbkMsY0FBYyxHQUFHLG1DQUFtQyxDQUFDO0lBQ3JELGdCQUFnQixHQUFHLGlDQUFpQyxDQUFDO0lBQ3JELGVBQWUsR0FBRyxnQ0FBZ0MsQ0FBQztJQUUzRCxZQUNVLFVBQXNCLEVBQ3RCLFlBQTBCLEVBQzFCLGlCQUFvQztRQUZwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFFN0MsQ0FBQztJQUVGLGVBQWUsQ0FBQyxZQUE2QjtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztJQUNyQyxDQUFDO0lBRUQsYUFBYSxDQUFDLGlCQUFvQztRQUM5QyxNQUFNLE9BQU8sR0FBa0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDakQsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsVUFBVTthQUNaLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ3hELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDM0Q7YUFDQSxTQUFTLENBQUM7WUFDVCxJQUFJLEVBQUUsQ0FBQyxJQUFtQixFQUFFLEVBQUU7Z0JBQzVCLE9BQU8sQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztnQkFDekMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3BELENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBSSxFQUFFO2dCQUNYLE9BQU8sQ0FBQyxZQUFZLEdBQUcsaUJBQWlCLENBQUMsWUFBWSxDQUFDO2dCQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNULENBQUM7SUFFRCxlQUFlLENBQUMsSUFBWSxFQUFFLE1BQWM7UUFDMUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUNyRCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDLENBQzNELENBQUM7SUFDSixDQUFDO0lBRU8sY0FBYyxDQUFDLE9BQWU7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2QixPQUFPO1FBQ1QsQ0FBQztRQUVELEtBQUssTUFBTSxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hDLElBQUcsT0FBTyxDQUFDLE9BQU8sS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDL0IsT0FBTyxPQUFPLENBQUM7WUFDakIsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO3VHQTNEUSxvQkFBb0I7MkdBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW1nUGljdHVyZURUTyB9IGZyb20gJy4uL2R0by9pbWctbWFuYWdlci5kdG8nO1xyXG5pbXBvcnQgeyBQaWN0dXJlTmFtZVVwZGF0ZSB9IGZyb20gJy4uL2R0by9waWN0dXJlLW5hbWUtdXBkYXRlLmR0byc7XHJcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICcuL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW1nTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuL2ltZy1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFJlbmFtZVBpY3R1cmVTZXJ2aWNlIHtcclxuXHJcbiAgICBwcml2YXRlIHBpY3R1cmVzTGlzdDogSW1nUGljdHVyZURUT1tdID0gW107XHJcbiAgICBwcml2YXRlIGVycm9yUmVuYW1lSW1nID0gJ0ltZ01hbmFnZXIuSW1nTGlzdC5lcnJvclJlbmFtZUltZyc7XHJcbiAgICBwcml2YXRlIG1zZ1NhdmluZ0ltZ05hbWUgPSAnSW1nTWFuYWdlci5JbWdMaWIuc2F2aW5nSW1nTmFtZSc7XHJcbiAgICBwcml2YXRlIG1zZ0ltZ05hbWVTYXZlZCA9ICdJbWdNYW5hZ2VyLkltZ0xpYi5pbWdOYW1lU2F2ZWQnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UsXHJcbiAgICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXHJcbiAgICAgIHByaXZhdGUgaW1nTWFuYWdlclNlcnZpY2U6IEltZ01hbmFnZXJTZXJ2aWNlXHJcbiAgICApXHJcbiAgICB7fVxyXG5cclxuICAgIHNldFBpY3R1cmVzTGlzdChwaWN0dXJlc0xpc3Q6IEltZ1BpY3R1cmVEVE9bXSkgeyAvLyB0b2RvIGdldCBmcm9tIGltZyBtYW5hZ2VyIHNlcnZpY2VcclxuICAgICAgICB0aGlzLnBpY3R1cmVzTGlzdCA9IHBpY3R1cmVzTGlzdDtcclxuICAgIH1cclxuXHJcbiAgICByZW5hbWVQaWN0dXJlKHBpY3R1cmVOYW1lVXBkYXRlOiBQaWN0dXJlTmFtZVVwZGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IHBpY3R1cmU6IEltZ1BpY3R1cmVEVE8gPSB0aGlzLmdldFBpY3R1cmVCeUlkKHBpY3R1cmVOYW1lVXBkYXRlLmlkKTtcclxuICAgICAgICBpZiAoIXBpY3R1cmUpIHtcclxuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLmVycm9yUmVuYW1lSW1nKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KHRoaXMubXNnU2F2aW5nSW1nTmFtZSk7XHJcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlXHJcbiAgICAgICAgICAuY2hhbmdlSW1nTmFtZShwaWN0dXJlLmRpc3BsYXlfbmFtZSwgcGljdHVyZS5pZF9maWxlKS5waXBlKFxyXG4gICAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5pbWdNYW5hZ2VyU2VydmljZS5yZWZyZXNoSW1hZ2VMaXN0JC5uZXh0KCkpXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgbmV4dDogKGRhdGE6IEltZ1BpY3R1cmVEVE8pID0+IHtcclxuICAgICAgICAgICAgICBwaWN0dXJlLmRpc3BsYXlfbmFtZSA9IGRhdGEuZGlzcGxheV9uYW1lO1xyXG4gICAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLm1zZ0ltZ05hbWVTYXZlZCk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGVycm9yOiAoKSAgPT4ge1xyXG4gICAgICAgICAgICAgIHBpY3R1cmUuZGlzcGxheV9uYW1lID0gcGljdHVyZU5hbWVVcGRhdGUucHJldmlvdXNOYW1lO1xyXG4gICAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLmVycm9yUmVuYW1lSW1nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hhbmdlSW1hZ2VOYW1lKG5hbWU6IHN0cmluZywgaWRGaWxlOiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5jaGFuZ2VJbWdOYW1lKG5hbWUsIGlkRmlsZSkucGlwZShcclxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5pbWdNYW5hZ2VyU2VydmljZS5yZWZyZXNoSW1hZ2VMaXN0JC5uZXh0KCkpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRQaWN0dXJlQnlJZChpZF9maWxlOiBzdHJpbmcpOiBJbWdQaWN0dXJlRFRPIHtcclxuICAgICAgICBpZiAoIXRoaXMucGljdHVyZXNMaXN0KSB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3IgKGNvbnN0IHBpY3R1cmUgb2YgdGhpcy5waWN0dXJlc0xpc3QpIHtcclxuICAgICAgICAgIGlmKHBpY3R1cmUuaWRfZmlsZSA9PT0gaWRfZmlsZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gcGljdHVyZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxufSJdfQ==
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { NwbSnackbarService } from '@wizishop/ng-wizi-bulma';
|
|
3
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@wizishop/ng-wizi-bulma";
|
|
7
|
+
import * as i2 from "@ngx-translate/core";
|
|
8
|
+
export class SnackBarService {
|
|
9
|
+
nwbSnackbar;
|
|
10
|
+
translateService;
|
|
11
|
+
actionMsg = 'ImgManager.snackBar.action';
|
|
12
|
+
snackBarConfigAction = {
|
|
13
|
+
message: '',
|
|
14
|
+
duration: 5000
|
|
15
|
+
};
|
|
16
|
+
snackBarConfig = {
|
|
17
|
+
message: '',
|
|
18
|
+
duration: 5000
|
|
19
|
+
};
|
|
20
|
+
snackBarRefComponent;
|
|
21
|
+
constructor(nwbSnackbar, translateService) {
|
|
22
|
+
this.nwbSnackbar = nwbSnackbar;
|
|
23
|
+
this.translateService = translateService;
|
|
24
|
+
}
|
|
25
|
+
openSnackBar(msgKey) {
|
|
26
|
+
this.closePreviousSnackbar();
|
|
27
|
+
this.translateService.get(msgKey).subscribe(trans => {
|
|
28
|
+
this.snackBarConfig.message = trans;
|
|
29
|
+
this.snackBarRefComponent = this.nwbSnackbar.open(this.snackBarConfig);
|
|
30
|
+
this.snackBarRefComponent.afterClosed().subscribe();
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
openSnackBarWithAction(msgKey) {
|
|
34
|
+
return new Observable(observer => {
|
|
35
|
+
this.translateService.get([msgKey, this.actionMsg]).subscribe((trans) => {
|
|
36
|
+
this.snackBarConfigAction.message = trans[msgKey];
|
|
37
|
+
this.snackBarConfigAction.action = trans[this.actionMsg];
|
|
38
|
+
this.closePreviousSnackbar();
|
|
39
|
+
this.snackBarRefComponent = this.nwbSnackbar.open(this.snackBarConfigAction);
|
|
40
|
+
this.snackBarRefComponent.afterClosed().subscribe(manualClose => {
|
|
41
|
+
observer.next(manualClose);
|
|
42
|
+
observer.complete();
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
openSnackBarWithBackendRespons(msgKey, msgBackend) {
|
|
48
|
+
this.translateService.get(msgKey).subscribe(trans => {
|
|
49
|
+
this.snackBarConfig.message = trans;
|
|
50
|
+
this.snackBarConfig.message += '<br/>' + JSON.parse(msgBackend).message;
|
|
51
|
+
this.closePreviousSnackbar();
|
|
52
|
+
this.snackBarRefComponent = this.nwbSnackbar.open(this.snackBarConfig);
|
|
53
|
+
this.snackBarRefComponent.afterClosed().subscribe();
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
closePreviousSnackbar() {
|
|
57
|
+
if (this.snackBarRefComponent) {
|
|
58
|
+
this.snackBarRefComponent.dismiss(false);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SnackBarService, deps: [{ token: i1.NwbSnackbarService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
62
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SnackBarService });
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SnackBarService, decorators: [{
|
|
65
|
+
type: Injectable
|
|
66
|
+
}], ctorParameters: () => [{ type: i1.NwbSnackbarService }, { type: i2.TranslateService }] });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvc2VydmljZXMvc25hY2tiYXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBMkMsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBR2xDLE1BQU0sT0FBTyxlQUFlO0lBaUJaO0lBQ0E7SUFoQlosU0FBUyxHQUFHLDRCQUE0QixDQUFDO0lBRXpDLG9CQUFvQixHQUFzQjtRQUN4QyxPQUFPLEVBQUUsRUFBRTtRQUNYLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQztJQUVGLGNBQWMsR0FBc0I7UUFDbEMsT0FBTyxFQUFFLEVBQUU7UUFDWCxRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUM7SUFFTSxvQkFBb0IsQ0FBdUI7SUFFbkQsWUFDWSxXQUErQixFQUMvQixnQkFBa0M7UUFEbEMsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQy9CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDdkMsQ0FBQztJQUVSLFlBQVksQ0FBQyxNQUFjO1FBQ3pCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2hELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNwQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxNQUFjO1FBQ25DLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFFL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFFcEUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFFekQsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDN0UsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDOUQsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDM0IsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN0QixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsOEJBQThCLENBQUMsTUFBYyxFQUFFLFVBQWtCO1FBQy9ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2xELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNwQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFFeEUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQzt1R0EvRFEsZUFBZTsyR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOd2JTbmFja2JhclNlcnZpY2UsIE53YlNuYWNrYmFyQ29uZmlnLCBOd2JTbmFja2JhckNvbXBvbmVudCB9IGZyb20gJ0B3aXppc2hvcC9uZy13aXppLWJ1bG1hJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTbmFja0JhclNlcnZpY2Uge1xyXG5cclxuICAgIGFjdGlvbk1zZyA9ICdJbWdNYW5hZ2VyLnNuYWNrQmFyLmFjdGlvbic7XHJcblxyXG4gICAgc25hY2tCYXJDb25maWdBY3Rpb246IE53YlNuYWNrYmFyQ29uZmlnID0ge1xyXG4gICAgICBtZXNzYWdlOiAnJyxcclxuICAgICAgZHVyYXRpb246IDUwMDBcclxuICAgIH07XHJcblxyXG4gICAgc25hY2tCYXJDb25maWc6IE53YlNuYWNrYmFyQ29uZmlnID0ge1xyXG4gICAgICBtZXNzYWdlOiAnJyxcclxuICAgICAgZHVyYXRpb246IDUwMDBcclxuICAgIH07XHJcblxyXG4gICAgcHJpdmF0ZSBzbmFja0JhclJlZkNvbXBvbmVudDogTndiU25hY2tiYXJDb21wb25lbnQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBud2JTbmFja2JhcjogTndiU25hY2tiYXJTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICAgICAgICkge31cclxuXHJcbiAgICBvcGVuU25hY2tCYXIobXNnS2V5OiBzdHJpbmcpIHtcclxuICAgICAgdGhpcy5jbG9zZVByZXZpb3VzU25hY2tiYXIoKTtcclxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChtc2dLZXkpLnN1YnNjcmliZSh0cmFucyA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNuYWNrQmFyQ29uZmlnLm1lc3NhZ2UgPSB0cmFucztcclxuICAgICAgICAgIHRoaXMuc25hY2tCYXJSZWZDb21wb25lbnQgPSB0aGlzLm53YlNuYWNrYmFyLm9wZW4odGhpcy5zbmFja0JhckNvbmZpZyk7XHJcbiAgICAgICAgICB0aGlzLnNuYWNrQmFyUmVmQ29tcG9uZW50LmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9wZW5TbmFja0JhcldpdGhBY3Rpb24obXNnS2V5OiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldChbbXNnS2V5LCB0aGlzLmFjdGlvbk1zZ10pLnN1YnNjcmliZSgodHJhbnMpID0+IHtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc25hY2tCYXJDb25maWdBY3Rpb24ubWVzc2FnZSA9IHRyYW5zW21zZ0tleV07XHJcbiAgICAgICAgICAgIHRoaXMuc25hY2tCYXJDb25maWdBY3Rpb24uYWN0aW9uID0gdHJhbnNbdGhpcy5hY3Rpb25Nc2ddO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5jbG9zZVByZXZpb3VzU25hY2tiYXIoKTtcclxuICAgICAgICAgICAgdGhpcy5zbmFja0JhclJlZkNvbXBvbmVudCA9IHRoaXMubndiU25hY2tiYXIub3Blbih0aGlzLnNuYWNrQmFyQ29uZmlnQWN0aW9uKTtcclxuICAgICAgICAgICAgdGhpcy5zbmFja0JhclJlZkNvbXBvbmVudC5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShtYW51YWxDbG9zZSA9PiB7XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChtYW51YWxDbG9zZSk7XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9wZW5TbmFja0JhcldpdGhCYWNrZW5kUmVzcG9ucyhtc2dLZXk6IHN0cmluZywgbXNnQmFja2VuZDogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXQobXNnS2V5KS5zdWJzY3JpYmUodHJhbnMgPT4ge1xyXG4gICAgICAgIHRoaXMuc25hY2tCYXJDb25maWcubWVzc2FnZSA9IHRyYW5zO1xyXG4gICAgICAgIHRoaXMuc25hY2tCYXJDb25maWcubWVzc2FnZSArPSAnPGJyLz4nICsgSlNPTi5wYXJzZShtc2dCYWNrZW5kKS5tZXNzYWdlO1xyXG5cclxuICAgICAgICB0aGlzLmNsb3NlUHJldmlvdXNTbmFja2JhcigpO1xyXG4gICAgICAgIHRoaXMuc25hY2tCYXJSZWZDb21wb25lbnQgPSB0aGlzLm53YlNuYWNrYmFyLm9wZW4odGhpcy5zbmFja0JhckNvbmZpZyk7XHJcbiAgICAgICAgdGhpcy5zbmFja0JhclJlZkNvbXBvbmVudC5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNsb3NlUHJldmlvdXNTbmFja2JhcigpIHtcclxuICAgICAgaWYgKHRoaXMuc25hY2tCYXJSZWZDb21wb25lbnQpIHtcclxuICAgICAgICB0aGlzLnNuYWNrQmFyUmVmQ29tcG9uZW50LmRpc21pc3MoZmFsc2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { NwbFilterRoutingBuilder } from '@wizishop/ng-wizi-bulma';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@wizishop/ng-wizi-bulma";
|
|
6
|
+
export class FiltersTableService {
|
|
7
|
+
filterRoutingBuilder;
|
|
8
|
+
filterGroups = new Map();
|
|
9
|
+
dataTableFilters = {
|
|
10
|
+
sort: undefined,
|
|
11
|
+
order: undefined,
|
|
12
|
+
searchValue: undefined,
|
|
13
|
+
totalItems: 0,
|
|
14
|
+
itemsPerPage: 0,
|
|
15
|
+
currentPage: 0
|
|
16
|
+
};
|
|
17
|
+
sortSubject = new Subject();
|
|
18
|
+
constructor(filterRoutingBuilder) {
|
|
19
|
+
this.filterRoutingBuilder = filterRoutingBuilder;
|
|
20
|
+
}
|
|
21
|
+
getTableFilterGroup(dataTableName) {
|
|
22
|
+
if (this.filterGroups.has(dataTableName)) {
|
|
23
|
+
return this.filterGroups.get(dataTableName);
|
|
24
|
+
}
|
|
25
|
+
const filterGroup = this.filterRoutingBuilder.group(this.dataTableFilters, dataTableName);
|
|
26
|
+
this.filterGroups.set(dataTableName, filterGroup);
|
|
27
|
+
return filterGroup;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Use to reset the others sorts of the table
|
|
31
|
+
* @param dataTableName
|
|
32
|
+
* @param sortName
|
|
33
|
+
* @param order
|
|
34
|
+
*/
|
|
35
|
+
emitSortChange(dataTableName, sortName, order) {
|
|
36
|
+
this.sortSubject.next({ dataTableName, sortName, order });
|
|
37
|
+
}
|
|
38
|
+
getSortChangeListner() {
|
|
39
|
+
return this.sortSubject.asObservable();
|
|
40
|
+
}
|
|
41
|
+
setPaginationFilters(dataTableName, totalItems, itemsPerPage, currentPage) {
|
|
42
|
+
const filterGroup = this.getTableFilterGroup(dataTableName);
|
|
43
|
+
filterGroup.setValues({
|
|
44
|
+
itemsPerPage,
|
|
45
|
+
currentPage
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
setInitialPaginationFiltersIfNotExist(dataTableName, itemsPerPage, currentPage) {
|
|
49
|
+
const filterGroup = this.getTableFilterGroup(dataTableName);
|
|
50
|
+
filterGroup.setValues({
|
|
51
|
+
itemsPerPage: filterGroup.get('itemsPerPage') ? parseInt(filterGroup.get('itemsPerPage')) : itemsPerPage,
|
|
52
|
+
currentPage: filterGroup.get('currentPage') ? parseInt(filterGroup.get('currentPage')) : currentPage
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FiltersTableService, deps: [{ token: i1.NwbFilterRoutingBuilder }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
56
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FiltersTableService });
|
|
57
|
+
}
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: FiltersTableService, decorators: [{
|
|
59
|
+
type: Injectable
|
|
60
|
+
}], ctorParameters: () => [{ type: i1.NwbFilterRoutingBuilder }] });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy10YWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9zZXJ2aWNlcy90YWJsZS9maWx0ZXJzLXRhYmxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWtCLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBVS9CLE1BQU0sT0FBTyxtQkFBbUI7SUFhVjtJQVpwQixZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQTBCLENBQUM7SUFDakQsZ0JBQWdCLEdBQWlCO1FBQy9CLElBQUksRUFBRSxTQUFTO1FBQ2YsS0FBSyxFQUFFLFNBQVM7UUFDaEIsV0FBVyxFQUFFLFNBQVM7UUFDdEIsVUFBVSxFQUFFLENBQUM7UUFDYixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSxDQUFDO0tBQ2YsQ0FBQztJQUVNLFdBQVcsR0FBaUIsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQUV2RCxZQUFvQixvQkFBNkM7UUFBN0MseUJBQW9CLEdBQXBCLG9CQUFvQixDQUF5QjtJQUFHLENBQUM7SUFFckUsbUJBQW1CLENBQUMsYUFBcUI7UUFDdkMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFtQixJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUMxRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDbEQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsY0FBYyxDQUFDLGFBQXFCLEVBQUUsUUFBZ0IsRUFBRSxLQUFjO1FBQ3BFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxhQUFxQixFQUFFLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxXQUFtQjtRQUN2RyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUQsV0FBVyxDQUFDLFNBQVMsQ0FBQztZQUNwQixZQUFZO1lBQ1osV0FBVztTQUNaLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxxQ0FBcUMsQ0FBQyxhQUFxQixFQUFFLFlBQW9CLEVBQUUsV0FBbUI7UUFDcEcsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVELFdBQVcsQ0FBQyxTQUFTLENBQUM7WUFDcEIsWUFBWSxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVk7WUFDeEcsV0FBVyxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVc7U0FDckcsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FwRFUsbUJBQW1COzJHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE53YkZpbHRlckdyb3VwLCBOd2JGaWx0ZXJSb3V0aW5nQnVpbGRlciB9IGZyb20gJ0B3aXppc2hvcC9uZy13aXppLWJ1bG1hJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uRmlsdGVycyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvc2hhcmVkL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUZpbHRlcnMgZXh0ZW5kcyBQYWdpbmF0aW9uRmlsdGVycyB7XHJcbiAgc29ydDogc3RyaW5nO1xyXG4gIG9yZGVyOiBib29sZWFuO1xyXG4gIHNlYXJjaFZhbHVlOiBzdHJpbmc7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEZpbHRlcnNUYWJsZVNlcnZpY2Uge1xyXG4gIGZpbHRlckdyb3VwcyA9IG5ldyBNYXA8c3RyaW5nLCBOd2JGaWx0ZXJHcm91cD4oKTtcclxuICBkYXRhVGFibGVGaWx0ZXJzOiBUYWJsZUZpbHRlcnMgPSB7XHJcbiAgICBzb3J0OiB1bmRlZmluZWQsXHJcbiAgICBvcmRlcjogdW5kZWZpbmVkLFxyXG4gICAgc2VhcmNoVmFsdWU6IHVuZGVmaW5lZCxcclxuICAgIHRvdGFsSXRlbXM6IDAsXHJcbiAgICBpdGVtc1BlclBhZ2U6IDAsXHJcbiAgICBjdXJyZW50UGFnZTogMFxyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgc29ydFN1YmplY3Q6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWx0ZXJSb3V0aW5nQnVpbGRlcjogTndiRmlsdGVyUm91dGluZ0J1aWxkZXIpIHt9XHJcblxyXG4gIGdldFRhYmxlRmlsdGVyR3JvdXAoZGF0YVRhYmxlTmFtZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5maWx0ZXJHcm91cHMuaGFzKGRhdGFUYWJsZU5hbWUpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlckdyb3Vwcy5nZXQoZGF0YVRhYmxlTmFtZSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBmaWx0ZXJHcm91cDogTndiRmlsdGVyR3JvdXAgPSB0aGlzLmZpbHRlclJvdXRpbmdCdWlsZGVyLmdyb3VwKHRoaXMuZGF0YVRhYmxlRmlsdGVycywgZGF0YVRhYmxlTmFtZSk7XHJcbiAgICB0aGlzLmZpbHRlckdyb3Vwcy5zZXQoZGF0YVRhYmxlTmFtZSwgZmlsdGVyR3JvdXApO1xyXG4gICAgcmV0dXJuIGZpbHRlckdyb3VwO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXNlIHRvIHJlc2V0IHRoZSBvdGhlcnMgc29ydHMgb2YgdGhlIHRhYmxlXHJcbiAgICogQHBhcmFtIGRhdGFUYWJsZU5hbWVcclxuICAgKiBAcGFyYW0gc29ydE5hbWVcclxuICAgKiBAcGFyYW0gb3JkZXJcclxuICAgKi9cclxuICBlbWl0U29ydENoYW5nZShkYXRhVGFibGVOYW1lOiBzdHJpbmcsIHNvcnROYW1lOiBzdHJpbmcsIG9yZGVyOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNvcnRTdWJqZWN0Lm5leHQoeyBkYXRhVGFibGVOYW1lLCBzb3J0TmFtZSwgb3JkZXIgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRTb3J0Q2hhbmdlTGlzdG5lcigpIHtcclxuICAgIHJldHVybiB0aGlzLnNvcnRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0UGFnaW5hdGlvbkZpbHRlcnMoZGF0YVRhYmxlTmFtZTogc3RyaW5nLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zUGVyUGFnZTogbnVtYmVyLCBjdXJyZW50UGFnZTogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBmaWx0ZXJHcm91cCA9IHRoaXMuZ2V0VGFibGVGaWx0ZXJHcm91cChkYXRhVGFibGVOYW1lKTtcclxuICAgIGZpbHRlckdyb3VwLnNldFZhbHVlcyh7XHJcbiAgICAgIGl0ZW1zUGVyUGFnZSxcclxuICAgICAgY3VycmVudFBhZ2VcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5pdGlhbFBhZ2luYXRpb25GaWx0ZXJzSWZOb3RFeGlzdChkYXRhVGFibGVOYW1lOiBzdHJpbmcsIGl0ZW1zUGVyUGFnZTogbnVtYmVyLCBjdXJyZW50UGFnZTogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBmaWx0ZXJHcm91cCA9IHRoaXMuZ2V0VGFibGVGaWx0ZXJHcm91cChkYXRhVGFibGVOYW1lKTtcclxuICAgIGZpbHRlckdyb3VwLnNldFZhbHVlcyh7XHJcbiAgICAgIGl0ZW1zUGVyUGFnZTogZmlsdGVyR3JvdXAuZ2V0KCdpdGVtc1BlclBhZ2UnKSA/IHBhcnNlSW50KGZpbHRlckdyb3VwLmdldCgnaXRlbXNQZXJQYWdlJykpIDogaXRlbXNQZXJQYWdlLFxyXG4gICAgICBjdXJyZW50UGFnZTogZmlsdGVyR3JvdXAuZ2V0KCdjdXJyZW50UGFnZScpID8gcGFyc2VJbnQoZmlsdGVyR3JvdXAuZ2V0KCdjdXJyZW50UGFnZScpKSA6IGN1cnJlbnRQYWdlXHJcbiAgICB9KTtcclxuICB9XHJcbn0iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
|
2
|
+
import { ApiService } from './api.service';
|
|
3
|
+
import { Subject, tap } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class UploadService {
|
|
6
|
+
imageUploaded$ = new Subject();
|
|
7
|
+
apiService = inject(ApiService);
|
|
8
|
+
uploadFile(formData) {
|
|
9
|
+
return this.apiService.uploadFile(formData).pipe(tap((img) => this.imageUploaded$.next(img)));
|
|
10
|
+
}
|
|
11
|
+
uploadFileByUrl(url, fileName) {
|
|
12
|
+
return this.apiService.uploadFileByUrl(url, fileName).pipe(tap((img) => this.imageUploaded$.next(img)));
|
|
13
|
+
}
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UploadService });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UploadService, decorators: [{
|
|
18
|
+
type: Injectable
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSXBDLE1BQU0sT0FBTyxhQUFhO0lBRXRCLGNBQWMsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztJQUU5QyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWhDLFVBQVUsQ0FBQyxRQUFrQjtRQUN6QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDNUMsR0FBRyxDQUFDLENBQUMsR0FBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDN0QsQ0FBQztJQUNOLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVyxFQUFFLFFBQWlCO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDdEQsR0FBRyxDQUFDLENBQUMsR0FBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDN0QsQ0FBQztJQUNOLENBQUM7dUdBaEJRLGFBQWE7MkdBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi9hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJbWdQaWN0dXJlRFRPIH0gZnJvbSAnLi4vZHRvL2ltZy1tYW5hZ2VyLmR0byc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBVcGxvYWRTZXJ2aWNlIHtcclxuXHJcbiAgICBpbWFnZVVwbG9hZGVkJCA9IG5ldyBTdWJqZWN0PEltZ1BpY3R1cmVEVE8+KCk7XHJcblxyXG4gICAgYXBpU2VydmljZSA9IGluamVjdChBcGlTZXJ2aWNlKTtcclxuXHJcbiAgICB1cGxvYWRGaWxlKGZvcm1EYXRhOiBGb3JtRGF0YSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UudXBsb2FkRmlsZShmb3JtRGF0YSkucGlwZShcclxuICAgICAgICAgICAgdGFwKChpbWc6IEltZ1BpY3R1cmVEVE8pID0+IHRoaXMuaW1hZ2VVcGxvYWRlZCQubmV4dChpbWcpKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBsb2FkRmlsZUJ5VXJsKHVybDogc3RyaW5nLCBmaWxlTmFtZT86IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UudXBsb2FkRmlsZUJ5VXJsKHVybCwgZmlsZU5hbWUpLnBpcGUoXHJcbiAgICAgICAgICAgIHRhcCgoaW1nOiBJbWdQaWN0dXJlRFRPKSA9PiB0aGlzLmltYWdlVXBsb2FkZWQkLm5leHQoaW1nKSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxufSJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class UserSettingsService {
|
|
4
|
+
userdisplayPreference = 'WzImgManagerListDisplayed';
|
|
5
|
+
/**
|
|
6
|
+
* true : display list
|
|
7
|
+
* false : display mosaic
|
|
8
|
+
* @param value
|
|
9
|
+
*/
|
|
10
|
+
setUserDisplayPreference(value) {
|
|
11
|
+
localStorage.setItem(this.userdisplayPreference, '' + value);
|
|
12
|
+
}
|
|
13
|
+
getUserDisplayPreference() {
|
|
14
|
+
const value = localStorage.getItem(this.userdisplayPreference);
|
|
15
|
+
return value == 'true';
|
|
16
|
+
}
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UserSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
18
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UserSettingsService });
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: UserSettingsService, decorators: [{
|
|
21
|
+
type: Injectable
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9zZXJ2aWNlcy91c2VyLXNldHRpbmdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUVwQixxQkFBcUIsR0FBRywyQkFBMkIsQ0FBQztJQUU1RDs7OztPQUlHO0lBQ0gsd0JBQXdCLENBQUMsS0FBYztRQUNuQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELHdCQUF3QjtRQUNwQixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sS0FBSyxJQUFJLE1BQU0sQ0FBQztJQUMzQixDQUFDO3VHQWhCUSxtQkFBbUI7MkdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFVzZXJTZXR0aW5nc1NlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgdXNlcmRpc3BsYXlQcmVmZXJlbmNlID0gJ1d6SW1nTWFuYWdlckxpc3REaXNwbGF5ZWQnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogdHJ1ZSA6IGRpc3BsYXkgbGlzdFxyXG4gICAgICogZmFsc2UgOiBkaXNwbGF5IG1vc2FpY1xyXG4gICAgICogQHBhcmFtIHZhbHVlXHJcbiAgICAgKi9cclxuICAgIHNldFVzZXJEaXNwbGF5UHJlZmVyZW5jZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMudXNlcmRpc3BsYXlQcmVmZXJlbmNlLCAnJyArIHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRVc2VyRGlzcGxheVByZWZlcmVuY2UoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnVzZXJkaXNwbGF5UHJlZmVyZW5jZSk7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlID09ICd0cnVlJztcclxuICAgIH1cclxuXHJcbn1cclxuIl19
|