@smarterplan/ngx-smarterplan-core 0.3.11
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/README.md +24 -0
- package/esm2020/lib/components/csv-export/csv-export.component.mjs +59 -0
- package/esm2020/lib/components/loader/loader.component.mjs +14 -0
- package/esm2020/lib/components/menu-bar/avatar/avatar.component.mjs +75 -0
- package/esm2020/lib/components/menu-bar/menu-bar.component.mjs +115 -0
- package/esm2020/lib/components/menu-bar/navigation-bar/navigation-bar.component.mjs +254 -0
- package/esm2020/lib/components/menu-bar/range-date-picker/range-date-picker.component.mjs +81 -0
- package/esm2020/lib/components/modal-switch-visit/modal-switch-visit.component.mjs +39 -0
- package/esm2020/lib/components/search-bar/search-bar.component.mjs +63 -0
- package/esm2020/lib/components/support-modal/support-modal.component.mjs +59 -0
- package/esm2020/lib/config.mjs +4 -0
- package/esm2020/lib/helpers.service.mjs +468 -0
- package/esm2020/lib/mattertagData.mjs +177 -0
- package/esm2020/lib/ngx-smarterplan-core.module.mjs +117 -0
- package/esm2020/lib/ngx-smarterplan-core.service.mjs +14 -0
- package/esm2020/lib/pipes/duration-to-string.pipe.mjs +66 -0
- package/esm2020/lib/pipes/hashtag-from-id.pipe.mjs +26 -0
- package/esm2020/lib/pipes/safe-url.pipe.mjs +20 -0
- package/esm2020/lib/pipes/time-date-to-local-string.pipe.mjs +104 -0
- package/esm2020/lib/pipes/username-from-id.pipe.mjs +29 -0
- package/esm2020/lib/services/base-tab.service.mjs +24 -0
- package/esm2020/lib/services/baseVisibility.service.mjs +17 -0
- package/esm2020/lib/services/booking.service.mjs +161 -0
- package/esm2020/lib/services/content.service.mjs +135 -0
- package/esm2020/lib/services/filter.service.mjs +560 -0
- package/esm2020/lib/services/intervention.service.mjs +236 -0
- package/esm2020/lib/services/locale.service.mjs +45 -0
- package/esm2020/lib/services/matterport-import.service.mjs +339 -0
- package/esm2020/lib/services/matterport.service.mjs +876 -0
- package/esm2020/lib/services/models/affectation.service.mjs +60 -0
- package/esm2020/lib/services/models/base-object.service.mjs +70 -0
- package/esm2020/lib/services/models/capture.service.mjs +34 -0
- package/esm2020/lib/services/models/comment.service.mjs +98 -0
- package/esm2020/lib/services/models/domain.service.mjs +77 -0
- package/esm2020/lib/services/models/equipment.service.mjs +629 -0
- package/esm2020/lib/services/models/event.service.mjs +128 -0
- package/esm2020/lib/services/models/feature.service.mjs +339 -0
- package/esm2020/lib/services/models/hashtag.service.mjs +38 -0
- package/esm2020/lib/services/models/layer.service.mjs +33 -0
- package/esm2020/lib/services/models/measurement.service.mjs +158 -0
- package/esm2020/lib/services/models/mission.service.mjs +185 -0
- package/esm2020/lib/services/models/navigation.service.mjs +76 -0
- package/esm2020/lib/services/models/node.service.mjs +31 -0
- package/esm2020/lib/services/models/operation.service.mjs +59 -0
- package/esm2020/lib/services/models/organisation.service.mjs +73 -0
- package/esm2020/lib/services/models/plan.service.mjs +573 -0
- package/esm2020/lib/services/models/poi.service.mjs +48 -0
- package/esm2020/lib/services/models/profile.service.mjs +54 -0
- package/esm2020/lib/services/models/property.service.mjs +34 -0
- package/esm2020/lib/services/models/space.service.mjs +184 -0
- package/esm2020/lib/services/models/template.service.mjs +41 -0
- package/esm2020/lib/services/models/ticket.service.mjs +454 -0
- package/esm2020/lib/services/models/visit.service.mjs +130 -0
- package/esm2020/lib/services/models/zone.service.mjs +184 -0
- package/esm2020/lib/services/navigator.service.mjs +165 -0
- package/esm2020/lib/services/s3.service.mjs +124 -0
- package/esm2020/lib/services/search.service.mjs +124 -0
- package/esm2020/lib/services/support.service.mjs +42 -0
- package/esm2020/lib/services/tag.service.mjs +101 -0
- package/esm2020/lib/services/user.service.mjs +444 -0
- package/esm2020/lib/services/viewer.service.mjs +395 -0
- package/esm2020/lib/services/zone-drawer.service.mjs +76 -0
- package/esm2020/lib/types.service.mjs +266 -0
- package/esm2020/public-api.mjs +63 -0
- package/esm2020/smarterplan-ngx-smarterplan-core.mjs +5 -0
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs +10057 -0
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -0
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +9371 -0
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs.map +1 -0
- package/lib/components/csv-export/csv-export.component.d.ts +18 -0
- package/lib/components/loader/loader.component.d.ts +8 -0
- package/lib/components/menu-bar/avatar/avatar.component.d.ts +18 -0
- package/lib/components/menu-bar/menu-bar.component.d.ts +35 -0
- package/lib/components/menu-bar/navigation-bar/navigation-bar.component.d.ts +66 -0
- package/lib/components/menu-bar/range-date-picker/range-date-picker.component.d.ts +24 -0
- package/lib/components/modal-switch-visit/modal-switch-visit.component.d.ts +22 -0
- package/lib/components/search-bar/search-bar.component.d.ts +16 -0
- package/lib/components/support-modal/support-modal.component.d.ts +24 -0
- package/lib/config.d.ts +17 -0
- package/lib/helpers.service.d.ts +79 -0
- package/lib/mattertagData.d.ts +65 -0
- package/lib/ngx-smarterplan-core.module.d.ts +28 -0
- package/lib/ngx-smarterplan-core.service.d.ts +6 -0
- package/lib/pipes/duration-to-string.pipe.d.ts +12 -0
- package/lib/pipes/hashtag-from-id.pipe.d.ts +10 -0
- package/lib/pipes/safe-url.pipe.d.ts +10 -0
- package/lib/pipes/time-date-to-local-string.pipe.d.ts +16 -0
- package/lib/pipes/username-from-id.pipe.d.ts +11 -0
- package/lib/services/base-tab.service.d.ts +10 -0
- package/lib/services/baseVisibility.service.d.ts +8 -0
- package/lib/services/booking.service.d.ts +21 -0
- package/lib/services/content.service.d.ts +28 -0
- package/lib/services/filter.service.d.ts +58 -0
- package/lib/services/intervention.service.d.ts +25 -0
- package/lib/services/locale.service.d.ts +23 -0
- package/lib/services/matterport-import.service.d.ts +46 -0
- package/lib/services/matterport.service.d.ts +141 -0
- package/lib/services/models/affectation.service.d.ts +14 -0
- package/lib/services/models/base-object.service.d.ts +20 -0
- package/lib/services/models/capture.service.d.ts +13 -0
- package/lib/services/models/comment.service.d.ts +26 -0
- package/lib/services/models/domain.service.d.ts +19 -0
- package/lib/services/models/equipment.service.d.ts +88 -0
- package/lib/services/models/event.service.d.ts +43 -0
- package/lib/services/models/feature.service.d.ts +71 -0
- package/lib/services/models/hashtag.service.d.ts +13 -0
- package/lib/services/models/layer.service.d.ts +11 -0
- package/lib/services/models/measurement.service.d.ts +43 -0
- package/lib/services/models/mission.service.d.ts +32 -0
- package/lib/services/models/navigation.service.d.ts +22 -0
- package/lib/services/models/node.service.d.ts +12 -0
- package/lib/services/models/operation.service.d.ts +15 -0
- package/lib/services/models/organisation.service.d.ts +19 -0
- package/lib/services/models/plan.service.d.ts +117 -0
- package/lib/services/models/poi.service.d.ts +15 -0
- package/lib/services/models/profile.service.d.ts +15 -0
- package/lib/services/models/property.service.d.ts +13 -0
- package/lib/services/models/space.service.d.ts +38 -0
- package/lib/services/models/template.service.d.ts +15 -0
- package/lib/services/models/ticket.service.d.ts +86 -0
- package/lib/services/models/visit.service.d.ts +24 -0
- package/lib/services/models/zone.service.d.ts +25 -0
- package/lib/services/navigator.service.d.ts +55 -0
- package/lib/services/s3.service.d.ts +13 -0
- package/lib/services/search.service.d.ts +20 -0
- package/lib/services/support.service.d.ts +17 -0
- package/lib/services/tag.service.d.ts +45 -0
- package/lib/services/user.service.d.ts +104 -0
- package/lib/services/viewer.service.d.ts +113 -0
- package/lib/services/zone-drawer.service.d.ts +7 -0
- package/lib/types.service.d.ts +723 -0
- package/package.json +41 -0
- package/public-api.d.ts +56 -0
- package/smarterplan-ngx-smarterplan-core.d.ts +5 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class BaseLateralTabService {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.activeTab = "tickets";
|
|
6
|
+
this.firstLoad = true;
|
|
7
|
+
}
|
|
8
|
+
storeTabHistory(tab) {
|
|
9
|
+
this.activeTab = tab;
|
|
10
|
+
}
|
|
11
|
+
getTabHistory() {
|
|
12
|
+
// throw new Error("Method 'getTabHistory' not implemented.");
|
|
13
|
+
return this.activeTab;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
BaseLateralTabService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseLateralTabService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
+
BaseLateralTabService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseLateralTabService, providedIn: "root" });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseLateralTabService, decorators: [{
|
|
19
|
+
type: Injectable,
|
|
20
|
+
args: [{
|
|
21
|
+
providedIn: "root",
|
|
22
|
+
}]
|
|
23
|
+
}], ctorParameters: function () { return []; } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10YWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvc2VydmljZXMvYmFzZS10YWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8scUJBQXFCO0lBSzlCO1FBSkEsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV0QixjQUFTLEdBQUcsSUFBSSxDQUFDO0lBRUQsQ0FBQztJQUVqQixlQUFlLENBQUMsR0FBVztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUN6QixDQUFDO0lBRUQsYUFBYTtRQUNULDhEQUE4RDtRQUM5RCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQzs7a0hBZFEscUJBQXFCO3NIQUFyQixxQkFBcUIsY0FGbEIsTUFBTTsyRkFFVCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhc2VMYXRlcmFsVGFiU2VydmljZSB7XHJcbiAgICBhY3RpdmVUYWIgPSBcInRpY2tldHNcIjtcclxuXHJcbiAgICBmaXJzdExvYWQgPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgc3RvcmVUYWJIaXN0b3J5KHRhYjogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVUYWIgPSB0YWI7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VGFiSGlzdG9yeSgpOiBzdHJpbmcge1xyXG4gICAgICAgIC8vIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCAnZ2V0VGFiSGlzdG9yeScgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5hY3RpdmVUYWI7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { Subject } from "rxjs";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BaseVisibilityService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.detailShowing = new Subject();
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
BaseVisibilityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseVisibilityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10
|
+
BaseVisibilityService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseVisibilityService, providedIn: "root" });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseVisibilityService, decorators: [{
|
|
12
|
+
type: Injectable,
|
|
13
|
+
args: [{
|
|
14
|
+
providedIn: "root",
|
|
15
|
+
}]
|
|
16
|
+
}], ctorParameters: function () { return []; } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZVZpc2liaWxpdHkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvc2VydmljZXMvYmFzZVZpc2liaWxpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSy9CLE1BQU0sT0FBTyxxQkFBcUI7SUFHOUI7UUFGQSxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7SUFFdkIsQ0FBQzs7a0hBSFIscUJBQXFCO3NIQUFyQixxQkFBcUIsY0FGbEIsTUFBTTsyRkFFVCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYXNlVmlzaWJpbGl0eVNlcnZpY2Uge1xyXG4gICAgZGV0YWlsU2hvd2luZyA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxufSJdfQ==
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { dateHasExpired } from "../helpers.service";
|
|
2
|
+
import { EventType, EventStatus, EmailStatus } from "../types.service";
|
|
3
|
+
export class BookingService {
|
|
4
|
+
constructor(eventService, userService, missionService) {
|
|
5
|
+
this.eventService = eventService;
|
|
6
|
+
this.userService = userService;
|
|
7
|
+
this.missionService = missionService;
|
|
8
|
+
}
|
|
9
|
+
getFutureOrCurrentEvents(events) {
|
|
10
|
+
const now = new Date();
|
|
11
|
+
return events
|
|
12
|
+
.filter((event) => event.realEndDate > now.getTime())
|
|
13
|
+
.sort((a, b) => a.realStartDate - b.realStartDate);
|
|
14
|
+
}
|
|
15
|
+
getEventsWithRealStartDateBeforeToday(events) {
|
|
16
|
+
const now = new Date();
|
|
17
|
+
now.setHours(0, 0, 0, 0);
|
|
18
|
+
return events
|
|
19
|
+
.filter((event) => event.realStartDate < now.getTime())
|
|
20
|
+
.sort((a, b) => b.realStartDate - a.realStartDate);
|
|
21
|
+
}
|
|
22
|
+
async autoUpdateBookingEvent(eventProm) {
|
|
23
|
+
const event = await eventProm;
|
|
24
|
+
const startExpired = dateHasExpired(event.realStartDate);
|
|
25
|
+
const endExpired = dateHasExpired(event.realEndDate);
|
|
26
|
+
if (event.type === EventType.BOOKING && endExpired) {
|
|
27
|
+
/** [BOOKING] VALIDATED => LATE */
|
|
28
|
+
if (event.status === EventStatus.VALIDATED) {
|
|
29
|
+
return this.eventService.updateEvent({
|
|
30
|
+
id: event.id,
|
|
31
|
+
status: EventStatus.LATE,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/** [BOOKING] CREATED => REFUSED */
|
|
35
|
+
if (event.status === EventStatus.CREATED) {
|
|
36
|
+
return this.eventService.updateEvent({
|
|
37
|
+
id: event.id,
|
|
38
|
+
status: EventStatus.REFUSED,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (event.type === EventType.BOOKING_SUBCRIPTION) {
|
|
43
|
+
/** [SUB] CREATED => REFUSED */
|
|
44
|
+
if (event.status === EventStatus.CREATED && endExpired) {
|
|
45
|
+
return this.eventService.updateEvent({
|
|
46
|
+
id: event.id,
|
|
47
|
+
status: EventStatus.REFUSED,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/** [SUB] IN_PROGRESS | VALIDATED => COMPLETED */
|
|
51
|
+
if (endExpired &&
|
|
52
|
+
(event.status === EventStatus.IN_PROGRESS ||
|
|
53
|
+
event.status === EventStatus.VALIDATED)) {
|
|
54
|
+
return this.eventService.updateEvent({
|
|
55
|
+
id: event.id,
|
|
56
|
+
status: EventStatus.COMPLETED,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
/** [SUB] CREATED => IN_PROGRESS */
|
|
60
|
+
if (startExpired && event.status === EventStatus.CREATED) {
|
|
61
|
+
return this.eventService.updateEvent({
|
|
62
|
+
id: event.id,
|
|
63
|
+
status: EventStatus.IN_PROGRESS,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return event;
|
|
68
|
+
}
|
|
69
|
+
mergeEventsToSubscriptsionUnique(event, uniqueList) {
|
|
70
|
+
if (!event || event.type !== EventType.BOOKING_SUBCRIPTION)
|
|
71
|
+
return uniqueList;
|
|
72
|
+
const newUniqueList = [...uniqueList]; // deep copy
|
|
73
|
+
const index = newUniqueList.findIndex((event_) => event_.group === event.group);
|
|
74
|
+
/** If an event of the same group already exist, we merge date, to get the min and max date and update status */
|
|
75
|
+
if (index >= 0) {
|
|
76
|
+
const groupEvent = newUniqueList[index];
|
|
77
|
+
if (groupEvent.realStartDate > event.realStartDate) {
|
|
78
|
+
groupEvent.realStartDate = event.realStartDate;
|
|
79
|
+
}
|
|
80
|
+
if (groupEvent.realEndDate < event.realEndDate) {
|
|
81
|
+
groupEvent.realEndDate = event.realEndDate;
|
|
82
|
+
groupEvent.status = event.status;
|
|
83
|
+
}
|
|
84
|
+
groupEvent.author = event.author;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
newUniqueList.push({ ...event });
|
|
88
|
+
}
|
|
89
|
+
return newUniqueList;
|
|
90
|
+
}
|
|
91
|
+
/** Merge a subscription event list to a unique event */
|
|
92
|
+
mergeEventsToSubscriptions(allBokings) {
|
|
93
|
+
let uniqueList = [];
|
|
94
|
+
for (const event of allBokings) {
|
|
95
|
+
uniqueList = this.mergeEventsToSubscriptsionUnique(event, uniqueList);
|
|
96
|
+
}
|
|
97
|
+
return uniqueList;
|
|
98
|
+
}
|
|
99
|
+
async updateStatusOfEventsInSubscriptionWithReason(subscriptionGroup, newStatus, reason = null) {
|
|
100
|
+
const eventsOfSubcription = await this.eventService.getEventsByGroup(subscriptionGroup);
|
|
101
|
+
const updatedEvents = [];
|
|
102
|
+
await Promise.all(eventsOfSubcription.map(async (event) => {
|
|
103
|
+
const updEvent = await this.eventService.updateEvent({
|
|
104
|
+
id: event.id,
|
|
105
|
+
status: newStatus,
|
|
106
|
+
refusalReason: reason,
|
|
107
|
+
notificationStatus: reason
|
|
108
|
+
? EmailStatus.UPDATE_TO_DELIVER
|
|
109
|
+
: null,
|
|
110
|
+
});
|
|
111
|
+
updatedEvents.push(updEvent);
|
|
112
|
+
}));
|
|
113
|
+
return updatedEvents;
|
|
114
|
+
}
|
|
115
|
+
getActiveFutureBookings(allBooking) {
|
|
116
|
+
let bookings = this.getFutureOrCurrentEvents(allBooking);
|
|
117
|
+
bookings = bookings.filter((event_) => event_.status !== EventStatus.CANCELLED &&
|
|
118
|
+
event_.status !== EventStatus.REFUSED &&
|
|
119
|
+
event_.status !== EventStatus.ARCHIVED);
|
|
120
|
+
return bookings;
|
|
121
|
+
}
|
|
122
|
+
async archiveForOwnerEventsInSubscription(subscriptionGroup) {
|
|
123
|
+
const eventsOfSubcription = await this.eventService.getEventsByGroup(subscriptionGroup);
|
|
124
|
+
const updatedEvents = [];
|
|
125
|
+
await Promise.all(eventsOfSubcription.map(async (event) => {
|
|
126
|
+
const updEvent = await this.eventService.updateEvent({
|
|
127
|
+
id: event.id,
|
|
128
|
+
archivedByOwner: true,
|
|
129
|
+
});
|
|
130
|
+
updatedEvents.push(updEvent);
|
|
131
|
+
}));
|
|
132
|
+
return updatedEvents;
|
|
133
|
+
}
|
|
134
|
+
getConflictBookingForDates(start, end, bookingsToFilter) {
|
|
135
|
+
for (const booking of bookingsToFilter) {
|
|
136
|
+
if (booking.status !== EventStatus.REFUSED &&
|
|
137
|
+
booking.status !== EventStatus.CANCELLED &&
|
|
138
|
+
booking.status !== EventStatus.ARCHIVED) {
|
|
139
|
+
if (start >= booking.realStartDate &&
|
|
140
|
+
start + 1000 < booking.realEndDate) {
|
|
141
|
+
return booking;
|
|
142
|
+
}
|
|
143
|
+
if (end > booking.realStartDate + 1000 &&
|
|
144
|
+
end <= booking.realEndDate) {
|
|
145
|
+
return booking;
|
|
146
|
+
}
|
|
147
|
+
if (start <= booking.realStartDate &&
|
|
148
|
+
end >= booking.realEndDate) {
|
|
149
|
+
return booking;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return null;
|
|
154
|
+
}
|
|
155
|
+
async getAuthorOfEvent(event) {
|
|
156
|
+
const authorMission = await this.missionService.getMission(event.ownerID);
|
|
157
|
+
const author = await this.userService.userFromUserID(authorMission.userID);
|
|
158
|
+
return author;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va2luZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9ib29raW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUs3RixNQUFNLE9BQU8sY0FBYztJQUV2QixZQUFvQixZQUEwQixFQUFTLFdBQTRCLEVBQ3ZFLGNBQThCO1FBRHRCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVMsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQ3ZFLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUFJLENBQUM7SUFFL0Msd0JBQXdCLENBQUMsTUFBZTtRQUNwQyxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sTUFBTTthQUNSLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDcEQsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELHFDQUFxQyxDQUFDLE1BQWU7UUFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sTUFBTTthQUNSLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FB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Q0FBQyxPQUFPLENBQ2hCLENBQUM7UUFDRixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUNoRCxhQUFhLENBQUMsTUFBTSxDQUN2QixDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGF0ZUhhc0V4cGlyZWQgfSBmcm9tIFwiLi4vaGVscGVycy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEV2ZW50VHlwZSwgRXZlbnRTdGF0dXMsIEVtYWlsU3RhdHVzLCBFdmVudCwgUHJvZmlsZUVudGl0eSB9IGZyb20gXCIuLi90eXBlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gXCIuL21vZGVscy9ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE1pc3Npb25TZXJ2aWNlIH0gZnJvbSBcIi4vbW9kZWxzL21pc3Npb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYXNlVXNlclNlcnZpY2UgfSBmcm9tIFwiLi91c2VyLnNlcnZpY2VcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBCb29raW5nU2VydmljZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxwcml2YXRlIHVzZXJTZXJ2aWNlOiBCYXNlVXNlclNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBtaXNzaW9uU2VydmljZTogTWlzc2lvblNlcnZpY2UsKSB7fVxyXG5cclxuICAgIGdldEZ1dHVyZU9yQ3VycmVudEV2ZW50cyhldmVudHM6IEV2ZW50W10pOiBFdmVudFtdIHtcclxuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIHJldHVybiBldmVudHNcclxuICAgICAgICAgICAgLmZpbHRlcigoZXZlbnQpID0+IGV2ZW50LnJlYWxFbmREYXRlID4gbm93LmdldFRpbWUoKSlcclxuICAgICAgICAgICAgLnNvcnQoKGEsIGIpID0+IGEucmVhbFN0YXJ0RGF0ZSAtIGIucmVhbFN0YXJ0RGF0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0RXZlbnRzV2l0aFJlYWxTdGFydERhdGVCZWZvcmVUb2RheShldmVudHM6IEV2ZW50W10pOiBFdmVudFtdIHtcclxuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIG5vdy5zZXRIb3VycygwLCAwLCAwLCAwKTtcclxuICAgICAgICByZXR1cm4gZXZlbnRzXHJcbiAgICAgICAgICAgIC5maWx0ZXIoKGV2ZW50KSA9PiBldmVudC5yZWFsU3RhcnREYXRlIDwgbm93LmdldFRpbWUoKSlcclxuICAgICAgICAgICAgLnNvcnQoKGEsIGIpID0+IGIucmVhbFN0YXJ0RGF0ZSAtIGEucmVhbFN0YXJ0RGF0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgYXV0b1VwZGF0ZUJvb2tpbmdFdmVudChcclxuICAgICAgICBldmVudFByb206IEV2ZW50IHwgUHJvbWlzZTxFdmVudD4sXHJcbiAgICApOiBQcm9taXNlPEV2ZW50PiB7XHJcbiAgICAgICAgY29uc3QgZXZlbnQgPSBhd2FpdCBldmVudFByb207XHJcbiAgICAgICAgY29uc3Qgc3RhcnRFeHBpcmVkID0gZGF0ZUhhc0V4cGlyZWQoZXZlbnQucmVhbFN0YXJ0RGF0ZSk7XHJcbiAgICAgICAgY29uc3QgZW5kRXhwaXJlZCA9IGRhdGVIYXNFeHBpcmVkKGV2ZW50LnJlYWxFbmREYXRlKTtcclxuXHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEV2ZW50VHlwZS5CT09LSU5HICYmIGVuZEV4cGlyZWQpIHtcclxuICAgICAgICAgICAgLyoqIFtCT09LSU5HXSBWQUxJREFURUQgPT4gTEFURSAqL1xyXG4gICAgICAgICAgICBpZiAoZXZlbnQuc3RhdHVzID09PSBFdmVudFN0YXR1cy5WQUxJREFURUQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV2ZW50U2VydmljZS51cGRhdGVFdmVudCh7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1czogRXZlbnRTdGF0dXMuTEFURSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8qKiBbQk9PS0lOR10gQ1JFQVRFRCA9PiBSRUZVU0VEICovXHJcbiAgICAgICAgICAgIGlmIChldmVudC5zdGF0dXMgPT09IEV2ZW50U3RhdHVzLkNSRUFURUQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV2ZW50U2VydmljZS51cGRhdGVFdmVudCh7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1czogRXZlbnRTdGF0dXMuUkVGVVNFRCxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBFdmVudFR5cGUuQk9PS0lOR19TVUJDUklQVElPTikge1xyXG4gICAgICAgICAgICAvKiogW1NVQl0gQ1JFQVRFRCA9PiBSRUZVU0VEICovXHJcbiAgICAgICAgICAgIGlmIChldmVudC5zdGF0dXMgPT09IEV2ZW50U3RhdHVzLkNSRUFURUQgJiYgZW5kRXhwaXJlZCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRTZXJ2aWNlLnVwZGF0ZUV2ZW50KHtcclxuICAgICAgICAgICAgICAgICAgICBpZDogZXZlbnQuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBFdmVudFN0YXR1cy5SRUZVU0VELFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyoqIFtTVUJdIElOX1BST0dSRVNTIHwgVkFMSURBVEVEID0+IENPTVBMRVRFRCAqL1xyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICBlbmRFeHBpcmVkICYmXHJcbiAgICAgICAgICAgICAgICAoZXZlbnQuc3RhdHVzID09PSBFdmVudFN0YXR1cy5JTl9QUk9HUkVTUyB8fFxyXG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0YXR1cyA9PT0gRXZlbnRTdGF0dXMuVkFMSURBVEVEKVxyXG4gICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV2ZW50U2VydmljZS51cGRhdGVFdmVudCh7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1czogRXZlbnRTdGF0dXMuQ09NUExFVEVELFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyoqIFtTVUJdIENSRUFURUQgPT4gSU5fUFJPR1JFU1MgKi9cclxuICAgICAgICAgICAgaWYgKHN0YXJ0RXhwaXJlZCAmJiBldmVudC5zdGF0dXMgPT09IEV2ZW50U3RhdHVzLkNSRUFURUQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV2ZW50U2VydmljZS51cGRhdGVFdmVudCh7XHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1czogRXZlbnRTdGF0dXMuSU5fUFJPR1JFU1MsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGV2ZW50O1xyXG4gICAgfVxyXG5cclxuICAgIG1lcmdlRXZlbnRzVG9TdWJzY3JpcHRzaW9uVW5pcXVlKFxyXG4gICAgICAgIGV2ZW50OiBFdmVudCxcclxuICAgICAgICB1bmlxdWVMaXN0OiBFdmVudFtdLFxyXG4gICAgKTogRXZlbnRbXSB7XHJcbiAgICAgICAgaWYgKCFldmVudCB8fCBldmVudC50eXBlICE9PSBFdmVudFR5cGUuQk9PS0lOR19TVUJDUklQVElPTilcclxuICAgICAgICAgICAgcmV0dXJuIHVuaXF1ZUxpc3Q7XHJcblxyXG4gICAgICAgIGNvbnN0IG5ld1VuaXF1ZUxpc3QgPSBbLi4udW5pcXVlTGlzdF07IC8vIGRlZXAgY29weVxyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gbmV3VW5pcXVlTGlzdC5maW5kSW5kZXgoXHJcbiAgICAgICAgICAgIChldmVudF8pID0+IGV2ZW50Xy5ncm91cCA9PT0gZXZlbnQuZ3JvdXAsXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgLyoqIElmIGFuIGV2ZW50IG9mIHRoZSBzYW1lIGdyb3VwIGFscmVhZHkgZXhpc3QsIHdlIG1lcmdlIGRhdGUsIHRvIGdldCB0aGUgbWluIGFuZCBtYXggZGF0ZSBhbmQgdXBkYXRlIHN0YXR1cyAqL1xyXG4gICAgICAgIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGdyb3VwRXZlbnQgPSBuZXdVbmlxdWVMaXN0W2luZGV4XTtcclxuICAgICAgICAgICAgaWYgKGdyb3VwRXZlbnQucmVhbFN0YXJ0RGF0ZSA+IGV2ZW50LnJlYWxTdGFydERhdGUpIHtcclxuICAgICAgICAgICAgICAgIGdyb3VwRXZlbnQucmVhbFN0YXJ0RGF0ZSA9IGV2ZW50LnJlYWxTdGFydERhdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGdyb3VwRXZlbnQucmVhbEVuZERhdGUgPCBldmVudC5yZWFsRW5kRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgZ3JvdXBFdmVudC5yZWFsRW5kRGF0ZSA9IGV2ZW50LnJlYWxFbmREYXRlO1xyXG4gICAgICAgICAgICAgICAgZ3JvdXBFdmVudC5zdGF0dXMgPSBldmVudC5zdGF0dXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZ3JvdXBFdmVudC5hdXRob3IgPSBldmVudC5hdXRob3I7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbmV3VW5pcXVlTGlzdC5wdXNoKHsgLi4uZXZlbnQgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbmV3VW5pcXVlTGlzdDtcclxuICAgIH1cclxuXHJcbiAgICAvKiogTWVyZ2UgYSBzdWJzY3JpcHRpb24gZXZlbnQgbGlzdCB0byBhIHVuaXF1ZSBldmVudCAqL1xyXG4gICAgbWVyZ2VFdmVudHNUb1N1YnNjcmlwdGlvbnMoYWxsQm9raW5nczogRXZlbnRbXSk6IEV2ZW50W10ge1xyXG4gICAgICAgIGxldCB1bmlxdWVMaXN0ID0gW107XHJcbiAgICAgICAgZm9yIChjb25zdCBldmVudCBvZiBhbGxCb2tpbmdzKSB7XHJcbiAgICAgICAgICAgIHVuaXF1ZUxpc3QgPSB0aGlzLm1lcmdlRXZlbnRzVG9TdWJzY3JpcHRzaW9uVW5pcXVlKFxyXG4gICAgICAgICAgICAgICAgZXZlbnQsXHJcbiAgICAgICAgICAgICAgICB1bmlxdWVMaXN0LFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdW5pcXVlTGlzdDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyB1cGRhdGVTdGF0dXNPZkV2ZW50c0luU3Vic2NyaXB0aW9uV2l0aFJlYXNvbihcclxuICAgICAgICBzdWJzY3JpcHRpb25Hcm91cDogc3RyaW5nLFxyXG4gICAgICAgIG5ld1N0YXR1czogRXZlbnRTdGF0dXMsXHJcbiAgICAgICAgcmVhc29uOiBzdHJpbmcgPSBudWxsLFxyXG4gICAgKTogUHJvbWlzZTxFdmVudFtdPiB7XHJcbiAgICAgICAgY29uc3QgZXZlbnRzT2ZTdWJjcmlwdGlvbiA9IGF3YWl0IHRoaXMuZXZlbnRTZXJ2aWNlLmdldEV2ZW50c0J5R3JvdXAoXHJcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbkdyb3VwLFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgY29uc3QgdXBkYXRlZEV2ZW50cyA9IFtdO1xyXG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxyXG4gICAgICAgICAgICBldmVudHNPZlN1YmNyaXB0aW9uLm1hcChhc3luYyAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVwZEV2ZW50ID0gYXdhaXQgdGhpcy5ldmVudFNlcnZpY2UudXBkYXRlRXZlbnQoe1xyXG4gICAgICAgICAgICAgICAgICAgIGlkOiBldmVudC5pZCxcclxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IG5ld1N0YXR1cyxcclxuICAgICAgICAgICAgICAgICAgICByZWZ1c2FsUmVhc29uOiByZWFzb24sXHJcbiAgICAgICAgICAgICAgICAgICAgbm90aWZpY2F0aW9uU3RhdHVzOiByZWFzb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgPyBFbWFpbFN0YXR1cy5VUERBVEVfVE9fREVMSVZFUlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA6IG51bGwsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHVwZGF0ZWRFdmVudHMucHVzaCh1cGRFdmVudCk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRFdmVudHM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QWN0aXZlRnV0dXJlQm9va2luZ3MoYWxsQm9va2luZzogRXZlbnRbXSk6IEV2ZW50W10ge1xyXG4gICAgICAgIGxldCBib29raW5ncyA9IHRoaXMuZ2V0RnV0dXJlT3JDdXJyZW50RXZlbnRzKGFsbEJvb2tpbmcpO1xyXG4gICAgICAgIGJvb2tpbmdzID0gYm9va2luZ3MuZmlsdGVyKFxyXG4gICAgICAgICAgICAoZXZlbnRfKSA9PlxyXG4gICAgICAgICAgICAgICAgZXZlbnRfLnN0YXR1cyAhPT0gRXZlbnRTdGF0dXMuQ0FOQ0VMTEVEICYmXHJcbiAgICAgICAgICAgICAgICBldmVudF8uc3RhdHVzICE9PSBFdmVudFN0YXR1cy5SRUZVU0VEICYmXHJcbiAgICAgICAgICAgICAgICBldmVudF8uc3RhdHVzICE9PSBFdmVudFN0YXR1cy5BUkNISVZFRCxcclxuICAgICAgICApO1xyXG4gICAgICAgIHJldHVybiBib29raW5ncztcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBhcmNoaXZlRm9yT3duZXJFdmVudHNJblN1YnNjcmlwdGlvbihcclxuICAgICAgICBzdWJzY3JpcHRpb25Hcm91cDogc3RyaW5nLFxyXG4gICAgKTogUHJvbWlzZTxFdmVudFtdPiB7XHJcbiAgICAgICAgY29uc3QgZXZlbnRzT2ZTdWJjcmlwdGlvbiA9IGF3YWl0IHRoaXMuZXZlbnRTZXJ2aWNlLmdldEV2ZW50c0J5R3JvdXAoXHJcbiAgICAgICAgICAgIHN1YnNjcmlwdGlvbkdyb3VwLFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgY29uc3QgdXBkYXRlZEV2ZW50cyA9IFtdO1xyXG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxyXG4gICAgICAgICAgICBldmVudHNPZlN1YmNyaXB0aW9uLm1hcChhc3luYyAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVwZEV2ZW50ID0gYXdhaXQgdGhpcy5ldmVudFNlcnZpY2UudXBkYXRlRXZlbnQoe1xyXG4gICAgICAgICAgICAgICAgICAgIGlkOiBldmVudC5pZCxcclxuICAgICAgICAgICAgICAgICAgICBhcmNoaXZlZEJ5T3duZXI6IHRydWUsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHVwZGF0ZWRFdmVudHMucHVzaCh1cGRFdmVudCk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRFdmVudHM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q29uZmxpY3RCb29raW5nRm9yRGF0ZXMoXHJcbiAgICAgICAgc3RhcnQ6IG51bWJlcixcclxuICAgICAgICBlbmQ6IG51bWJlcixcclxuICAgICAgICBib29raW5nc1RvRmlsdGVyOiBFdmVudFtdLFxyXG4gICAgKTogRXZlbnQgfCBudWxsIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGJvb2tpbmcgb2YgYm9va2luZ3NUb0ZpbHRlcikge1xyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICBib29raW5nLnN0YXR1cyAhPT0gRXZlbnRTdGF0dXMuUkVGVVNFRCAmJlxyXG4gICAgICAgICAgICAgICAgYm9va2luZy5zdGF0dXMgIT09IEV2ZW50U3RhdHVzLkNBTkNFTExFRCAmJlxyXG4gICAgICAgICAgICAgICAgYm9va2luZy5zdGF0dXMgIT09IEV2ZW50U3RhdHVzLkFSQ0hJVkVEXHJcbiAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0ID49IGJvb2tpbmcucmVhbFN0YXJ0RGF0ZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0ICsgMTAwMCA8IGJvb2tpbmcucmVhbEVuZERhdGVcclxuICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBib29raW5nO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgIGVuZCA+IGJvb2tpbmcucmVhbFN0YXJ0RGF0ZSArIDEwMDAgJiZcclxuICAgICAgICAgICAgICAgICAgICBlbmQgPD0gYm9va2luZy5yZWFsRW5kRGF0ZVxyXG4gICAgICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJvb2tpbmc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQgPD0gYm9va2luZy5yZWFsU3RhcnREYXRlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgZW5kID49IGJvb2tpbmcucmVhbEVuZERhdGVcclxuICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBib29raW5nO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGdldEF1dGhvck9mRXZlbnQoZXZlbnQ6IEV2ZW50KTogUHJvbWlzZTxQcm9maWxlRW50aXR5PiB7XHJcbiAgICAgICAgY29uc3QgYXV0aG9yTWlzc2lvbiA9IGF3YWl0IHRoaXMubWlzc2lvblNlcnZpY2UuZ2V0TWlzc2lvbihcclxuICAgICAgICAgICAgZXZlbnQub3duZXJJRCxcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IGF1dGhvciA9IGF3YWl0IHRoaXMudXNlclNlcnZpY2UudXNlckZyb21Vc2VySUQoXHJcbiAgICAgICAgICAgIGF1dGhvck1pc3Npb24udXNlcklELFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgcmV0dXJuIGF1dGhvcjtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/* eslint-disable class-methods-use-this */
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
import { Subject } from "rxjs";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@ng-bootstrap/ng-bootstrap";
|
|
6
|
+
import * as i2 from "@angular/router";
|
|
7
|
+
import * as i3 from "./models/comment.service";
|
|
8
|
+
export class ContentService {
|
|
9
|
+
constructor(modalService, router, commentService) {
|
|
10
|
+
this.modalService = modalService;
|
|
11
|
+
this.router = router;
|
|
12
|
+
this.commentService = commentService;
|
|
13
|
+
this.closeModal = new Subject();
|
|
14
|
+
this.nextSlide = new Subject();
|
|
15
|
+
}
|
|
16
|
+
presentVideoModal(video, videoComponent, modalDialogClass) {
|
|
17
|
+
this.modalReference = this.modalService.open(videoComponent, {
|
|
18
|
+
modalDialogClass: modalDialogClass,
|
|
19
|
+
});
|
|
20
|
+
this.modalReference.componentInstance.video = video;
|
|
21
|
+
this.modalReference.dismissed.subscribe(() => {
|
|
22
|
+
this.emitCloseModal();
|
|
23
|
+
});
|
|
24
|
+
this.modalReference.closed.subscribe(() => {
|
|
25
|
+
this.emitCloseModal();
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
async presentAudioModal(audioCommentID, audioComponent, modalDialogClass) {
|
|
29
|
+
const audioComment = await this.commentService.getComment(audioCommentID);
|
|
30
|
+
const audioMediaContent = {
|
|
31
|
+
path: audioComment.annexe,
|
|
32
|
+
title: audioComment.title,
|
|
33
|
+
description: audioComment.description,
|
|
34
|
+
};
|
|
35
|
+
this.modalReference = this.modalService.open(audioComponent, {
|
|
36
|
+
modalDialogClass: modalDialogClass,
|
|
37
|
+
});
|
|
38
|
+
this.modalReference.componentInstance.audio = audioMediaContent;
|
|
39
|
+
this.modalReference.dismissed.subscribe(() => {
|
|
40
|
+
this.emitCloseModal();
|
|
41
|
+
});
|
|
42
|
+
this.modalReference.closed.subscribe(() => {
|
|
43
|
+
this.emitCloseModal();
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
presentImageCarouselModal(featureID, carouselComponent, modalDialogClass, fromTag = true, selectedImageIndex = '0') {
|
|
47
|
+
this.modalReference = this.modalService.open(carouselComponent, {
|
|
48
|
+
modalDialogClass: modalDialogClass,
|
|
49
|
+
});
|
|
50
|
+
this.modalReference.componentInstance.featureID = featureID;
|
|
51
|
+
this.modalReference.componentInstance.fromTag = fromTag;
|
|
52
|
+
this.modalReference.componentInstance.selectedImageIndex = selectedImageIndex;
|
|
53
|
+
this.modalReference.dismissed.subscribe(() => {
|
|
54
|
+
this.emitCloseModal();
|
|
55
|
+
});
|
|
56
|
+
this.modalReference.closed.subscribe(() => {
|
|
57
|
+
this.emitCloseModal();
|
|
58
|
+
});
|
|
59
|
+
this.modalReference.componentInstance.slideChanged.subscribe((slide) => {
|
|
60
|
+
this.nextSlide.next(slide.current);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
presentPdfModal(url, pdfComponent, modalDialogClass) {
|
|
64
|
+
this.modalReference = this.modalService.open(pdfComponent, {
|
|
65
|
+
modalDialogClass: modalDialogClass,
|
|
66
|
+
});
|
|
67
|
+
this.modalReference.componentInstance.url = url;
|
|
68
|
+
this.modalReference.dismissed.subscribe(() => {
|
|
69
|
+
this.emitCloseModal();
|
|
70
|
+
});
|
|
71
|
+
this.modalReference.closed.subscribe(() => {
|
|
72
|
+
this.emitCloseModal();
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
presentMuseumImageCarouselModal(carouselComponent, modalDialogClass, fromTag = true, selectedImageIndex = "0", images = null, commentImageID = null) {
|
|
76
|
+
this.modalReference = this.modalService.open(carouselComponent, {
|
|
77
|
+
modalDialogClass,
|
|
78
|
+
});
|
|
79
|
+
this.modalReference.componentInstance.fromTag = fromTag;
|
|
80
|
+
this.modalReference.componentInstance.selectedImageIndex =
|
|
81
|
+
selectedImageIndex;
|
|
82
|
+
this.modalReference.componentInstance.images = images;
|
|
83
|
+
this.modalReference.componentInstance.commentID = commentImageID;
|
|
84
|
+
this.modalReference.dismissed.subscribe(() => {
|
|
85
|
+
this.emitCloseModal();
|
|
86
|
+
});
|
|
87
|
+
this.modalReference.closed.subscribe(() => {
|
|
88
|
+
this.emitCloseModal();
|
|
89
|
+
});
|
|
90
|
+
this.modalReference.componentInstance.slideChanged.subscribe((slide) => {
|
|
91
|
+
this.nextSlide.next(slide.current);
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
toogleAudioElement(url) {
|
|
95
|
+
if (!this.currentAudio || this.currentAudio.src !== url) {
|
|
96
|
+
this.currentAudio = new Audio(url);
|
|
97
|
+
}
|
|
98
|
+
if (this.currentAudio.duration > 0 && !this.currentAudio.paused) {
|
|
99
|
+
// it is playing, we stop it
|
|
100
|
+
this.currentAudio.pause();
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
this.currentAudio.play();
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
showFullscreenCarouselForFeature(featureID, fromTag = false) {
|
|
107
|
+
const url = this.router.serializeUrl(this.router.createUrlTree([`/fullscreen/${featureID}`], {
|
|
108
|
+
queryParams: { fromTag },
|
|
109
|
+
}));
|
|
110
|
+
window.open(url, "_blank");
|
|
111
|
+
}
|
|
112
|
+
emitCloseModal() {
|
|
113
|
+
this.modalReference = null;
|
|
114
|
+
this.closeModal.next(true);
|
|
115
|
+
}
|
|
116
|
+
forceCloseCurrentModal() {
|
|
117
|
+
if (this.modalReference) {
|
|
118
|
+
this.modalReference.dismiss("forced");
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
moveToSlide(slide) {
|
|
122
|
+
if (this.modalReference) {
|
|
123
|
+
this.modalReference.componentInstance.navigateToSlide(slide);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
ContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ContentService, deps: [{ token: i1.NgbModal }, { token: i2.Router }, { token: i3.CommentService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
128
|
+
ContentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ContentService, providedIn: "root" });
|
|
129
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ContentService, decorators: [{
|
|
130
|
+
type: Injectable,
|
|
131
|
+
args: [{
|
|
132
|
+
providedIn: "root",
|
|
133
|
+
}]
|
|
134
|
+
}], ctorParameters: function () { return [{ type: i1.NgbModal }, { type: i2.Router }, { type: i3.CommentService }]; } });
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb250ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMkNBQTJDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFRL0IsTUFBTSxPQUFPLGNBQWM7SUFTdkIsWUFBbUIsWUFBc0IsRUFBVSxNQUFjLEVBQVUsY0FBOEI7UUFBdEYsaUJBQVksR0FBWixZQUFZLENBQVU7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBSnpHLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBRXBDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO0lBRTBFLENBQUM7SUFFN0csaUJBQWlCLENBQUMsS0FBbUIsRUFBRSxjQUFtQixFQUFFLGdCQUF3QjtRQUNoRixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN6RCxnQkFBZ0IsRUFBRSxnQkFBZ0I7U0FDckMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3BELElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN0QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7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QUFFO1lBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2hFO0lBQ0wsQ0FBQzs7MkdBakpRLGNBQWM7K0dBQWQsY0FBYyxjQUZYLE1BQU07MkZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzICovXHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgTmdiTW9kYWwgfSBmcm9tIFwiQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXBcIjtcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IE1lZGlhQ29udGVudCB9IGZyb20gXCIuLi90eXBlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSBcIi4vbW9kZWxzL2NvbW1lbnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBGZWF0dXJlU2VydmljZSB9IGZyb20gXCIuL21vZGVscy9mZWF0dXJlLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29udGVudFNlcnZpY2Uge1xyXG4gICAgbW9kYWxSZWZlcmVuY2U7XHJcblxyXG4gICAgY3VycmVudEF1ZGlvOiBIVE1MQXVkaW9FbGVtZW50O1xyXG5cclxuICAgIGNsb3NlTW9kYWwgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG5cclxuICAgIG5leHRTbGlkZSA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBjb21tZW50U2VydmljZTogQ29tbWVudFNlcnZpY2UpIHt9XHJcblxyXG4gICAgcHJlc2VudFZpZGVvTW9kYWwodmlkZW86IE1lZGlhQ29udGVudCwgdmlkZW9Db21wb25lbnQ6IGFueSwgbW9kYWxEaWFsb2dDbGFzczogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4odmlkZW9Db21wb25lbnQsIHtcclxuICAgICAgICAgICAgbW9kYWxEaWFsb2dDbGFzczogbW9kYWxEaWFsb2dDbGFzcyxcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLnZpZGVvID0gdmlkZW87XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5kaXNtaXNzZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5lbWl0Q2xvc2VNb2RhbCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1pdENsb3NlTW9kYWwoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBwcmVzZW50QXVkaW9Nb2RhbChhdWRpb0NvbW1lbnRJRDogc3RyaW5nLCBhdWRpb0NvbXBvbmVudDogYW55LCBtb2RhbERpYWxvZ0NsYXNzOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBhdWRpb0NvbW1lbnQgPSBhd2FpdCB0aGlzLmNvbW1lbnRTZXJ2aWNlLmdldENvbW1lbnQoYXVkaW9Db21tZW50SUQpO1xyXG4gICAgICAgIGNvbnN0IGF1ZGlvTWVkaWFDb250ZW50ID0ge1xyXG4gICAgICAgICAgICBwYXRoOiBhdWRpb0NvbW1lbnQuYW5uZXhlLFxyXG4gICAgICAgICAgICB0aXRsZTogYXVkaW9Db21tZW50LnRpdGxlLFxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogYXVkaW9Db21tZW50LmRlc2NyaXB0aW9uLFxyXG4gICAgICAgIH0gYXMgTWVkaWFDb250ZW50O1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGF1ZGlvQ29tcG9uZW50LCB7XHJcbiAgICAgICAgICAgIG1vZGFsRGlhbG9nQ2xhc3M6IG1vZGFsRGlhbG9nQ2xhc3MsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5hdWRpbyA9IGF1ZGlvTWVkaWFDb250ZW50O1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuZGlzbWlzc2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1pdENsb3NlTW9kYWwoKTsgIFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1pdENsb3NlTW9kYWwoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcmVzZW50SW1hZ2VDYXJvdXNlbE1vZGFsKGZlYXR1cmVJRDogc3RyaW5nLCBjYXJvdXNlbENvbXBvbmVudDogYW55LCBtb2RhbERpYWxvZ0NsYXNzOiBzdHJpbmcsIFxyXG4gICAgICAgIGZyb21UYWcgPSB0cnVlLCBzZWxlY3RlZEltYWdlSW5kZXg9JzAnKSB7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXHJcbiAgICAgICAgICAgIGNhcm91c2VsQ29tcG9uZW50LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBtb2RhbERpYWxvZ0NsYXNzOiBtb2RhbERpYWxvZ0NsYXNzLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5mZWF0dXJlSUQgPSBmZWF0dXJlSUQ7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5mcm9tVGFnID0gZnJvbVRhZztcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLnNlbGVjdGVkSW1hZ2VJbmRleCA9IHNlbGVjdGVkSW1hZ2VJbmRleDtcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmRpc21pc3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmVtaXRDbG9zZU1vZGFsKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5lbWl0Q2xvc2VNb2RhbCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuY29tcG9uZW50SW5zdGFuY2Uuc2xpZGVDaGFuZ2VkLnN1YnNjcmliZShcclxuICAgICAgICAgICAgKHNsaWRlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5leHRTbGlkZS5uZXh0KHNsaWRlLmN1cnJlbnQpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJlc2VudFBkZk1vZGFsKHVybDogc3RyaW5nLCBwZGZDb21wb25lbnQ6IGFueSwgbW9kYWxEaWFsb2dDbGFzczogc3RyaW5nLCkge1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKHBkZkNvbXBvbmVudCwge1xyXG4gICAgICAgICAgICBtb2RhbERpYWxvZ0NsYXNzOiBtb2RhbERpYWxvZ0NsYXNzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuY29tcG9uZW50SW5zdGFuY2UudXJsID0gdXJsO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuZGlzbWlzc2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1pdENsb3NlTW9kYWwoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmVtaXRDbG9zZU1vZGFsKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJlc2VudE11c2V1bUltYWdlQ2Fyb3VzZWxNb2RhbChcclxuICAgICAgICBjYXJvdXNlbENvbXBvbmVudDogYW55LFxyXG4gICAgICAgIG1vZGFsRGlhbG9nQ2xhc3M6IHN0cmluZyxcclxuICAgICAgICBmcm9tVGFnID0gdHJ1ZSxcclxuICAgICAgICBzZWxlY3RlZEltYWdlSW5kZXggPSBcIjBcIixcclxuICAgICAgICBpbWFnZXM6IGFueVtdID0gbnVsbCxcclxuICAgICAgICBjb21tZW50SW1hZ2VJRDogc3RyaW5nID0gbnVsbCxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGNhcm91c2VsQ29tcG9uZW50LCB7XHJcbiAgICAgICAgICAgIG1vZGFsRGlhbG9nQ2xhc3MsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5mcm9tVGFnID0gZnJvbVRhZztcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLnNlbGVjdGVkSW1hZ2VJbmRleCA9XHJcbiAgICAgICAgICAgIHNlbGVjdGVkSW1hZ2VJbmRleDtcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLmltYWdlcyA9IGltYWdlcztcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLmNvbW1lbnRJRCA9IGNvbW1lbnRJbWFnZUlEO1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UuZGlzbWlzc2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZW1pdENsb3NlTW9kYWwoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm1vZGFsUmVmZXJlbmNlLmNsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmVtaXRDbG9zZU1vZGFsKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5zbGlkZUNoYW5nZWQuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAoc2xpZGUpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMubmV4dFNsaWRlLm5leHQoc2xpZGUuY3VycmVudCk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICB0b29nbGVBdWRpb0VsZW1lbnQodXJsOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAoIXRoaXMuY3VycmVudEF1ZGlvIHx8IHRoaXMuY3VycmVudEF1ZGlvLnNyYyAhPT0gdXJsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEF1ZGlvID0gbmV3IEF1ZGlvKHVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRBdWRpby5kdXJhdGlvbiA+IDAgJiYgIXRoaXMuY3VycmVudEF1ZGlvLnBhdXNlZCkge1xyXG4gICAgICAgICAgICAvLyBpdCBpcyBwbGF5aW5nLCB3ZSBzdG9wIGl0XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEF1ZGlvLnBhdXNlKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50QXVkaW8ucGxheSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzaG93RnVsbHNjcmVlbkNhcm91c2VsRm9yRmVhdHVyZShmZWF0dXJlSUQ6IHN0cmluZywgZnJvbVRhZyA9IGZhbHNlKSB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5yb3V0ZXIuc2VyaWFsaXplVXJsKFxyXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFtgL2Z1bGxzY3JlZW4vJHtmZWF0dXJlSUR9YF0sIHtcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7IGZyb21UYWcgfSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgKTtcclxuICAgICAgICB3aW5kb3cub3Blbih1cmwsIFwiX2JsYW5rXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGVtaXRDbG9zZU1vZGFsKCkge1xyXG4gICAgICAgIHRoaXMubW9kYWxSZWZlcmVuY2UgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuY2xvc2VNb2RhbC5uZXh0KHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcmNlQ2xvc2VDdXJyZW50TW9kYWwoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubW9kYWxSZWZlcmVuY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5kaXNtaXNzKFwiZm9yY2VkXCIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBtb3ZlVG9TbGlkZShzbGlkZTogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubW9kYWxSZWZlcmVuY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5tb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5uYXZpZ2F0ZVRvU2xpZGUoc2xpZGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|